Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
die_coolen_jungs
our_own_cloud_project
Commits
79cfad0c
Commit
79cfad0c
authored
Jun 27, 2016
by
Vincent Petry
Committed by
GitHub
Jun 27, 2016
Browse files
Merge pull request #25237 from owncloud/search-filelistnextpageresults
Prerender file list pages to include search results
parents
72a3301b
5e58b511
Changes
2
Hide whitespace changes
Inline
Side-by-side
apps/files/js/filelist.js
View file @
79cfad0c
...
...
@@ -2351,22 +2351,36 @@
* @param filter
*/
setFilter
:
function
(
filter
)
{
var
total
=
0
;
this
.
_filter
=
filter
;
this
.
fileSummary
.
setFilter
(
filter
,
this
.
files
);
total
=
this
.
fileSummary
.
getTotal
();
if
(
!
this
.
$el
.
find
(
'
.mask
'
).
exists
())
{
this
.
hideIrrelevantUIWhenNoFilesMatch
();
}
var
that
=
this
;
var
visibleCount
=
0
;
filter
=
filter
.
toLowerCase
();
this
.
$fileList
.
find
(
'
tr
'
).
each
(
function
(
i
,
e
)
{
var
$e
=
$
(
e
);
function
filterRows
(
tr
)
{
var
$e
=
$
(
tr
);
if
(
$e
.
data
(
'
file
'
).
toString
().
toLowerCase
().
indexOf
(
filter
)
===
-
1
)
{
$e
.
addClass
(
'
hidden
'
);
}
else
{
visibleCount
++
;
$e
.
removeClass
(
'
hidden
'
);
}
});
that
.
$container
.
trigger
(
'
scroll
'
);
}
var
$trs
=
this
.
$fileList
.
find
(
'
tr
'
);
do
{
_
.
each
(
$trs
,
filterRows
);
if
(
visibleCount
<
total
)
{
$trs
=
this
.
_nextPage
(
false
);
}
}
while
(
visibleCount
<
total
);
this
.
$container
.
trigger
(
'
scroll
'
);
},
hideIrrelevantUIWhenNoFilesMatch
:
function
()
{
if
(
this
.
_filter
&&
this
.
fileSummary
.
summary
.
totalDirs
+
this
.
fileSummary
.
summary
.
totalFiles
===
0
)
{
...
...
apps/files/tests/js/filelistSpec.js
View file @
79cfad0c
...
...
@@ -989,6 +989,17 @@ describe('OCA.Files.FileList tests', function() {
expect
(
$summary
.
find
(
'
.info
'
).
text
()).
toEqual
(
"
1 folder and 3 files
"
);
expect
(
$nofilterresults
.
hasClass
(
'
hidden
'
)).
toEqual
(
true
);
});
it
(
'
filters the list of non-rendered rows using filter()
'
,
function
()
{
var
$summary
=
$
(
'
#filestable .summary
'
);
var
$nofilterresults
=
fileList
.
$el
.
find
(
"
.nofilterresults
"
);
fileList
.
setFiles
(
generateFiles
(
0
,
64
));
fileList
.
setFilter
(
'
63
'
);
expect
(
$
(
'
#fileList tr:not(.hidden)
'
).
length
).
toEqual
(
1
);
expect
(
$summary
.
hasClass
(
'
hidden
'
)).
toEqual
(
false
);
expect
(
$summary
.
find
(
'
.info
'
).
text
()).
toEqual
(
"
0 folders and 1 file matches '63'
"
);
expect
(
$nofilterresults
.
hasClass
(
'
hidden
'
)).
toEqual
(
true
);
});
it
(
'
hides the emptyfiles notice when using filter()
'
,
function
()
{
expect
(
fileList
.
files
.
length
).
toEqual
(
0
);
expect
(
fileList
.
files
).
toEqual
([]);
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment