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

use shared itemHelper

This commit is contained in:
Luke Pulverenti 2016-05-11 13:46:44 -04:00
parent 062e381521
commit 31cb9f8d01
9 changed files with 86 additions and 67 deletions

View file

@ -16,12 +16,12 @@
},
"devDependencies": {},
"ignore": [],
"version": "1.2.72",
"_release": "1.2.72",
"version": "1.2.73",
"_release": "1.2.73",
"_resolution": {
"type": "version",
"tag": "1.2.72",
"commit": "bd5ee371f1d5340371aedff26b6ad8b7912c66f3"
"tag": "1.2.73",
"commit": "f6722bdc762cd5cc372010f6c812dcd7bf8d89c5"
},
"_source": "https://github.com/MediaBrowser/emby-webcomponents.git",
"_target": "^1.2.0",

View file

@ -0,0 +1,54 @@
define([], function () {
function getDisplayName(item, options) {
if (!item) {
throw new Error("null item passed into getDisplayName");
}
options = options || {};
var name = item.EpisodeTitle || item.Name || '';
if (item.Type == "TvChannel") {
if (item.Number) {
return item.Number + ' ' + name;
}
return name;
}
if (/*options.isInlineSpecial &&*/ item.Type == "Episode" && item.ParentIndexNumber == 0) {
name = Globalize.translate('core#ValueSpecialEpisodeName', name);
} else if ((item.Type == "Episode" || item.Type == 'Program') && item.IndexNumber != null && item.ParentIndexNumber != null) {
var displayIndexNumber = item.IndexNumber;
var number = "E" + displayIndexNumber;
if (options.includeParentInfo !== false) {
number = "S" + item.ParentIndexNumber + ", " + number;
}
if (item.IndexNumberEnd) {
displayIndexNumber = item.IndexNumberEnd;
number += "-" + displayIndexNumber;
}
name = number + " - " + name;
}
if (item.EpisodeTitle) {
name = item.Name + ' ' + name;
}
return name;
}
return {
getDisplayName: getDisplayName
};
});

View file

@ -167,6 +167,11 @@ define(['loading', 'viewManager', 'skinManager', 'pluginManager', 'backdrop', 'b
var currentViewLoadRequest;
function sendRouteToViewManager(ctx, next, route, controllerFactory) {
if (isDummyBackToHome && route.type == 'home') {
isDummyBackToHome = false;
return;
}
cancelCurrentLoadRequest();
var isBackNav = ctx.isBack;
@ -203,7 +208,6 @@ define(['loading', 'viewManager', 'skinManager', 'pluginManager', 'backdrop', 'b
return;
}
}
viewManager.tryRestoreView(currentRequest).then(function () {
// done
@ -331,21 +335,21 @@ define(['loading', 'viewManager', 'skinManager', 'pluginManager', 'backdrop', 'b
}
var isHandlingBackToDefault;
var isDummyBackToHome;
function handleBackToDefault() {
isDummyBackToHome = true;
skinManager.loadUserSkin();
if (isHandlingBackToDefault) {
return;
}
isHandlingBackToDefault = true;
// This must result in a call to either
// skinManager.loadUserSkin();
// Logout
// Or exit app
skinManager.getCurrentSkin().showBackMenu().then(function () {
isHandlingBackToDefault = false;

View file

@ -30,14 +30,14 @@
"web-component-tester": "polymer/web-component-tester#^3.4.0"
},
"ignore": [],
"homepage": "https://github.com/PolymerElements/iron-a11y-announcer",
"homepage": "https://github.com/polymerelements/iron-a11y-announcer",
"_release": "1.0.4",
"_resolution": {
"type": "version",
"tag": "v1.0.4",
"commit": "5ce3eb8c4282bb53cd72e348858dc6be6b4c50b9"
},
"_source": "git://github.com/PolymerElements/iron-a11y-announcer.git",
"_source": "git://github.com/polymerelements/iron-a11y-announcer.git",
"_target": "^1.0.0",
"_originalSource": "PolymerElements/iron-a11y-announcer"
"_originalSource": "polymerelements/iron-a11y-announcer"
}

View file

@ -26,14 +26,14 @@
"webcomponentsjs": "webcomponents/webcomponentsjs#^0.7.0"
},
"main": "iron-meta.html",
"homepage": "https://github.com/polymerelements/iron-meta",
"homepage": "https://github.com/PolymerElements/iron-meta",
"_release": "1.1.1",
"_resolution": {
"type": "version",
"tag": "v1.1.1",
"commit": "e171ee234b482219c9514e6f9551df48ef48bd9f"
},
"_source": "git://github.com/polymerelements/iron-meta.git",
"_source": "git://github.com/PolymerElements/iron-meta.git",
"_target": "^1.0.0",
"_originalSource": "polymerelements/iron-meta"
"_originalSource": "PolymerElements/iron-meta"
}

View file

@ -34,6 +34,6 @@
"commit": "11c987b2eb3c73b388a79fc8aaea8ca01624f514"
},
"_source": "git://github.com/Polymer/polymer.git",
"_target": "^1.0.0",
"_target": "^1.1.0",
"_originalSource": "Polymer/polymer"
}

View file

@ -1,4 +1,4 @@
define(['playlistManager', 'appSettings', 'appStorage', 'apphost', 'datetime', 'jQuery', 'scrollStyles'], function (playlistManager, appSettings, appStorage, appHost, datetime, $) {
define(['playlistManager', 'appSettings', 'appStorage', 'apphost', 'datetime', 'jQuery', 'itemHelper', 'scrollStyles'], function (playlistManager, appSettings, appStorage, appHost, datetime, $, itemHelper) {
function parentWithClass(elem, className) {
@ -695,7 +695,7 @@
return commands;
},
canIdentify: function(user, itemType) {
canIdentify: function (user, itemType) {
if (itemType == "Movie" ||
itemType == "Trailer" ||
@ -1332,7 +1332,7 @@
textlines.push(item.AlbumArtist || ' ');
}
var displayName = LibraryBrowser.getPosterViewDisplayName(item);
var displayName = itemHelper.getDisplayName(item);
if (options.showIndexNumber && item.IndexNumber != null) {
displayName = item.IndexNumber + ". " + displayName;
@ -1359,7 +1359,7 @@
else if (item.Type == 'TvChannel') {
if (item.CurrentProgram) {
textlines.push(LibraryBrowser.getPosterViewDisplayName(item.CurrentProgram));
textlines.push(itemHelper.getDisplayName(item.CurrentProgram));
}
}
else {
@ -2281,7 +2281,7 @@
html += "</div>";
}
var name = options.showTitle == 'auto' && !item.IsFolder && item.MediaType == 'Photo' ? '' : LibraryBrowser.getPosterViewDisplayName(item, options.displayAsSpecial);
var name = options.showTitle == 'auto' && !item.IsFolder && item.MediaType == 'Photo' ? '' : itemHelper.getDisplayName(item);
if (!imgUrl && !showTitle) {
html += "<div class='cardDefaultText'>";
@ -2384,7 +2384,7 @@
if (item.Type == 'TvChannel') {
if (item.CurrentProgram) {
lines.push(LibraryBrowser.getPosterViewDisplayName(item.CurrentProgram));
lines.push(itemHelper.getDisplayName(item.CurrentProgram));
} else {
lines.push('');
}
@ -2541,48 +2541,6 @@
return day;
},
getPosterViewDisplayName: function (item, displayAsSpecial, includeParentInfo) {
if (!item) {
throw new Error("null item passed into getPosterViewDisplayName");
}
var name = item.EpisodeTitle || item.Name || '';
if (item.Type == "TvChannel") {
if (item.Number) {
return item.Number + ' ' + name;
}
return name;
}
if (displayAsSpecial && item.Type == "Episode" && item.ParentIndexNumber == 0) {
name = Globalize.translate('ValueSpecialEpisodeName', name);
} else if (item.Type == "Episode" && item.IndexNumber != null && item.ParentIndexNumber != null) {
var displayIndexNumber = item.IndexNumber;
var number = "E" + displayIndexNumber;
if (includeParentInfo !== false) {
number = "S" + item.ParentIndexNumber + ", " + number;
}
if (item.IndexNumberEnd) {
displayIndexNumber = item.IndexNumberEnd;
number += "-" + displayIndexNumber;
}
name = number + " - " + name;
}
return name;
},
getOfflineIndicatorHtml: function (item) {
if (item.LocationType == "Offline") {
@ -2735,7 +2693,9 @@
renderName: function (item, nameElem, linkToElement, context) {
var name = LibraryBrowser.getPosterViewDisplayName(item, false, false);
var name = itemHelper.getDisplayName(item, {
includeParentInfo: false
});
Dashboard.setPageTitle(name);

View file

@ -1,4 +1,4 @@
define(['appSettings', 'appStorage', 'libraryBrowser', 'apphost', 'jQuery'], function (appSettings, appStorage, LibraryBrowser, appHost, $) {
define(['appSettings', 'appStorage', 'libraryBrowser', 'apphost', 'jQuery', 'itemHelper'], function (appSettings, appStorage, LibraryBrowser, appHost, $, itemHelper) {
var showOverlayTimeout;
@ -81,7 +81,7 @@
var isSquare = className.indexOf('square') != -1;
var parentName = isSmallItem || isMiniItem || isPortrait ? null : item.SeriesName;
var name = LibraryBrowser.getPosterViewDisplayName(item, true);
var name = itemHelper.getDisplayName(item);
html += '<div style="margin-bottom:1em;">';
var logoHeight = isSmallItem || isMiniItem ? 20 : 26;

View file

@ -1790,6 +1790,7 @@ var AppInfo = {};
focusManager: embyWebComponentsBowerPath + "/focusmanager",
datetime: embyWebComponentsBowerPath + "/datetime",
globalize: embyWebComponentsBowerPath + "/globalize",
itemHelper: embyWebComponentsBowerPath + '/itemhelper',
itemShortcuts: embyWebComponentsBowerPath + "/shortcuts",
imageLoader: embyWebComponentsBowerPath + "/images/imagehelper"
};