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

add user profile settings about virtual episodes

This commit is contained in:
Luke Pulverenti 2013-10-25 11:52:10 -04:00
parent cd21add046
commit 87a82eae9e
9 changed files with 244 additions and 78 deletions

View file

@ -20,9 +20,20 @@
LibraryBrowser.renderParentName(item, $('.parentName', page));
var context = getContext(item);
setInitialCollapsibleState(page, item, context);
renderDetails(page, item, context);
LibraryBrowser.renderDetailPageBackdrop(page, item);
Dashboard.getCurrentUser().done(function (user) {
setInitialCollapsibleState(page, item, context, user);
renderDetails(page, item, context);
LibraryBrowser.renderDetailPageBackdrop(page, item);
if (user.Configuration.IsAdministrator) {
$('#editButtonContainer', page).show();
} else {
$('#editButtonContainer', page).hide();
}
});
if (item.LocationType == "Offline") {
@ -33,7 +44,7 @@
}
var isMissingEpisode = false;
if (item.LocationType == "Virtual" && item.Type == "Episode") {
try {
if (item.PremiereDate && (new Date().getTime() >= parseISO8601Date(item.PremiereDate, { toLocal: true }).getTime())) {
@ -43,7 +54,7 @@
}
}
if (isMissingEpisode) {
$('#missingIndicator', page).show();
@ -58,16 +69,6 @@
$('#playButtonContainer', page).hide();
}
Dashboard.getCurrentUser().done(function (user) {
if (user.Configuration.IsAdministrator) {
$('#editButtonContainer', page).show();
} else {
$('#editButtonContainer', page).hide();
}
});
$(".autoNumeric").autoNumeric('init');
setPeopleHeader(page, item);
@ -150,11 +151,11 @@
}
}
function setInitialCollapsibleState(page, item, context) {
function setInitialCollapsibleState(page, item, context, user) {
if (item.ChildCount) {
$('#childrenCollapsible', page).removeClass('hide');
renderChildren(page, item);
renderChildren(page, item, user);
}
else {
$('#childrenCollapsible', page).addClass('hide');
@ -235,7 +236,7 @@
$('.itemCommunityRating', page).hide();
}
if (item.Type != "Episode" && item.Type != "Movie") {
if (item.Type != "Episode" && item.Type != "Movie" && item.Type != "Series") {
var premiereDateElem = $('#itemPremiereDate', page).show();
LibraryBrowser.renderPremiereDate(premiereDateElem, item);
} else {
@ -445,14 +446,14 @@
}).join(',');
}
if (item.Studios.length) {
html += ' on <a class="textlink" href="itembynamedetails.html?context=' + context + '&studio=' + ApiClient.encodeName(item.Studios[0].Name) + '">' + item.Studios[0].Name + '</a>';
}
if (item.AirTime) {
html += ' at ' + item.AirTime;
}
if (item.Studios.length) {
html += ' on <a class="textlink" href="itembynamedetails.html?context=' + context + '&studio=' + ApiClient.encodeName(item.Studios[0].Name) + '">' + item.Studios[0].Name + '</a>';
}
if (html) {
html = (item.Status == 'Ended' ? 'Aired ' : 'Airs ') + html;
@ -481,17 +482,21 @@
}
}
function renderChildren(page, item) {
function renderChildren(page, item, user) {
var sortBy = item.Type == "BoxSet" ? "ProductionYear,SortName" : "SortName";
ApiClient.getItems(Dashboard.getCurrentUserId(), {
var query = {
ParentId: item.Id,
SortBy: sortBy,
Fields: "PrimaryImageAspectRatio,ItemCounts,DateCreated,AudioInfo"
};
}).done(function (result) {
if (item.Type == "Series" || item.Type == "Season" && !user.Configuration.DisplayVirtualEpisodes) {
query.ExcludeLocationTypes = "virtual";
}
ApiClient.getItems(Dashboard.getCurrentUserId(), query).done(function (result) {
if (item.Type == "MusicAlbum") {