mirror of
https://github.com/jellyfin/jellyfin-web
synced 2025-03-30 19:56:21 +00:00
update photo page
This commit is contained in:
parent
2ff0f16136
commit
f52f1c1e0a
4 changed files with 30 additions and 522 deletions
|
@ -1,42 +1,10 @@
|
|||
<div id="photosPage" data-role="page" data-dom-cache="true" class="page libraryPage pageWithAbsoluteTabs" data-require="scripts/photos,paper-tabs">
|
||||
|
||||
<div class="libraryViewNav scopedLibraryViewNav libraryViewNavWithMinHeight">
|
||||
<paper-tabs hidescrollbuttons noink>
|
||||
<paper-tab>${TabAlbums}</paper-tab>
|
||||
<paper-tab>${TabPhotos}</paper-tab>
|
||||
<paper-tab>${TabVideos}</paper-tab>
|
||||
</paper-tabs>
|
||||
<div class="legacyTabs">
|
||||
<a href="photos.html" class="lnkPhotoAlbums">${TabAlbums}</a>
|
||||
<a href="photos.html?tab=1" class="lnkPhotos">${TabPhotos}</a>
|
||||
<a href="photos.html?tab=2" class="lnkVideos">${TabVideos}</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="pageTabsContainer">
|
||||
<div class="pageTabContent albumTabContent hide">
|
||||
<div class="viewSettings">
|
||||
<div class="listTopPaging">
|
||||
</div>
|
||||
</div>
|
||||
<div class="itemsContainer paddedItemsContainer" style="text-align:center;"></div>
|
||||
</div>
|
||||
<div class="pageTabContent photoTabContent hide">
|
||||
<div class="viewSettings">
|
||||
<div class="listTopPaging">
|
||||
</div>
|
||||
</div>
|
||||
<div class="itemsContainer paddedItemsContainer" style="text-align:center;"></div>
|
||||
</div>
|
||||
<div class="pageTabContent videoTabContent hide">
|
||||
<div class="viewSettings">
|
||||
<div class="listTopPaging">
|
||||
</div>
|
||||
</div>
|
||||
<div class="itemsContainer paddedItemsContainer" style="text-align:center;"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="photosPage" data-role="page" data-dom-cache="true" class="page libraryPage noSecondaryNavPage" data-require="scripts/photos,paper-tabs">
|
||||
|
||||
<div data-role="content">
|
||||
<div class="viewSettings">
|
||||
<div class="listTopPaging">
|
||||
</div>
|
||||
</div>
|
||||
<div class="itemsContainer paddedItemsContainer" style="text-align:center;"></div>
|
||||
</div>
|
||||
</div>
|
|
@ -12,7 +12,7 @@
|
|||
if (!pageData) {
|
||||
pageData = data = {
|
||||
query: {
|
||||
SortBy: "SortName",
|
||||
SortBy: "IsFolder,SortName",
|
||||
SortOrder: "Ascending",
|
||||
Fields: "DateCreated,PrimaryImageAspectRatio,MediaSourceCount,SyncInfo",
|
||||
ImageTypeLimit: 1,
|
||||
|
@ -40,7 +40,7 @@
|
|||
function getSavedQueryKey() {
|
||||
|
||||
if (!view.savedQueryKey) {
|
||||
view.savedQueryKey = libraryBrowser.getSavedQueryKey('items');
|
||||
view.savedQueryKey = libraryBrowser.getSavedQueryKey('itemsv1');
|
||||
}
|
||||
return view.savedQueryKey;
|
||||
}
|
||||
|
|
|
@ -1877,418 +1877,6 @@
|
|||
options.squareSize = squareSize;
|
||||
},
|
||||
|
||||
setPosterViewDataOnItems: function (options, items) {
|
||||
|
||||
LibraryBrowser.setPosterViewData(options);
|
||||
|
||||
options.shape = options.shape || "portrait";
|
||||
|
||||
var html = "";
|
||||
|
||||
var primaryImageAspectRatio;
|
||||
var thumbWidth = options.thumbWidth;
|
||||
var posterWidth = options.posterWidth;
|
||||
var squareSize = options.squareSize;
|
||||
var bannerWidth = options.bannerWidth;
|
||||
|
||||
var uiAspect = options.uiAspect;
|
||||
|
||||
for (var i = 0, length = items.length; i < length; i++) {
|
||||
|
||||
var item = items[i];
|
||||
|
||||
primaryImageAspectRatio = LibraryBrowser.getAveragePrimaryImageAspectRatio([item]);
|
||||
|
||||
LibraryBrowser.setPosterViewDataOnItem(item, i, options, primaryImageAspectRatio, thumbWidth, posterWidth, squareSize, bannerWidth, uiAspect);
|
||||
}
|
||||
|
||||
return html;
|
||||
},
|
||||
|
||||
setPosterViewDataOnItem: function (item, index, options, primaryImageAspectRatio, thumbWidth, posterWidth, squareSize, bannerWidth, uiAspect) {
|
||||
|
||||
var imgUrl = null;
|
||||
var icon;
|
||||
var width = null;
|
||||
var height = null;
|
||||
|
||||
var forceName = false;
|
||||
|
||||
var enableImageEnhancers = options.enableImageEnhancers !== false;
|
||||
|
||||
var cssClass = "card";
|
||||
|
||||
if (options.fullWidthOnMobile) {
|
||||
cssClass += " fullWidthCardOnMobile";
|
||||
}
|
||||
|
||||
var showTitle = options.showTitle == 'auto' ? true : options.showTitle;
|
||||
var coverImage = options.coverImage;
|
||||
|
||||
if (options.autoThumb && item.ImageTags && item.ImageTags.Primary && item.PrimaryImageAspectRatio && item.PrimaryImageAspectRatio >= 1.34) {
|
||||
|
||||
width = posterWidth;
|
||||
height = primaryImageAspectRatio ? Math.round(posterWidth / primaryImageAspectRatio) : null;
|
||||
|
||||
imgUrl = ApiClient.getImageUrl(item.Id, {
|
||||
type: "Primary",
|
||||
maxHeight: height,
|
||||
maxWidth: width,
|
||||
tag: item.ImageTags.Primary,
|
||||
enableImageEnhancers: enableImageEnhancers
|
||||
});
|
||||
|
||||
if (primaryImageAspectRatio) {
|
||||
if (uiAspect) {
|
||||
if (Math.abs(primaryImageAspectRatio - uiAspect) <= .2) {
|
||||
coverImage = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
} else if (options.autoThumb && item.ImageTags && item.ImageTags.Thumb) {
|
||||
|
||||
imgUrl = ApiClient.getScaledImageUrl(item.Id, {
|
||||
type: "Thumb",
|
||||
maxWidth: thumbWidth,
|
||||
tag: item.ImageTags.Thumb,
|
||||
enableImageEnhancers: enableImageEnhancers
|
||||
});
|
||||
|
||||
} else if (options.preferBackdrop && item.BackdropImageTags && item.BackdropImageTags.length) {
|
||||
|
||||
imgUrl = ApiClient.getScaledImageUrl(item.Id, {
|
||||
type: "Backdrop",
|
||||
maxWidth: thumbWidth,
|
||||
tag: item.BackdropImageTags[0],
|
||||
enableImageEnhancers: enableImageEnhancers
|
||||
});
|
||||
|
||||
} else if (options.preferThumb && item.ImageTags && item.ImageTags.Thumb) {
|
||||
|
||||
imgUrl = ApiClient.getScaledImageUrl(item.Id, {
|
||||
type: "Thumb",
|
||||
maxWidth: thumbWidth,
|
||||
tag: item.ImageTags.Thumb,
|
||||
enableImageEnhancers: enableImageEnhancers
|
||||
});
|
||||
|
||||
} else if (options.preferBanner && item.ImageTags && item.ImageTags.Banner) {
|
||||
|
||||
imgUrl = ApiClient.getScaledImageUrl(item.Id, {
|
||||
type: "Banner",
|
||||
maxWidth: bannerWidth,
|
||||
tag: item.ImageTags.Banner,
|
||||
enableImageEnhancers: enableImageEnhancers
|
||||
});
|
||||
|
||||
} else if (options.preferThumb && item.SeriesThumbImageTag && options.inheritThumb !== false) {
|
||||
|
||||
imgUrl = ApiClient.getScaledImageUrl(item.SeriesId, {
|
||||
type: "Thumb",
|
||||
maxWidth: thumbWidth,
|
||||
tag: item.SeriesThumbImageTag,
|
||||
enableImageEnhancers: enableImageEnhancers
|
||||
});
|
||||
|
||||
} else if (options.preferThumb && item.ParentThumbItemId && options.inheritThumb !== false) {
|
||||
|
||||
imgUrl = ApiClient.getThumbImageUrl(item.ParentThumbItemId, {
|
||||
type: "Thumb",
|
||||
maxWidth: thumbWidth,
|
||||
enableImageEnhancers: enableImageEnhancers
|
||||
});
|
||||
|
||||
} else if (options.preferThumb && item.BackdropImageTags && item.BackdropImageTags.length) {
|
||||
|
||||
imgUrl = ApiClient.getScaledImageUrl(item.Id, {
|
||||
type: "Backdrop",
|
||||
maxWidth: thumbWidth,
|
||||
tag: item.BackdropImageTags[0],
|
||||
enableImageEnhancers: enableImageEnhancers
|
||||
});
|
||||
|
||||
forceName = true;
|
||||
|
||||
} else if (item.ImageTags && item.ImageTags.Primary) {
|
||||
|
||||
width = posterWidth;
|
||||
height = primaryImageAspectRatio ? Math.round(posterWidth / primaryImageAspectRatio) : null;
|
||||
|
||||
imgUrl = ApiClient.getImageUrl(item.Id, {
|
||||
type: "Primary",
|
||||
maxHeight: height,
|
||||
maxWidth: width,
|
||||
tag: item.ImageTags.Primary,
|
||||
enableImageEnhancers: enableImageEnhancers
|
||||
});
|
||||
|
||||
if (primaryImageAspectRatio) {
|
||||
if (uiAspect) {
|
||||
if (Math.abs(primaryImageAspectRatio - uiAspect) <= .2) {
|
||||
coverImage = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (item.ParentPrimaryImageTag) {
|
||||
|
||||
imgUrl = ApiClient.getImageUrl(item.ParentPrimaryImageItemId, {
|
||||
type: "Primary",
|
||||
maxWidth: posterWidth,
|
||||
tag: item.ParentPrimaryImageTag,
|
||||
enableImageEnhancers: enableImageEnhancers
|
||||
});
|
||||
}
|
||||
else if (item.AlbumId && item.AlbumPrimaryImageTag) {
|
||||
|
||||
height = squareSize;
|
||||
width = primaryImageAspectRatio ? Math.round(height * primaryImageAspectRatio) : null;
|
||||
|
||||
imgUrl = ApiClient.getScaledImageUrl(item.AlbumId, {
|
||||
type: "Primary",
|
||||
maxHeight: height,
|
||||
maxWidth: width,
|
||||
tag: item.AlbumPrimaryImageTag,
|
||||
enableImageEnhancers: enableImageEnhancers
|
||||
});
|
||||
|
||||
if (primaryImageAspectRatio) {
|
||||
if (uiAspect) {
|
||||
if (Math.abs(primaryImageAspectRatio - uiAspect) <= .2) {
|
||||
coverImage = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (item.Type == 'Season' && item.ImageTags && item.ImageTags.Thumb) {
|
||||
|
||||
imgUrl = ApiClient.getScaledImageUrl(item.Id, {
|
||||
type: "Thumb",
|
||||
maxWidth: thumbWidth,
|
||||
tag: item.ImageTags.Thumb,
|
||||
enableImageEnhancers: enableImageEnhancers
|
||||
});
|
||||
|
||||
}
|
||||
else if (item.BackdropImageTags && item.BackdropImageTags.length) {
|
||||
|
||||
imgUrl = ApiClient.getScaledImageUrl(item.Id, {
|
||||
type: "Backdrop",
|
||||
maxWidth: thumbWidth,
|
||||
tag: item.BackdropImageTags[0],
|
||||
enableImageEnhancers: enableImageEnhancers
|
||||
});
|
||||
|
||||
} else if (item.ImageTags && item.ImageTags.Thumb) {
|
||||
|
||||
imgUrl = ApiClient.getScaledImageUrl(item.Id, {
|
||||
type: "Thumb",
|
||||
maxWidth: thumbWidth,
|
||||
tag: item.ImageTags.Thumb,
|
||||
enableImageEnhancers: enableImageEnhancers
|
||||
});
|
||||
|
||||
} else if (item.SeriesThumbImageTag) {
|
||||
|
||||
imgUrl = ApiClient.getScaledImageUrl(item.SeriesId, {
|
||||
type: "Thumb",
|
||||
maxWidth: thumbWidth,
|
||||
tag: item.SeriesThumbImageTag,
|
||||
enableImageEnhancers: enableImageEnhancers
|
||||
});
|
||||
|
||||
} else if (item.ParentThumbItemId) {
|
||||
|
||||
imgUrl = ApiClient.getThumbImageUrl(item, {
|
||||
type: "Thumb",
|
||||
maxWidth: thumbWidth,
|
||||
enableImageEnhancers: enableImageEnhancers
|
||||
});
|
||||
|
||||
} else if (item.MediaType == "Audio" || item.Type == "MusicAlbum" || item.Type == "MusicArtist") {
|
||||
|
||||
if (item.Name && showTitle) {
|
||||
icon = 'library-music';
|
||||
}
|
||||
cssClass += " defaultBackground";
|
||||
|
||||
} else if (item.Type == "Recording" || item.Type == "Program" || item.Type == "TvChannel") {
|
||||
|
||||
if (item.Name && showTitle) {
|
||||
icon = 'folder-open';
|
||||
}
|
||||
|
||||
cssClass += " defaultBackground";
|
||||
} else if (item.MediaType == "Video" || item.Type == "Season" || item.Type == "Series") {
|
||||
|
||||
if (item.Name && showTitle) {
|
||||
icon = 'videocam';
|
||||
}
|
||||
cssClass += " defaultBackground";
|
||||
} else if (item.Type == "Person") {
|
||||
|
||||
if (item.Name && showTitle) {
|
||||
icon = 'person';
|
||||
}
|
||||
cssClass += " defaultBackground";
|
||||
} else {
|
||||
if (item.Name && showTitle) {
|
||||
icon = 'folder-open';
|
||||
}
|
||||
cssClass += " defaultBackground";
|
||||
}
|
||||
|
||||
icon = item.icon || icon;
|
||||
cssClass += ' ' + options.shape + 'Card';
|
||||
|
||||
var mediaSourceCount = item.MediaSourceCount || 1;
|
||||
|
||||
var href = options.linkItem === false ? '#' : LibraryBrowser.getHref(item, options.context);
|
||||
|
||||
if (options.showChildCountIndicator && item.ChildCount && options.showLatestItemsPopup !== false) {
|
||||
cssClass += ' groupedCard';
|
||||
}
|
||||
|
||||
if ((showTitle || options.showItemCounts) && !options.overlayText) {
|
||||
cssClass += ' bottomPaddedCard';
|
||||
}
|
||||
|
||||
var dataAttributes = LibraryBrowser.getItemDataAttributesList(item, options, index);
|
||||
|
||||
for (var i = 0, length = dataAttributes.length; i < length; i++) {
|
||||
var att = dataAttributes[i];
|
||||
if (att.value) {
|
||||
item['data-' + att.name] = att.value;
|
||||
}
|
||||
}
|
||||
|
||||
var defaultAction = options.defaultAction;
|
||||
if (defaultAction == 'play' || defaultAction == 'playallfromhere') {
|
||||
if (item.PlayAccess != 'Full') {
|
||||
defaultAction = null;
|
||||
}
|
||||
}
|
||||
|
||||
// card
|
||||
//html += '<div' + dataAttributes + ' class="' + cssClass + '">';
|
||||
item.elemClass = cssClass;
|
||||
item.defaultAction = defaultAction;
|
||||
|
||||
var style = "";
|
||||
|
||||
if (imgUrl && !options.lazy) {
|
||||
style += 'background-image:url(\'' + imgUrl + '\');';
|
||||
}
|
||||
|
||||
var imageCssClass = 'cardImage';
|
||||
|
||||
if (icon) {
|
||||
imageCssClass += " iconCardImage";
|
||||
}
|
||||
|
||||
if (coverImage) {
|
||||
imageCssClass += " coveredCardImage";
|
||||
if (item.MediaType == 'Photo' || item.Type == 'PhotoAlbum' || item.Type == 'Folder' || item.Type == 'Program' || item.Type == 'Recording') {
|
||||
imageCssClass += " noScale";
|
||||
}
|
||||
}
|
||||
if (options.centerImage) {
|
||||
imageCssClass += " centeredCardImage";
|
||||
}
|
||||
|
||||
var dataSrc = "";
|
||||
|
||||
if (options.lazy && imgUrl) {
|
||||
imageCssClass += " lazy";
|
||||
dataSrc = ' data-src="' + imgUrl + '"';
|
||||
}
|
||||
|
||||
var cardboxCssClass = 'cardBox';
|
||||
|
||||
if (options.cardLayout) {
|
||||
cardboxCssClass += ' visualCardBox';
|
||||
}
|
||||
|
||||
item.cardBoxClass = cardboxCssClass;
|
||||
|
||||
var anchorCssClass = "cardContent";
|
||||
|
||||
anchorCssClass += ' mediaItem';
|
||||
|
||||
if (defaultAction) {
|
||||
anchorCssClass += ' itemWithAction';
|
||||
}
|
||||
|
||||
item.anchorClass = anchorCssClass;
|
||||
item.href = href;
|
||||
item.imgUrl = imgUrl;
|
||||
item.imageClass = imageCssClass;
|
||||
|
||||
if (imgUrl) {
|
||||
item.imageStyle = 'background-image:url("' + imgUrl + '");';
|
||||
} else {
|
||||
item.imageStyle = null;
|
||||
}
|
||||
|
||||
var overlayHtml = '';
|
||||
|
||||
if (item.LocationType == "Virtual" || item.LocationType == "Offline") {
|
||||
if (options.showLocationTypeIndicator !== false) {
|
||||
overlayHtml += LibraryBrowser.getOfflineIndicatorHtml(item);
|
||||
}
|
||||
} else if (options.showUnplayedIndicator !== false) {
|
||||
overlayHtml += LibraryBrowser.getPlayedIndicatorHtml(item);
|
||||
} else if (options.showChildCountIndicator) {
|
||||
overlayHtml += LibraryBrowser.getGroupCountIndicator(item);
|
||||
}
|
||||
|
||||
overlayHtml += LibraryBrowser.getSyncIndicator(item);
|
||||
|
||||
if (mediaSourceCount > 1) {
|
||||
overlayHtml += '<div class="mediaSourceIndicator">' + mediaSourceCount + '</div>';
|
||||
}
|
||||
|
||||
var progressHtml = options.showProgress === false || item.IsFolder ? '' : LibraryBrowser.getItemProgressBarHtml((item.Type == 'Recording' ? item : item.UserData));
|
||||
|
||||
var footerOverlayed = false;
|
||||
|
||||
if (options.overlayText || (forceName && !showTitle)) {
|
||||
|
||||
var footerCssClass = progressHtml ? 'cardFooter fullCardFooter' : 'cardFooter';
|
||||
|
||||
overlayHtml += LibraryBrowser.getCardFooterText(item, options, showTitle, imgUrl, forceName, footerCssClass, progressHtml);
|
||||
footerOverlayed = true;
|
||||
}
|
||||
else if (progressHtml) {
|
||||
overlayHtml += '<div class="cardFooter fullCardFooter lightCardFooter">';
|
||||
overlayHtml += "<div class='cardProgress cardText'>";
|
||||
overlayHtml += progressHtml;
|
||||
overlayHtml += "</div>";
|
||||
//cardFooter
|
||||
overlayHtml += "</div>";
|
||||
|
||||
progressHtml = '';
|
||||
}
|
||||
|
||||
if (options.overlayPlayButton && !item.IsPlaceHolder && (item.LocationType != 'Virtual' || !item.MediaType || item.Type == 'Program') && item.Type != 'Person') {
|
||||
overlayHtml += '<div class="cardOverlayButtonContainer"><paper-icon-button icon="play-arrow" class="cardOverlayPlayButton" onclick="return false;"></paper-icon-button></div>';
|
||||
}
|
||||
if (options.overlayMoreButton) {
|
||||
overlayHtml += '<div class="cardOverlayButtonContainer"><paper-icon-button icon="' + AppInfo.moreIcon + '" class="cardOverlayMoreButton" onclick="return false;"></paper-icon-button></div>';
|
||||
}
|
||||
|
||||
//// cardScalable
|
||||
|
||||
if (!options.overlayText && !footerOverlayed) {
|
||||
item.footerHtml = LibraryBrowser.getCardFooterText(item, options, showTitle, imgUrl, forceName, 'cardFooter outerCardFooter', progressHtml);
|
||||
} else {
|
||||
item.footerHtml = '';
|
||||
}
|
||||
|
||||
item.overlayHtml = overlayHtml;
|
||||
},
|
||||
|
||||
getPosterViewHtml: function (options) {
|
||||
|
||||
LibraryBrowser.setPosterViewData(options);
|
||||
|
@ -2370,6 +1958,10 @@
|
|||
}
|
||||
|
||||
var showTitle = options.showTitle == 'auto' ? true : options.showTitle;
|
||||
|
||||
if (item.Type == 'PhotoAlbum') {
|
||||
showTitle = true;
|
||||
}
|
||||
var coverImage = options.coverImage;
|
||||
|
||||
if (options.autoThumb && item.ImageTags && item.ImageTags.Primary && item.PrimaryImageAspectRatio && item.PrimaryImageAspectRatio >= 1.34) {
|
||||
|
|
|
@ -3,15 +3,15 @@
|
|||
var view = 'Poster';
|
||||
|
||||
var data = {};
|
||||
function getQuery(tab) {
|
||||
function getQuery() {
|
||||
|
||||
var key = getSavedQueryKey(tab);
|
||||
var key = getSavedQueryKey();
|
||||
var pageData = data[key];
|
||||
|
||||
if (!pageData) {
|
||||
pageData = data[key] = {
|
||||
query: {
|
||||
SortBy: "SortName",
|
||||
SortBy: "IsFolder,SortName",
|
||||
SortOrder: "Ascending",
|
||||
Fields: "PrimaryImageAspectRatio,SortName,SyncInfo",
|
||||
ImageTypeLimit: 1,
|
||||
|
@ -20,24 +20,26 @@
|
|||
Limit: LibraryBrowser.getDefaultPageSize()
|
||||
}
|
||||
};
|
||||
setQueryPerTab(tab, pageData.query);
|
||||
pageData.query.ParentId = LibraryMenu.getTopParentId();
|
||||
|
||||
pageData.query.Recursive = false;
|
||||
pageData.query.MediaTypes = null;
|
||||
pageData.query.ParentId = getParameterByName('parentId') || LibraryMenu.getTopParentId();
|
||||
|
||||
LibraryBrowser.loadSavedQueryValues(key, pageData.query);
|
||||
}
|
||||
return pageData.query;
|
||||
}
|
||||
|
||||
function getSavedQueryKey(tab) {
|
||||
function getSavedQueryKey() {
|
||||
|
||||
return LibraryBrowser.getSavedQueryKey('tab=' + tab);
|
||||
return LibraryBrowser.getSavedQueryKey('v1');
|
||||
}
|
||||
|
||||
function reloadItems(page, tabIndex) {
|
||||
function reloadItems(page) {
|
||||
|
||||
Dashboard.showLoadingMsg();
|
||||
|
||||
var query = getQuery(tabIndex);
|
||||
|
||||
var query = getQuery();
|
||||
ApiClient.getItems(Dashboard.getCurrentUserId(), query).then(function (result) {
|
||||
|
||||
// Scroll back up so they can see the results from the beginning
|
||||
|
@ -63,7 +65,7 @@
|
|||
overlayText: true,
|
||||
lazy: true,
|
||||
coverImage: true,
|
||||
showTitle: tabIndex == 0,
|
||||
showTitle: false,
|
||||
centerText: true
|
||||
});
|
||||
}
|
||||
|
@ -74,38 +76,20 @@
|
|||
|
||||
$('.btnNextPage', page).on('click', function () {
|
||||
query.StartIndex += query.Limit;
|
||||
reloadItems(page, tabIndex);
|
||||
reloadItems(page);
|
||||
});
|
||||
|
||||
$('.btnPreviousPage', page).on('click', function () {
|
||||
query.StartIndex -= query.Limit;
|
||||
reloadItems(page, tabIndex);
|
||||
reloadItems(page);
|
||||
});
|
||||
|
||||
LibraryBrowser.saveQueryValues(getSavedQueryKey(tabIndex), query);
|
||||
LibraryBrowser.saveQueryValues(getSavedQueryKey(), query);
|
||||
|
||||
Dashboard.hideLoadingMsg();
|
||||
});
|
||||
}
|
||||
|
||||
function setQueryPerTab(tab, query) {
|
||||
|
||||
if (tab == 1) {
|
||||
query.Recursive = true;
|
||||
query.MediaTypes = 'Photo';
|
||||
}
|
||||
else if (tab == 2) {
|
||||
query.Recursive = true;
|
||||
query.MediaTypes = 'Video';
|
||||
}
|
||||
else if (tab == 0) {
|
||||
query.Recursive = false;
|
||||
query.MediaTypes = null;
|
||||
}
|
||||
|
||||
query.ParentId = getParameterByName('parentId') || LibraryMenu.getTopParentId();
|
||||
}
|
||||
|
||||
function startSlideshow(page, itemQuery, startItemId) {
|
||||
|
||||
var userId = Dashboard.getCurrentUserId();
|
||||
|
@ -155,54 +139,18 @@
|
|||
var info = LibraryBrowser.getListItemInfo(this);
|
||||
|
||||
if (info.mediaType == 'Photo') {
|
||||
var query = getQuery(LibraryBrowser.selectedTab(page.querySelector('.pageTabsContainer')));
|
||||
var query = getQuery();
|
||||
|
||||
Photos.startSlideshow(page, query, info.id);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
function loadTab(page, index) {
|
||||
|
||||
switch (index) {
|
||||
|
||||
case 0:
|
||||
{
|
||||
reloadItems(page.querySelector('.albumTabContent'), 0);
|
||||
}
|
||||
break;
|
||||
case 1:
|
||||
{
|
||||
reloadItems(page.querySelector('.photoTabContent'), 1);
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
{
|
||||
reloadItems(page.querySelector('.videoTabContent'), 2);
|
||||
}
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
pageIdOn('pageinit', "photosPage", function () {
|
||||
|
||||
var page = this;
|
||||
|
||||
var tabs = page.querySelector('paper-tabs');
|
||||
|
||||
var baseUrl = 'photos.html';
|
||||
var topParentId = LibraryMenu.getTopParentId();
|
||||
if (topParentId) {
|
||||
baseUrl += '?topParentId=' + topParentId;
|
||||
}
|
||||
|
||||
LibraryBrowser.configurePaperLibraryTabs(page, tabs, page.querySelector('.pageTabsContainer'), baseUrl);
|
||||
|
||||
page.querySelector('.pageTabsContainer').addEventListener('tabchange', function (e) {
|
||||
loadTab(page, parseInt(e.detail.selectedTabIndex));
|
||||
});
|
||||
reloadItems(page, 0);
|
||||
|
||||
$(page).on('click', '.mediaItem', onListItemClick);
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue