mirror of
https://github.com/jellyfin/jellyfin-web
synced 2025-03-30 19:56:21 +00:00
fixes #943 - Add web client filtering by genres, parental ratings, tags and years
This commit is contained in:
parent
31c16972b0
commit
a1535a341b
30 changed files with 592 additions and 394 deletions
|
@ -13,12 +13,12 @@
|
|||
Limit: 200,
|
||||
StartIndex: 0
|
||||
};
|
||||
|
||||
|
||||
function getSavedQueryKey() {
|
||||
|
||||
return 'songs' + (query.ParentId || '');
|
||||
}
|
||||
|
||||
|
||||
function updateFilterControls(page) {
|
||||
|
||||
// Reset form values using the last used query
|
||||
|
@ -57,7 +57,7 @@
|
|||
$('.listTopPaging', page).html(pagingHtml).trigger('create');
|
||||
|
||||
updateFilterControls(page);
|
||||
|
||||
|
||||
html += LibraryBrowser.getListViewHtml({
|
||||
items: result.Items,
|
||||
smallIcon: true,
|
||||
|
@ -106,17 +106,36 @@
|
|||
|
||||
reloadItems(page);
|
||||
});
|
||||
|
||||
|
||||
LibraryBrowser.saveQueryValues(getSavedQueryKey(), query);
|
||||
|
||||
Dashboard.hideLoadingMsg();
|
||||
});
|
||||
}
|
||||
|
||||
var filtersLoaded;
|
||||
function reloadFiltersIfNeeded(page) {
|
||||
|
||||
if (!filtersLoaded) {
|
||||
|
||||
filtersLoaded = true;
|
||||
|
||||
QueryFilters.loadFilters(page, Dashboard.getCurrentUserId(), query, function () {
|
||||
|
||||
reloadItems(page);
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
$(document).on('pageinit', "#songsPage", function () {
|
||||
|
||||
var page = this;
|
||||
|
||||
$('.viewPanel', page).on('panelopen', function () {
|
||||
|
||||
reloadFiltersIfNeeded(page);
|
||||
});
|
||||
|
||||
$('.radioSortBy', this).on('click', function () {
|
||||
query.SortBy = this.getAttribute('data-sortby');
|
||||
query.StartIndex = 0;
|
||||
|
@ -154,11 +173,14 @@
|
|||
|
||||
}).on('pagebeforeshow', "#songsPage", function () {
|
||||
|
||||
var page = this;
|
||||
|
||||
query.ParentId = LibraryMenu.getTopParentId();
|
||||
|
||||
LibraryBrowser.loadSavedQueryValues(getSavedQueryKey(), query);
|
||||
QueryFilters.onPageShow(page, query);
|
||||
|
||||
reloadItems(this);
|
||||
reloadItems(page);
|
||||
|
||||
}).on('pageshow', "#songsPage", function () {
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue