1
0
Fork 0
mirror of https://github.com/jellyfin/jellyfin-web synced 2025-03-30 19:56:21 +00:00

created a separate gallery page

This commit is contained in:
Luke Pulverenti 2013-05-31 21:48:41 -04:00
parent 92a6a23c56
commit 9f20ecb9ba
11 changed files with 143 additions and 84 deletions

View file

@ -119,12 +119,6 @@
else {
$('#childrenCollapsible', page).addClass('hide');
}
if (LibraryBrowser.shouldDisplayGallery(item)) {
$('#galleryCollapsible', page).show();
renderGallery(page, item);
} else {
$('#galleryCollapsible', page).hide();
}
if (item.MediaStreams && item.MediaStreams.length) {
renderMediaInfo(page, item);
@ -607,13 +601,6 @@
$('#scenesContent', page).html(html).trigger('create');
}
function renderGallery(page, item) {
var html = LibraryBrowser.getGalleryHtml(item);
$('#galleryContent', page).html(html).trigger('create');
}
function renderMediaInfo(page, item) {
var html = '';

View file

@ -199,7 +199,7 @@ function humane_elapsed(firstDateStr, secondDateStr) {
function getParameterByName(name, url) {
name = name.replace(/[\[]/, "\\\[").replace(/[\]]/, "\\\]");
var regexS = "[\\?&]" + name + "=([^&#]*)";
var regex = new RegExp(regexS);
var regex = new RegExp(regexS, "i");
var results = regex.exec(url || window.location.search);
if (results == null)
return "";

View file

@ -3,46 +3,43 @@
var currentItem;
var shape;
function reload(page) {
Dashboard.showLoadingMsg();
var getItemPromise;
function getPromise() {
var name = getParameterByName('person');
if (name) {
getItemPromise = ApiClient.getPerson(name, Dashboard.getCurrentUserId());
} else {
name = getParameterByName('studio');
if (name) {
getItemPromise = ApiClient.getStudio(name, Dashboard.getCurrentUserId());
} else {
name = getParameterByName('genre');
if (name) {
getItemPromise = ApiClient.getGenre(name, Dashboard.getCurrentUserId());
}
else {
name = getParameterByName('artist');
if (name) {
getItemPromise = ApiClient.getArtist(name, Dashboard.getCurrentUserId());
}
else {
throw new Error('Invalid request');
}
}
}
return ApiClient.getPerson(name, Dashboard.getCurrentUserId());
}
getItemPromise.done(function (item) {
name = getParameterByName('studio');
if (name) {
return ApiClient.getStudio(name, Dashboard.getCurrentUserId());
}
name = getParameterByName('genre');
if (name) {
return ApiClient.getGenre(name, Dashboard.getCurrentUserId());
}
name = getParameterByName('artist');
if (name) {
return ApiClient.getArtist(name, Dashboard.getCurrentUserId());
}
else {
throw new Error('Invalid request');
}
}
function reload(page) {
Dashboard.showLoadingMsg();
getPromise().done(function (item) {
currentItem = item;
@ -204,13 +201,6 @@
});
}
function renderGallery(page, item) {
var html = LibraryBrowser.getGalleryHtml(item);
$('#galleryContent', page).html(html).trigger('create');
}
function bindRadioEvents(page) {
$("#radioMusicVideos", page).on("click", function () {
@ -311,13 +301,6 @@
renderUserDataIcons(page, item);
LibraryBrowser.renderLinks($('#itemLinks', page), item);
if (LibraryBrowser.shouldDisplayGallery(item)) {
$('#galleryCollapsible', page).show();
renderGallery(page, item);
} else {
$('#galleryCollapsible', page).hide();
}
if (item.Type == "Person" && item.PremiereDate) {
try {

View file

@ -0,0 +1,66 @@
(function ($, document) {
var currentItem;
function getPromise() {
var name = getParameterByName('person');
if (name) {
return ApiClient.getPerson(name, Dashboard.getCurrentUserId());
}
name = getParameterByName('studio');
if (name) {
return ApiClient.getStudio(name, Dashboard.getCurrentUserId());
}
name = getParameterByName('genre');
if (name) {
return ApiClient.getGenre(name, Dashboard.getCurrentUserId());
}
name = getParameterByName('artist');
if (name) {
return ApiClient.getArtist(name, Dashboard.getCurrentUserId());
}
return ApiClient.getItem(Dashboard.getCurrentUserId(), getParameterByName('id'));
}
function reload(page) {
Dashboard.showLoadingMsg();
getPromise().done(function (item) {
currentItem = item;
LibraryBrowser.renderName(item, $('.itemName', page), true);
LibraryBrowser.renderParentName(item, $('.parentName', page));
$('#galleryContent', page).html(LibraryBrowser.getGalleryHtml(currentItem)).trigger('create');
Dashboard.hideLoadingMsg();
});
}
$(document).on('pageshow', "#itemGalleryPage", function () {
var page = this;
reload(page);
}).on('pagehide', "#itemGalleryPage", function () {
var page = this;
currentItem = null;
});
})(jQuery, document);

View file

@ -1279,11 +1279,18 @@
url = "css/images/items/detail/video.png";
}
if (url) {
var identifierName = "id";
var identifierValue = item.Id;
html += "<img class='itemDetailImage' src='" + url + "' />";
if (item.Type == "Person" || item.Type == "Genre" || item.Type == "Studio" || item.Type == "Artist") {
identifierName = item.Type;
identifierValue = ApiClient.encodeName(item.Name);
}
var href = "itemgallery.html?" + identifierName + "=" + identifierValue;
html += "<a href='" + href + "'><img class='itemDetailImage' src='" + url + "' /></a>";
return html;
},
@ -1512,6 +1519,11 @@
var imageTags = item.ImageTags || {};
if (imageTags.Primary) {
return true;
}
if (imageTags.Banner) {
return true;
@ -1567,6 +1579,11 @@
var imageTags = item.ImageTags || {};
if (imageTags.Primary) {
html += LibraryBrowser.createGalleryImage(item, "Primary", imageTags.Primary);
}
if (imageTags.Banner) {
html += LibraryBrowser.createGalleryImage(item, "Banner", imageTags.Banner);