Merge remote-tracking branch 'upstream/master' into lazyloader

This commit is contained in:
MrTimscampi 2020-05-07 11:01:14 +02:00
commit 7dc1cf771d
315 changed files with 10374 additions and 9194 deletions

View file

@ -1,5 +1,5 @@
define(["loading", "events", "libraryBrowser", "imageLoader", "listView", "cardBuilder", "userSettings", "globalize", "emby-itemscontainer"], function (loading, events, libraryBrowser, imageLoader, listView, cardBuilder, userSettings, globalize) {
"use strict";
define(['loading', 'events', 'libraryBrowser', 'imageLoader', 'listView', 'cardBuilder', 'userSettings', 'globalize', 'emby-itemscontainer'], function (loading, events, libraryBrowser, imageLoader, listView, cardBuilder, userSettings, globalize) {
'use strict';
return function (view, params, tabContent) {
function getPageData(context) {
@ -9,16 +9,16 @@ define(["loading", "events", "libraryBrowser", "imageLoader", "listView", "cardB
if (!pageData) {
pageData = data[key] = {
query: {
SortBy: "SortName",
SortOrder: "Ascending",
IncludeItemTypes: "BoxSet",
SortBy: 'SortName',
SortOrder: 'Ascending',
IncludeItemTypes: 'BoxSet',
Recursive: true,
Fields: "PrimaryImageAspectRatio,SortName",
Fields: 'PrimaryImageAspectRatio,SortName',
ImageTypeLimit: 1,
EnableImageTypes: "Primary,Backdrop,Banner,Thumb",
EnableImageTypes: 'Primary,Backdrop,Banner,Thumb',
StartIndex: 0
},
view: libraryBrowser.getSavedView(key) || "Poster"
view: libraryBrowser.getSavedView(key) || 'Poster'
};
if (userSettings.libraryPageSize() > 0) {
@ -38,7 +38,7 @@ define(["loading", "events", "libraryBrowser", "imageLoader", "listView", "cardB
function getSavedQueryKey(context) {
if (!context.savedQueryKey) {
context.savedQueryKey = libraryBrowser.getSavedQueryKey("moviecollections");
context.savedQueryKey = libraryBrowser.getSavedQueryKey('moviecollections');
}
return context.savedQueryKey;
@ -46,17 +46,17 @@ define(["loading", "events", "libraryBrowser", "imageLoader", "listView", "cardB
function onViewStyleChange() {
var viewStyle = self.getCurrentViewStyle();
var itemsContainer = tabContent.querySelector(".itemsContainer");
var itemsContainer = tabContent.querySelector('.itemsContainer');
if ("List" == viewStyle) {
itemsContainer.classList.add("vertical-list");
itemsContainer.classList.remove("vertical-wrap");
if ('List' == viewStyle) {
itemsContainer.classList.add('vertical-list');
itemsContainer.classList.remove('vertical-wrap');
} else {
itemsContainer.classList.remove("vertical-list");
itemsContainer.classList.add("vertical-wrap");
itemsContainer.classList.remove('vertical-list');
itemsContainer.classList.add('vertical-wrap');
}
itemsContainer.innerHTML = "";
itemsContainer.innerHTML = '';
}
function reloadItems(page) {
@ -99,45 +99,45 @@ define(["loading", "events", "libraryBrowser", "imageLoader", "listView", "cardB
filterButton: false
});
var viewStyle = self.getCurrentViewStyle();
if (viewStyle == "Thumb") {
if (viewStyle == 'Thumb') {
html = cardBuilder.getCardsHtml({
items: result.Items,
shape: "backdrop",
shape: 'backdrop',
preferThumb: true,
context: "movies",
context: 'movies',
overlayPlayButton: true,
centerText: true,
showTitle: true
});
} else if (viewStyle == "ThumbCard") {
} else if (viewStyle == 'ThumbCard') {
html = cardBuilder.getCardsHtml({
items: result.Items,
shape: "backdrop",
shape: 'backdrop',
preferThumb: true,
context: "movies",
context: 'movies',
lazy: true,
cardLayout: true,
showTitle: true
});
} else if (viewStyle == "Banner") {
} else if (viewStyle == 'Banner') {
html = cardBuilder.getCardsHtml({
items: result.Items,
shape: "banner",
shape: 'banner',
preferBanner: true,
context: "movies",
context: 'movies',
lazy: true
});
} else if (viewStyle == "List") {
} else if (viewStyle == 'List') {
html = listView.getListViewHtml({
items: result.Items,
context: "movies",
context: 'movies',
sortBy: query.SortBy
});
} else if (viewStyle == "PosterCard") {
} else if (viewStyle == 'PosterCard') {
html = cardBuilder.getCardsHtml({
items: result.Items,
shape: "auto",
context: "movies",
shape: 'auto',
context: 'movies',
showTitle: true,
centerText: false,
cardLayout: true
@ -145,8 +145,8 @@ define(["loading", "events", "libraryBrowser", "imageLoader", "listView", "cardB
} else {
html = cardBuilder.getCardsHtml({
items: result.Items,
shape: "auto",
context: "movies",
shape: 'auto',
context: 'movies',
centerText: true,
overlayPlayButton: true,
showTitle: true
@ -154,34 +154,34 @@ define(["loading", "events", "libraryBrowser", "imageLoader", "listView", "cardB
}
var i;
var length;
var elems = tabContent.querySelectorAll(".paging");
var elems = tabContent.querySelectorAll('.paging');
for (i = 0, length = elems.length; i < length; i++) {
elems[i].innerHTML = pagingHtml;
}
elems = tabContent.querySelectorAll(".btnNextPage");
elems = tabContent.querySelectorAll('.btnNextPage');
for (i = 0, length = elems.length; i < length; i++) {
elems[i].addEventListener("click", onNextPageClick);
elems[i].addEventListener('click', onNextPageClick);
}
elems = tabContent.querySelectorAll(".btnPreviousPage");
elems = tabContent.querySelectorAll('.btnPreviousPage');
for (i = 0, length = elems.length; i < length; i++) {
elems[i].addEventListener("click", onPreviousPageClick);
elems[i].addEventListener('click', onPreviousPageClick);
}
if (!result.Items.length) {
html = '<p style="text-align:center;">' + globalize.translate("MessageNoCollectionsAvailable") + "</p>";
html = '<p style="text-align:center;">' + globalize.translate('MessageNoCollectionsAvailable') + '</p>';
}
var itemsContainer = tabContent.querySelector(".itemsContainer");
var itemsContainer = tabContent.querySelector('.itemsContainer');
itemsContainer.innerHTML = html;
imageLoader.lazyChildren(itemsContainer);
libraryBrowser.saveQueryValues(getSavedQueryKey(page), query);
loading.hide();
isLoading = false;
require(["autoFocuser"], function (autoFocuser) {
require(['autoFocuser'], function (autoFocuser) {
autoFocuser.autoFocus(page);
});
});
@ -196,23 +196,23 @@ define(["loading", "events", "libraryBrowser", "imageLoader", "listView", "cardB
};
function initPage(tabContent) {
tabContent.querySelector(".btnSort").addEventListener("click", function (e) {
tabContent.querySelector('.btnSort').addEventListener('click', function (e) {
libraryBrowser.showSortMenu({
items: [{
name: globalize.translate("OptionNameSort"),
id: "SortName"
name: globalize.translate('OptionNameSort'),
id: 'SortName'
}, {
name: globalize.translate("OptionImdbRating"),
id: "CommunityRating,SortName"
name: globalize.translate('OptionImdbRating'),
id: 'CommunityRating,SortName'
}, {
name: globalize.translate("OptionDateAdded"),
id: "DateCreated,SortName"
name: globalize.translate('OptionDateAdded'),
id: 'DateCreated,SortName'
}, {
name: globalize.translate("OptionParentalRating"),
id: "OfficialRating,SortName"
name: globalize.translate('OptionParentalRating'),
id: 'OfficialRating,SortName'
}, {
name: globalize.translate("OptionReleaseDate"),
id: "PremiereDate,SortName"
name: globalize.translate('OptionReleaseDate'),
id: 'PremiereDate,SortName'
}],
callback: function () {
getQuery(tabContent).StartIndex = 0;
@ -222,11 +222,11 @@ define(["loading", "events", "libraryBrowser", "imageLoader", "listView", "cardB
button: e.target
});
});
var btnSelectView = tabContent.querySelector(".btnSelectView");
btnSelectView.addEventListener("click", function (e) {
libraryBrowser.showLayoutMenu(e.target, self.getCurrentViewStyle(), "List,Poster,PosterCard,Thumb,ThumbCard".split(","));
var btnSelectView = tabContent.querySelector('.btnSelectView');
btnSelectView.addEventListener('click', function (e) {
libraryBrowser.showLayoutMenu(e.target, self.getCurrentViewStyle(), 'List,Poster,PosterCard,Thumb,ThumbCard'.split(','));
});
btnSelectView.addEventListener("layoutchange", function (e) {
btnSelectView.addEventListener('layoutchange', function (e) {
var viewStyle = e.detail.viewStyle;
getPageData(tabContent).view = viewStyle;
libraryBrowser.saveViewSetting(getSavedQueryKey(tabContent), viewStyle);
@ -234,8 +234,8 @@ define(["loading", "events", "libraryBrowser", "imageLoader", "listView", "cardB
onViewStyleChange();
reloadItems(tabContent);
});
tabContent.querySelector(".btnNewCollection").addEventListener("click", function () {
require(["collectionEditor"], function (collectionEditor) {
tabContent.querySelector('.btnNewCollection').addEventListener('click', function () {
require(['collectionEditor'], function (collectionEditor) {
var serverId = ApiClient.serverInfo().Id;
new collectionEditor().show({
items: [],

View file

@ -1,5 +1,5 @@
define(["layoutManager", "loading", "libraryBrowser", "cardBuilder", "lazyLoader", "apphost", "globalize", "appRouter", "dom", "emby-button"], function (layoutManager, loading, libraryBrowser, cardBuilder, lazyLoader, appHost, globalize, appRouter, dom) {
"use strict";
define(['layoutManager', 'loading', 'libraryBrowser', 'cardBuilder', 'lazyLoader', 'apphost', 'globalize', 'appRouter', 'dom', 'emby-button'], function (layoutManager, loading, libraryBrowser, cardBuilder, lazyLoader, appHost, globalize, appRouter, dom) {
'use strict';
return function (view, params, tabContent) {
function getPageData() {
@ -9,13 +9,13 @@ define(["layoutManager", "loading", "libraryBrowser", "cardBuilder", "lazyLoader
if (!pageData) {
pageData = data[key] = {
query: {
SortBy: "SortName",
SortOrder: "Ascending",
IncludeItemTypes: "Movie",
SortBy: 'SortName',
SortOrder: 'Ascending',
IncludeItemTypes: 'Movie',
Recursive: true,
EnableTotalRecordCount: false
},
view: "Poster"
view: 'Poster'
};
pageData.query.ParentId = params.topParentId;
libraryBrowser.loadSavedQueryValues(key, pageData.query);
@ -29,7 +29,7 @@ define(["layoutManager", "loading", "libraryBrowser", "cardBuilder", "lazyLoader
}
function getSavedQueryKey() {
return libraryBrowser.getSavedQueryKey("moviegenres");
return libraryBrowser.getSavedQueryKey('moviegenres');
}
function getPromise() {
@ -43,30 +43,30 @@ define(["layoutManager", "loading", "libraryBrowser", "cardBuilder", "lazyLoader
}
function getThumbShape() {
return enableScrollX() ? "overflowBackdrop" : "backdrop";
return enableScrollX() ? 'overflowBackdrop' : 'backdrop';
}
function getPortraitShape() {
return enableScrollX() ? "overflowPortrait" : "portrait";
return enableScrollX() ? 'overflowPortrait' : 'portrait';
}
function fillItemsContainer(entry) {
var elem = entry.target;
var id = elem.getAttribute("data-id");
var id = elem.getAttribute('data-id');
var viewStyle = self.getCurrentViewStyle();
var limit = "Thumb" == viewStyle || "ThumbCard" == viewStyle ? 5 : 9;
var limit = 'Thumb' == viewStyle || 'ThumbCard' == viewStyle ? 5 : 9;
if (enableScrollX()) {
limit = 10;
}
var enableImageTypes = "Thumb" == viewStyle || "ThumbCard" == viewStyle ? "Primary,Backdrop,Thumb" : "Primary";
var enableImageTypes = 'Thumb' == viewStyle || 'ThumbCard' == viewStyle ? 'Primary,Backdrop,Thumb' : 'Primary';
var query = {
SortBy: "SortName",
SortOrder: "Ascending",
IncludeItemTypes: "Movie",
SortBy: 'SortName',
SortOrder: 'Ascending',
IncludeItemTypes: 'Movie',
Recursive: true,
Fields: "PrimaryImageAspectRatio,MediaSourceCount,BasicSyncInfo",
Fields: 'PrimaryImageAspectRatio,MediaSourceCount,BasicSyncInfo',
ImageTypeLimit: 1,
EnableImageTypes: enableImageTypes,
Limit: limit,
@ -75,9 +75,9 @@ define(["layoutManager", "loading", "libraryBrowser", "cardBuilder", "lazyLoader
ParentId: params.topParentId
};
ApiClient.getItems(ApiClient.getCurrentUserId(), query).then(function (result) {
var supportsImageAnalysis = appHost.supports("imageanalysis");
var supportsImageAnalysis = appHost.supports('imageanalysis');
if (viewStyle == "Thumb") {
if (viewStyle == 'Thumb') {
cardBuilder.buildCards(result.Items, {
itemsContainer: elem,
shape: getThumbShape(),
@ -88,7 +88,7 @@ define(["layoutManager", "loading", "libraryBrowser", "cardBuilder", "lazyLoader
overlayMoreButton: true,
allowBottomPadding: false
});
} else if (viewStyle == "ThumbCard") {
} else if (viewStyle == 'ThumbCard') {
cardBuilder.buildCards(result.Items, {
itemsContainer: elem,
shape: getThumbShape(),
@ -99,7 +99,7 @@ define(["layoutManager", "loading", "libraryBrowser", "cardBuilder", "lazyLoader
cardLayout: true,
showYear: true
});
} else if (viewStyle == "PosterCard") {
} else if (viewStyle == 'PosterCard') {
cardBuilder.buildCards(result.Items, {
itemsContainer: elem,
shape: getPortraitShape(),
@ -109,7 +109,7 @@ define(["layoutManager", "loading", "libraryBrowser", "cardBuilder", "lazyLoader
cardLayout: true,
showYear: true
});
} else if (viewStyle == "Poster") {
} else if (viewStyle == 'Poster') {
cardBuilder.buildCards(result.Items, {
itemsContainer: elem,
shape: getPortraitShape(),
@ -122,7 +122,7 @@ define(["layoutManager", "loading", "libraryBrowser", "cardBuilder", "lazyLoader
});
}
if (result.Items.length >= query.Limit) {
tabContent.querySelector(".btnMoreFromGenre" + id + " i").classList.remove("hide");
tabContent.querySelector('.btnMoreFromGenre' + id + ' .material-icons').classList.remove('hide');
}
});
}
@ -130,8 +130,8 @@ define(["layoutManager", "loading", "libraryBrowser", "cardBuilder", "lazyLoader
function reloadItems(context, promise) {
var query = getQuery();
promise.then(function (result) {
var elem = context.querySelector("#items");
var html = "";
var elem = context.querySelector('#items');
var html = '';
var items = result.Items;
for (var i = 0, length = items.length; i < length; i++) {
@ -140,20 +140,20 @@ define(["layoutManager", "loading", "libraryBrowser", "cardBuilder", "lazyLoader
html += '<div class="verticalSection">';
html += '<div class="sectionTitleContainer sectionTitleContainer-cards padded-left">';
html += '<a is="emby-linkbutton" href="' + appRouter.getRouteUrl(item, {
context: "movies",
context: 'movies',
parentId: params.topParentId
}) + '" class="more button-flat button-flat-mini sectionTitleTextButton btnMoreFromGenre' + item.Id + '">';
html += '<h2 class="sectionTitle sectionTitle-cards">';
html += item.Name;
html += "</h2>";
html += '<i class="material-icons hide chevron_right"></i>';
html += "</a>";
html += "</div>";
html += '</h2>';
html += '<span class="material-icons hide chevron_right"></span>';
html += '</a>';
html += '</div>';
if (enableScrollX()) {
var scrollXClass = "scrollX hiddenScrollX";
var scrollXClass = 'scrollX hiddenScrollX';
if (layoutManager.tv) {
scrollXClass += "smoothScrollX padded-top-focusscale padded-bottom-focusscale";
scrollXClass += 'smoothScrollX padded-top-focusscale padded-bottom-focusscale';
}
html += '<div is="emby-itemscontainer" class="itemsContainer ' + scrollXClass + ' lazy padded-left padded-right" data-id="' + item.Id + '">';
@ -161,8 +161,8 @@ define(["layoutManager", "loading", "libraryBrowser", "cardBuilder", "lazyLoader
html += '<div is="emby-itemscontainer" class="itemsContainer vertical-wrap lazy padded-left padded-right" data-id="' + item.Id + '">';
}
html += "</div>";
html += "</div>";
html += '</div>';
html += '</div>';
}
elem.innerHTML = html;
@ -181,7 +181,7 @@ define(["layoutManager", "loading", "libraryBrowser", "cardBuilder", "lazyLoader
var data = {};
self.getViewStyles = function () {
return "Poster,PosterCard,Thumb,ThumbCard".split(",");
return 'Poster,PosterCard,Thumb,ThumbCard'.split(',');
};
self.getCurrentViewStyle = function () {

View file

@ -1,17 +1,17 @@
define(["loading", "layoutManager", "userSettings", "events", "libraryBrowser", "alphaPicker", "listView", "cardBuilder", "globalize", "emby-itemscontainer"], function (loading, layoutManager, userSettings, events, libraryBrowser, alphaPicker, listView, cardBuilder, globalize) {
"use strict";
define(['loading', 'layoutManager', 'userSettings', 'events', 'libraryBrowser', 'alphaPicker', 'listView', 'cardBuilder', 'globalize', 'emby-itemscontainer'], function (loading, layoutManager, userSettings, events, libraryBrowser, alphaPicker, listView, cardBuilder, globalize) {
'use strict';
return function (view, params, tabContent, options) {
function onViewStyleChange() {
if (self.getCurrentViewStyle() == "List") {
itemsContainer.classList.add("vertical-list");
itemsContainer.classList.remove("vertical-wrap");
if (self.getCurrentViewStyle() == 'List') {
itemsContainer.classList.add('vertical-list');
itemsContainer.classList.remove('vertical-wrap');
} else {
itemsContainer.classList.remove("vertical-list");
itemsContainer.classList.add("vertical-wrap");
itemsContainer.classList.remove('vertical-list');
itemsContainer.classList.add('vertical-wrap');
}
itemsContainer.innerHTML = "";
itemsContainer.innerHTML = '';
}
function updateFilterControls() {
@ -63,26 +63,26 @@ define(["loading", "layoutManager", "userSettings", "events", "libraryBrowser",
});
var i;
var length;
var elems = tabContent.querySelectorAll(".paging");
var elems = tabContent.querySelectorAll('.paging');
for (i = 0, length = elems.length; i < length; i++) {
elems[i].innerHTML = pagingHtml;
}
elems = tabContent.querySelectorAll(".btnNextPage");
elems = tabContent.querySelectorAll('.btnNextPage');
for (i = 0, length = elems.length; i < length; i++) {
elems[i].addEventListener("click", onNextPageClick);
elems[i].addEventListener('click', onNextPageClick);
}
elems = tabContent.querySelectorAll(".btnPreviousPage");
elems = tabContent.querySelectorAll('.btnPreviousPage');
for (i = 0, length = elems.length; i < length; i++) {
elems[i].addEventListener("click", onPreviousPageClick);
elems[i].addEventListener('click', onPreviousPageClick);
}
isLoading = false;
loading.hide();
require(["autoFocuser"], function (autoFocuser) {
require(['autoFocuser'], function (autoFocuser) {
autoFocuser.autoFocus(tabContent);
});
}
@ -91,49 +91,49 @@ define(["loading", "layoutManager", "userSettings", "events", "libraryBrowser",
var html;
var viewStyle = self.getCurrentViewStyle();
if (viewStyle == "Thumb") {
if (viewStyle == 'Thumb') {
html = cardBuilder.getCardsHtml({
items: items,
shape: "backdrop",
shape: 'backdrop',
preferThumb: true,
context: "movies",
context: 'movies',
lazy: true,
overlayPlayButton: true,
showTitle: true,
showYear: true,
centerText: true
});
} else if (viewStyle == "ThumbCard") {
} else if (viewStyle == 'ThumbCard') {
html = cardBuilder.getCardsHtml({
items: items,
shape: "backdrop",
shape: 'backdrop',
preferThumb: true,
context: "movies",
context: 'movies',
lazy: true,
cardLayout: true,
showTitle: true,
showYear: true,
centerText: true
});
} else if (viewStyle == "Banner") {
} else if (viewStyle == 'Banner') {
html = cardBuilder.getCardsHtml({
items: items,
shape: "banner",
shape: 'banner',
preferBanner: true,
context: "movies",
context: 'movies',
lazy: true
});
} else if (viewStyle == "List") {
} else if (viewStyle == 'List') {
html = listView.getListViewHtml({
items: items,
context: "movies",
context: 'movies',
sortBy: query.SortBy
});
} else if (viewStyle == "PosterCard") {
} else if (viewStyle == 'PosterCard') {
html = cardBuilder.getCardsHtml({
items: items,
shape: "portrait",
context: "movies",
shape: 'portrait',
context: 'movies',
showTitle: true,
showYear: true,
centerText: true,
@ -143,8 +143,8 @@ define(["loading", "layoutManager", "userSettings", "events", "libraryBrowser",
} else {
html = cardBuilder.getCardsHtml({
items: items,
shape: "portrait",
context: "movies",
shape: 'portrait',
context: 'movies',
overlayPlayButton: true,
showTitle: true,
showYear: true,
@ -159,10 +159,10 @@ define(["loading", "layoutManager", "userSettings", "events", "libraryBrowser",
itemsContainer.fetchData = fetchData;
itemsContainer.getItemsHtml = getItemsHtml;
itemsContainer.afterRefresh = afterRefresh;
var alphaPickerElement = tabContent.querySelector(".alphaPicker");
var alphaPickerElement = tabContent.querySelector('.alphaPicker');
if (alphaPickerElement) {
alphaPickerElement.addEventListener("alphavaluechanged", function (e) {
alphaPickerElement.addEventListener('alphavaluechanged', function (e) {
var newValue = e.detail.value;
query.NameStartsWithOrGreater = newValue;
query.StartIndex = 0;
@ -170,53 +170,53 @@ define(["loading", "layoutManager", "userSettings", "events", "libraryBrowser",
});
self.alphaPicker = new alphaPicker({
element: alphaPickerElement,
valueChangeEvent: "click"
valueChangeEvent: 'click'
});
tabContent.querySelector(".alphaPicker").classList.add("alphabetPicker-right");
alphaPickerElement.classList.add("alphaPicker-fixed-right");
itemsContainer.classList.add("padded-right-withalphapicker");
tabContent.querySelector('.alphaPicker').classList.add('alphabetPicker-right');
alphaPickerElement.classList.add('alphaPicker-fixed-right');
itemsContainer.classList.add('padded-right-withalphapicker');
}
var btnFilter = tabContent.querySelector(".btnFilter");
var btnFilter = tabContent.querySelector('.btnFilter');
if (btnFilter) {
btnFilter.addEventListener("click", function () {
btnFilter.addEventListener('click', function () {
self.showFilterMenu();
});
}
var btnSort = tabContent.querySelector(".btnSort");
var btnSort = tabContent.querySelector('.btnSort');
if (btnSort) {
btnSort.addEventListener("click", function (e) {
btnSort.addEventListener('click', function (e) {
libraryBrowser.showSortMenu({
items: [{
name: globalize.translate("OptionNameSort"),
id: "SortName,ProductionYear"
name: globalize.translate('OptionNameSort'),
id: 'SortName,ProductionYear'
}, {
name: globalize.translate("OptionImdbRating"),
id: "CommunityRating,SortName,ProductionYear"
name: globalize.translate('OptionImdbRating'),
id: 'CommunityRating,SortName,ProductionYear'
}, {
name: globalize.translate("OptionCriticRating"),
id: "CriticRating,SortName,ProductionYear"
name: globalize.translate('OptionCriticRating'),
id: 'CriticRating,SortName,ProductionYear'
}, {
name: globalize.translate("OptionDateAdded"),
id: "DateCreated,SortName,ProductionYear"
name: globalize.translate('OptionDateAdded'),
id: 'DateCreated,SortName,ProductionYear'
}, {
name: globalize.translate("OptionDatePlayed"),
id: "DatePlayed,SortName,ProductionYear"
name: globalize.translate('OptionDatePlayed'),
id: 'DatePlayed,SortName,ProductionYear'
}, {
name: globalize.translate("OptionParentalRating"),
id: "OfficialRating,SortName,ProductionYear"
name: globalize.translate('OptionParentalRating'),
id: 'OfficialRating,SortName,ProductionYear'
}, {
name: globalize.translate("OptionPlayCount"),
id: "PlayCount,SortName,ProductionYear"
name: globalize.translate('OptionPlayCount'),
id: 'PlayCount,SortName,ProductionYear'
}, {
name: globalize.translate("OptionReleaseDate"),
id: "PremiereDate,SortName,ProductionYear"
name: globalize.translate('OptionReleaseDate'),
id: 'PremiereDate,SortName,ProductionYear'
}, {
name: globalize.translate("OptionRuntime"),
id: "Runtime,SortName,ProductionYear"
name: globalize.translate('OptionRuntime'),
id: 'Runtime,SortName,ProductionYear'
}],
callback: function () {
query.StartIndex = 0;
@ -228,11 +228,11 @@ define(["loading", "layoutManager", "userSettings", "events", "libraryBrowser",
});
});
}
var btnSelectView = tabContent.querySelector(".btnSelectView");
btnSelectView.addEventListener("click", function (e) {
libraryBrowser.showLayoutMenu(e.target, self.getCurrentViewStyle(), "Banner,List,Poster,PosterCard,Thumb,ThumbCard".split(","));
var btnSelectView = tabContent.querySelector('.btnSelectView');
btnSelectView.addEventListener('click', function (e) {
libraryBrowser.showLayoutMenu(e.target, self.getCurrentViewStyle(), 'Banner,List,Poster,PosterCard,Thumb,ThumbCard'.split(','));
});
btnSelectView.addEventListener("layoutchange", function (e) {
btnSelectView.addEventListener('layoutchange', function (e) {
var viewStyle = e.detail.viewStyle;
userSettings.set(savedViewKey, viewStyle);
query.StartIndex = 0;
@ -242,17 +242,17 @@ define(["loading", "layoutManager", "userSettings", "events", "libraryBrowser",
}
var self = this;
var itemsContainer = tabContent.querySelector(".itemsContainer");
var savedQueryKey = params.topParentId + "-" + options.mode;
var savedViewKey = savedQueryKey + "-view";
var itemsContainer = tabContent.querySelector('.itemsContainer');
var savedQueryKey = params.topParentId + '-' + options.mode;
var savedViewKey = savedQueryKey + '-view';
var query = {
SortBy: "SortName,ProductionYear",
SortOrder: "Ascending",
IncludeItemTypes: "Movie",
SortBy: 'SortName,ProductionYear',
SortOrder: 'Ascending',
IncludeItemTypes: 'Movie',
Recursive: true,
Fields: "PrimaryImageAspectRatio,MediaSourceCount,BasicSyncInfo",
Fields: 'PrimaryImageAspectRatio,MediaSourceCount,BasicSyncInfo',
ImageTypeLimit: 1,
EnableImageTypes: "Primary,Backdrop,Banner,Thumb",
EnableImageTypes: 'Primary,Backdrop,Banner,Thumb',
StartIndex: 0,
ParentId: params.topParentId
};
@ -263,20 +263,20 @@ define(["loading", "layoutManager", "userSettings", "events", "libraryBrowser",
var isLoading = false;
if (options.mode === "favorites") {
if (options.mode === 'favorites') {
query.IsFavorite = true;
}
query = userSettings.loadQuerySettings(savedQueryKey, query);
self.showFilterMenu = function () {
require(["components/filterdialog/filterdialog"], function (filterDialogFactory) {
require(['components/filterdialog/filterdialog'], function (filterDialogFactory) {
var filterDialog = new filterDialogFactory({
query: query,
mode: "movies",
mode: 'movies',
serverId: ApiClient.serverId()
});
events.on(filterDialog, "filterchange", function () {
events.on(filterDialog, 'filterchange', function () {
query.StartIndex = 0;
itemsContainer.refreshItems();
});
@ -285,7 +285,7 @@ define(["loading", "layoutManager", "userSettings", "events", "libraryBrowser",
};
self.getCurrentViewStyle = function () {
return userSettings.get(savedViewKey) || "Poster";
return userSettings.get(savedViewKey) || 'Poster';
};
self.initTab = function () {

View file

@ -1,31 +1,31 @@
define(["events", "layoutManager", "inputManager", "userSettings", "libraryMenu", "mainTabsManager", "cardBuilder", "dom", "imageLoader", "playbackManager", "globalize", "emby-scroller", "emby-itemscontainer", "emby-tabs", "emby-button"], function (events, layoutManager, inputManager, userSettings, libraryMenu, mainTabsManager, cardBuilder, dom, imageLoader, playbackManager, globalize) {
"use strict";
define(['events', 'layoutManager', 'inputManager', 'userSettings', 'libraryMenu', 'mainTabsManager', 'cardBuilder', 'dom', 'imageLoader', 'playbackManager', 'globalize', 'emby-scroller', 'emby-itemscontainer', 'emby-tabs', 'emby-button'], function (events, layoutManager, inputManager, userSettings, libraryMenu, mainTabsManager, cardBuilder, dom, imageLoader, playbackManager, globalize) {
'use strict';
function enableScrollX() {
return !layoutManager.desktop;
}
function getPortraitShape() {
return enableScrollX() ? "overflowPortrait" : "portrait";
return enableScrollX() ? 'overflowPortrait' : 'portrait';
}
function getThumbShape() {
return enableScrollX() ? "overflowBackdrop" : "backdrop";
return enableScrollX() ? 'overflowBackdrop' : 'backdrop';
}
function loadLatest(page, userId, parentId) {
var options = {
IncludeItemTypes: "Movie",
IncludeItemTypes: 'Movie',
Limit: 18,
Fields: "PrimaryImageAspectRatio,MediaSourceCount,BasicSyncInfo",
Fields: 'PrimaryImageAspectRatio,MediaSourceCount,BasicSyncInfo',
ParentId: parentId,
ImageTypeLimit: 1,
EnableImageTypes: "Primary,Backdrop,Banner,Thumb",
EnableImageTypes: 'Primary,Backdrop,Banner,Thumb',
EnableTotalRecordCount: false
};
ApiClient.getJSON(ApiClient.getUrl("Users/" + userId + "/Items/Latest", options)).then(function (items) {
ApiClient.getJSON(ApiClient.getUrl('Users/' + userId + '/Items/Latest', options)).then(function (items) {
var allowBottomPadding = !enableScrollX();
var container = page.querySelector("#recentlyAddedItems");
var container = page.querySelector('#recentlyAddedItems');
cardBuilder.buildCards(items, {
itemsContainer: container,
shape: getPortraitShape(),
@ -45,28 +45,28 @@ define(["events", "layoutManager", "inputManager", "userSettings", "libraryMenu"
function loadResume(page, userId, parentId) {
var screenWidth = dom.getWindowSize().innerWidth;
var options = {
SortBy: "DatePlayed",
SortOrder: "Descending",
IncludeItemTypes: "Movie",
Filters: "IsResumable",
SortBy: 'DatePlayed',
SortOrder: 'Descending',
IncludeItemTypes: 'Movie',
Filters: 'IsResumable',
Limit: screenWidth >= 1920 ? 5 : screenWidth >= 1600 ? 5 : 3,
Recursive: true,
Fields: "PrimaryImageAspectRatio,MediaSourceCount,BasicSyncInfo",
Fields: 'PrimaryImageAspectRatio,MediaSourceCount,BasicSyncInfo',
CollapseBoxSetItems: false,
ParentId: parentId,
ImageTypeLimit: 1,
EnableImageTypes: "Primary,Backdrop,Banner,Thumb",
EnableImageTypes: 'Primary,Backdrop,Banner,Thumb',
EnableTotalRecordCount: false
};
ApiClient.getItems(userId, options).then(function (result) {
if (result.Items.length) {
page.querySelector("#resumableSection").classList.remove("hide");
page.querySelector('#resumableSection').classList.remove('hide');
} else {
page.querySelector("#resumableSection").classList.add("hide");
page.querySelector('#resumableSection').classList.add('hide');
}
var allowBottomPadding = !enableScrollX();
var container = page.querySelector("#resumableItems");
var container = page.querySelector('#resumableItems');
cardBuilder.buildCards(result.Items, {
itemsContainer: container,
preferThumb: true,
@ -86,31 +86,31 @@ define(["events", "layoutManager", "inputManager", "userSettings", "libraryMenu"
}
function getRecommendationHtml(recommendation) {
var html = "";
var title = "";
var html = '';
var title = '';
switch (recommendation.RecommendationType) {
case "SimilarToRecentlyPlayed":
title = globalize.translate("RecommendationBecauseYouWatched", recommendation.BaselineItemName);
case 'SimilarToRecentlyPlayed':
title = globalize.translate('RecommendationBecauseYouWatched', recommendation.BaselineItemName);
break;
case "SimilarToLikedItem":
title = globalize.translate("RecommendationBecauseYouLike", recommendation.BaselineItemName);
case 'SimilarToLikedItem':
title = globalize.translate('RecommendationBecauseYouLike', recommendation.BaselineItemName);
break;
case "HasDirectorFromRecentlyPlayed":
case "HasLikedDirector":
title = globalize.translate("RecommendationDirectedBy", recommendation.BaselineItemName);
case 'HasDirectorFromRecentlyPlayed':
case 'HasLikedDirector':
title = globalize.translate('RecommendationDirectedBy', recommendation.BaselineItemName);
break;
case "HasActorFromRecentlyPlayed":
case "HasLikedActor":
title = globalize.translate("RecommendationStarring", recommendation.BaselineItemName);
case 'HasActorFromRecentlyPlayed':
case 'HasLikedActor':
title = globalize.translate('RecommendationStarring', recommendation.BaselineItemName);
break;
}
html += '<div class="verticalSection">';
html += '<h2 class="sectionTitle sectionTitle-cards padded-left">' + title + "</h2>";
html += '<h2 class="sectionTitle sectionTitle-cards padded-left">' + title + '</h2>';
var allowBottomPadding = true;
if (enableScrollX()) {
@ -133,31 +133,31 @@ define(["events", "layoutManager", "inputManager", "userSettings", "libraryMenu"
if (enableScrollX()) {
html += '</div>';
}
html += "</div>";
html += "</div>";
html += '</div>';
html += '</div>';
return html;
}
function loadSuggestions(page, userId, parentId) {
var screenWidth = dom.getWindowSize().innerWidth;
var url = ApiClient.getUrl("Movies/Recommendations", {
var url = ApiClient.getUrl('Movies/Recommendations', {
userId: userId,
categoryLimit: 6,
ItemLimit: screenWidth >= 1920 ? 8 : screenWidth >= 1600 ? 8 : screenWidth >= 1200 ? 6 : 5,
Fields: "PrimaryImageAspectRatio,MediaSourceCount,BasicSyncInfo",
Fields: 'PrimaryImageAspectRatio,MediaSourceCount,BasicSyncInfo',
ImageTypeLimit: 1,
EnableImageTypes: "Primary,Backdrop,Banner,Thumb"
EnableImageTypes: 'Primary,Backdrop,Banner,Thumb'
});
ApiClient.getJSON(url).then(function (recommendations) {
if (!recommendations.length) {
page.querySelector(".noItemsMessage").classList.remove("hide");
page.querySelector(".recommendations").innerHTML = "";
page.querySelector('.noItemsMessage').classList.remove('hide');
page.querySelector('.recommendations').innerHTML = '';
return;
}
var html = recommendations.map(getRecommendationHtml).join("");
page.querySelector(".noItemsMessage").classList.add("hide");
var recs = page.querySelector(".recommendations");
var html = recommendations.map(getRecommendationHtml).join('');
page.querySelector('.noItemsMessage').classList.add('hide');
var recs = page.querySelector('.recommendations');
recs.innerHTML = html;
imageLoader.lazyChildren(recs);
@ -167,33 +167,33 @@ define(["events", "layoutManager", "inputManager", "userSettings", "libraryMenu"
}
function autoFocus(page) {
require(["autoFocuser"], function (autoFocuser) {
require(['autoFocuser'], function (autoFocuser) {
autoFocuser.autoFocus(page);
});
}
function setScrollClasses(elem, scrollX) {
if (scrollX) {
elem.classList.add("hiddenScrollX");
elem.classList.add('hiddenScrollX');
if (layoutManager.tv) {
elem.classList.add("smoothScrollX");
elem.classList.add("padded-top-focusscale");
elem.classList.add("padded-bottom-focusscale");
elem.classList.add('smoothScrollX');
elem.classList.add('padded-top-focusscale');
elem.classList.add('padded-bottom-focusscale');
}
elem.classList.add("scrollX");
elem.classList.remove("vertical-wrap");
elem.classList.add('scrollX');
elem.classList.remove('vertical-wrap');
} else {
elem.classList.remove("hiddenScrollX");
elem.classList.remove("smoothScrollX");
elem.classList.remove("scrollX");
elem.classList.add("vertical-wrap");
elem.classList.remove('hiddenScrollX');
elem.classList.remove('smoothScrollX');
elem.classList.remove('scrollX');
elem.classList.add('vertical-wrap');
}
}
function initSuggestedTab(page, tabContent) {
var containers = tabContent.querySelectorAll(".itemsContainer");
var containers = tabContent.querySelectorAll('.itemsContainer');
for (var i = 0, length = containers.length; i < length; i++) {
setScrollClasses(containers[i], enableScrollX());
@ -203,7 +203,7 @@ define(["events", "layoutManager", "inputManager", "userSettings", "libraryMenu"
function loadSuggestionsTab(view, params, tabContent) {
var parentId = params.topParentId;
var userId = ApiClient.getCurrentUserId();
console.debug("loadSuggestionsTab");
console.debug('loadSuggestionsTab');
loadResume(tabContent, userId, parentId);
loadLatest(tabContent, userId, parentId);
loadSuggestions(tabContent, userId, parentId);
@ -211,35 +211,35 @@ define(["events", "layoutManager", "inputManager", "userSettings", "libraryMenu"
function getTabs() {
return [{
name: globalize.translate("Movies")
name: globalize.translate('Movies')
}, {
name: globalize.translate("TabSuggestions")
name: globalize.translate('TabSuggestions')
}, {
name: globalize.translate("TabTrailers")
name: globalize.translate('TabTrailers')
}, {
name: globalize.translate("TabFavorites")
name: globalize.translate('TabFavorites')
}, {
name: globalize.translate("TabCollections")
name: globalize.translate('TabCollections')
}, {
name: globalize.translate("TabGenres")
name: globalize.translate('TabGenres')
}, {
name: globalize.translate("ButtonSearch"),
cssClass: "searchTabButton"
name: globalize.translate('ButtonSearch'),
cssClass: 'searchTabButton'
}];
}
function getDefaultTabIndex(folderId) {
switch (userSettings.get("landing-" + folderId)) {
case "suggestions":
switch (userSettings.get('landing-' + folderId)) {
case 'suggestions':
return 1;
case "favorites":
case 'favorites':
return 3;
case "collections":
case 'collections':
return 4;
case "genres":
case 'genres':
return 5;
default:
@ -258,7 +258,7 @@ define(["events", "layoutManager", "inputManager", "userSettings", "libraryMenu"
}
function getTabContainers() {
return view.querySelectorAll(".pageTabContent");
return view.querySelectorAll('.pageTabContent');
}
function initTabs() {
@ -270,30 +270,30 @@ define(["events", "layoutManager", "inputManager", "userSettings", "libraryMenu"
switch (index) {
case 0:
depends.push("controllers/movies/movies");
depends.push('controllers/movies/movies');
break;
case 1:
break;
case 2:
depends.push("controllers/movies/movietrailers");
depends.push('controllers/movies/movietrailers');
break;
case 3:
depends.push("controllers/movies/movies");
depends.push('controllers/movies/movies');
break;
case 4:
depends.push("controllers/movies/moviecollections");
depends.push('controllers/movies/moviecollections');
break;
case 5:
depends.push("controllers/movies/moviegenres");
depends.push('controllers/movies/moviegenres');
break;
case 6:
depends.push("scripts/searchtab");
depends.push('scripts/searchtab');
}
require(depends, function (controllerFactory) {
@ -313,12 +313,12 @@ define(["events", "layoutManager", "inputManager", "userSettings", "libraryMenu"
controller = self;
} else if (index === 6) {
controller = new controllerFactory(view, tabContent, {
collectionType: "movies",
collectionType: 'movies',
parentId: params.topParentId
});
} else if (index == 0 || index == 3) {
controller = new controllerFactory(view, params, tabContent, {
mode: index ? "favorites" : "movies"
mode: index ? 'favorites' : 'movies'
});
} else {
controller = new controllerFactory(view, params, tabContent);
@ -356,7 +356,7 @@ define(["events", "layoutManager", "inputManager", "userSettings", "libraryMenu"
}
function onPlaybackStop(e, state) {
if (state.NowPlayingItem && state.NowPlayingItem.MediaType == "Video") {
if (state.NowPlayingItem && state.NowPlayingItem.MediaType == 'Video') {
renderedTabs = [];
mainTabsManager.getTabsElement().triggerTabChange();
}
@ -364,9 +364,9 @@ define(["events", "layoutManager", "inputManager", "userSettings", "libraryMenu"
function onInputCommand(e) {
switch (e.detail.command) {
case "search":
case 'search':
e.preventDefault();
Dashboard.navigate("search.html?collectionType=movies&parentId=" + params.topParentId);
Dashboard.navigate('search.html?collectionType=movies&parentId=' + params.topParentId);
}
}
@ -388,28 +388,28 @@ define(["events", "layoutManager", "inputManager", "userSettings", "libraryMenu"
var tabControllers = [];
var renderedTabs = [];
view.addEventListener("viewshow", function (e) {
if (isViewRestored = e.detail.isRestored, initTabs(), !view.getAttribute("data-title")) {
view.addEventListener('viewshow', function (e) {
if (isViewRestored = e.detail.isRestored, initTabs(), !view.getAttribute('data-title')) {
var parentId = params.topParentId;
if (parentId) {
ApiClient.getItem(ApiClient.getCurrentUserId(), parentId).then(function (item) {
view.setAttribute("data-title", item.Name);
view.setAttribute('data-title', item.Name);
libraryMenu.setTitle(item.Name);
});
} else {
view.setAttribute("data-title", globalize.translate("TabMovies"));
libraryMenu.setTitle(globalize.translate("TabMovies"));
view.setAttribute('data-title', globalize.translate('TabMovies'));
libraryMenu.setTitle(globalize.translate('TabMovies'));
}
}
events.on(playbackManager, "playbackstop", onPlaybackStop);
events.on(playbackManager, 'playbackstop', onPlaybackStop);
inputManager.on(window, onInputCommand);
});
view.addEventListener("viewbeforehide", function (e) {
view.addEventListener('viewbeforehide', function (e) {
inputManager.off(window, onInputCommand);
});
view.addEventListener("viewdestroy", function (e) {
view.addEventListener('viewdestroy', function (e) {
tabControllers.forEach(function (t) {
if (t.destroy) {
t.destroy();

View file

@ -1,5 +1,5 @@
define(["layoutManager", "loading", "events", "libraryBrowser", "imageLoader", "alphaPicker", "listView", "cardBuilder", "userSettings", "globalize", "emby-itemscontainer"], function (layoutManager, loading, events, libraryBrowser, imageLoader, alphaPicker, listView, cardBuilder, userSettings, globalize) {
"use strict";
define(['layoutManager', 'loading', 'events', 'libraryBrowser', 'imageLoader', 'alphaPicker', 'listView', 'cardBuilder', 'userSettings', 'globalize', 'emby-itemscontainer'], function (layoutManager, loading, events, libraryBrowser, imageLoader, alphaPicker, listView, cardBuilder, userSettings, globalize) {
'use strict';
return function (view, params, tabContent) {
function getPageData(context) {
@ -9,16 +9,16 @@ define(["layoutManager", "loading", "events", "libraryBrowser", "imageLoader", "
if (!pageData) {
pageData = data[key] = {
query: {
SortBy: "SortName",
SortOrder: "Ascending",
IncludeItemTypes: "Trailer",
SortBy: 'SortName',
SortOrder: 'Ascending',
IncludeItemTypes: 'Trailer',
Recursive: true,
Fields: "PrimaryImageAspectRatio,SortName,BasicSyncInfo",
Fields: 'PrimaryImageAspectRatio,SortName,BasicSyncInfo',
ImageTypeLimit: 1,
EnableImageTypes: "Primary,Backdrop,Banner,Thumb",
EnableImageTypes: 'Primary,Backdrop,Banner,Thumb',
StartIndex: 0
},
view: libraryBrowser.getSavedView(key) || "Poster"
view: libraryBrowser.getSavedView(key) || 'Poster'
};
if (userSettings.libraryPageSize() > 0) {
@ -37,7 +37,7 @@ define(["layoutManager", "loading", "events", "libraryBrowser", "imageLoader", "
function getSavedQueryKey(context) {
if (!context.savedQueryKey) {
context.savedQueryKey = libraryBrowser.getSavedQueryKey("trailers");
context.savedQueryKey = libraryBrowser.getSavedQueryKey('trailers');
}
return context.savedQueryKey;
@ -85,43 +85,43 @@ define(["layoutManager", "loading", "events", "libraryBrowser", "imageLoader", "
var html;
var viewStyle = self.getCurrentViewStyle();
if (viewStyle == "Thumb") {
if (viewStyle == 'Thumb') {
html = cardBuilder.getCardsHtml({
items: result.Items,
shape: "backdrop",
shape: 'backdrop',
preferThumb: true,
context: "movies",
context: 'movies',
overlayPlayButton: true
});
} else if (viewStyle == "ThumbCard") {
} else if (viewStyle == 'ThumbCard') {
html = cardBuilder.getCardsHtml({
items: result.Items,
shape: "backdrop",
shape: 'backdrop',
preferThumb: true,
context: "movies",
context: 'movies',
cardLayout: true,
showTitle: true,
showYear: true,
centerText: true
});
} else if (viewStyle == "Banner") {
} else if (viewStyle == 'Banner') {
html = cardBuilder.getCardsHtml({
items: result.Items,
shape: "banner",
shape: 'banner',
preferBanner: true,
context: "movies"
context: 'movies'
});
} else if (viewStyle == "List") {
} else if (viewStyle == 'List') {
html = listView.getListViewHtml({
items: result.Items,
context: "movies",
context: 'movies',
sortBy: query.SortBy
});
} else if (viewStyle == "PosterCard") {
} else if (viewStyle == 'PosterCard') {
html = cardBuilder.getCardsHtml({
items: result.Items,
shape: "portrait",
context: "movies",
shape: 'portrait',
context: 'movies',
showTitle: true,
showYear: true,
cardLayout: true,
@ -130,8 +130,8 @@ define(["layoutManager", "loading", "events", "libraryBrowser", "imageLoader", "
} else {
html = cardBuilder.getCardsHtml({
items: result.Items,
shape: "portrait",
context: "movies",
shape: 'portrait',
context: 'movies',
centerText: true,
overlayPlayButton: true,
showTitle: true,
@ -141,27 +141,27 @@ define(["layoutManager", "loading", "events", "libraryBrowser", "imageLoader", "
var i;
var length;
var elems = tabContent.querySelectorAll(".paging");
var elems = tabContent.querySelectorAll('.paging');
for (i = 0, length = elems.length; i < length; i++) {
elems[i].innerHTML = pagingHtml;
}
elems = tabContent.querySelectorAll(".btnNextPage");
elems = tabContent.querySelectorAll('.btnNextPage');
for (i = 0, length = elems.length; i < length; i++) {
elems[i].addEventListener("click", onNextPageClick);
elems[i].addEventListener('click', onNextPageClick);
}
elems = tabContent.querySelectorAll(".btnPreviousPage");
elems = tabContent.querySelectorAll('.btnPreviousPage');
for (i = 0, length = elems.length; i < length; i++) {
elems[i].addEventListener("click", onPreviousPageClick);
elems[i].addEventListener('click', onPreviousPageClick);
}
if (!result.Items.length) {
html = '<p style="text-align:center;">' + globalize.translate("MessageNoTrailersFound") + "</p>";
html = '<p style="text-align:center;">' + globalize.translate('MessageNoTrailersFound') + '</p>';
}
var itemsContainer = tabContent.querySelector(".itemsContainer");
var itemsContainer = tabContent.querySelector('.itemsContainer');
itemsContainer.innerHTML = html;
imageLoader.lazyChildren(itemsContainer);
libraryBrowser.saveQueryValues(getSavedQueryKey(tabContent), query);
@ -180,13 +180,13 @@ define(["layoutManager", "loading", "events", "libraryBrowser", "imageLoader", "
var isLoading = false;
self.showFilterMenu = function () {
require(["components/filterdialog/filterdialog"], function (filterDialogFactory) {
require(['components/filterdialog/filterdialog'], function (filterDialogFactory) {
var filterDialog = new filterDialogFactory({
query: getQuery(tabContent),
mode: "movies",
mode: 'movies',
serverId: ApiClient.serverId()
});
events.on(filterDialog, "filterchange", function () {
events.on(filterDialog, 'filterchange', function () {
getQuery(tabContent).StartIndex = 0;
reloadItems();
});
@ -199,9 +199,9 @@ define(["layoutManager", "loading", "events", "libraryBrowser", "imageLoader", "
};
function initPage(tabContent) {
var alphaPickerElement = tabContent.querySelector(".alphaPicker");
var itemsContainer = tabContent.querySelector(".itemsContainer");
alphaPickerElement.addEventListener("alphavaluechanged", function (e) {
var alphaPickerElement = tabContent.querySelector('.alphaPicker');
var itemsContainer = tabContent.querySelector('.itemsContainer');
alphaPickerElement.addEventListener('alphavaluechanged', function (e) {
var newValue = e.detail.value;
var query = getQuery(tabContent);
query.NameStartsWithOrGreater = newValue;
@ -210,39 +210,39 @@ define(["layoutManager", "loading", "events", "libraryBrowser", "imageLoader", "
});
self.alphaPicker = new alphaPicker({
element: alphaPickerElement,
valueChangeEvent: "click"
valueChangeEvent: 'click'
});
tabContent.querySelector(".alphaPicker").classList.add("alphabetPicker-right");
alphaPickerElement.classList.add("alphaPicker-fixed-right");
itemsContainer.classList.add("padded-right-withalphapicker");
tabContent.querySelector('.alphaPicker').classList.add('alphabetPicker-right');
alphaPickerElement.classList.add('alphaPicker-fixed-right');
itemsContainer.classList.add('padded-right-withalphapicker');
tabContent.querySelector(".btnFilter").addEventListener("click", function () {
tabContent.querySelector('.btnFilter').addEventListener('click', function () {
self.showFilterMenu();
});
tabContent.querySelector(".btnSort").addEventListener("click", function (e) {
tabContent.querySelector('.btnSort').addEventListener('click', function (e) {
libraryBrowser.showSortMenu({
items: [{
name: globalize.translate("OptionNameSort"),
id: "SortName"
name: globalize.translate('OptionNameSort'),
id: 'SortName'
}, {
name: globalize.translate("OptionImdbRating"),
id: "CommunityRating,SortName"
name: globalize.translate('OptionImdbRating'),
id: 'CommunityRating,SortName'
}, {
name: globalize.translate("OptionDateAdded"),
id: "DateCreated,SortName"
name: globalize.translate('OptionDateAdded'),
id: 'DateCreated,SortName'
}, {
name: globalize.translate("OptionDatePlayed"),
id: "DatePlayed,SortName"
name: globalize.translate('OptionDatePlayed'),
id: 'DatePlayed,SortName'
}, {
name: globalize.translate("OptionParentalRating"),
id: "OfficialRating,SortName"
name: globalize.translate('OptionParentalRating'),
id: 'OfficialRating,SortName'
}, {
name: globalize.translate("OptionPlayCount"),
id: "PlayCount,SortName"
name: globalize.translate('OptionPlayCount'),
id: 'PlayCount,SortName'
}, {
name: globalize.translate("OptionReleaseDate"),
id: "PremiereDate,SortName"
name: globalize.translate('OptionReleaseDate'),
id: 'PremiereDate,SortName'
}],
callback: function () {
getQuery(tabContent).StartIndex = 0;