diff --git a/src/components/cardbuilder/cardBuilder.js b/src/components/cardbuilder/cardBuilder.js
index 1faacff764..0344300d39 100644
--- a/src/components/cardbuilder/cardBuilder.js
+++ b/src/components/cardbuilder/cardBuilder.js
@@ -1,5 +1,5 @@
-define(['datetime', 'imageLoader', 'connectionManager', 'itemHelper', 'focusManager', 'indicators', 'globalize', 'layoutManager', 'apphost', 'dom', 'browser', 'playbackManager', 'itemShortcuts', 'css!./card', 'paper-icon-button-light', 'programStyles'],
- function (datetime, imageLoader, connectionManager, itemHelper, focusManager, indicators, globalize, layoutManager, appHost, dom, browser, playbackManager, itemShortcuts) {
+define(['datetime', 'imageLoader', 'connectionManager', 'itemHelper', 'focusManager', 'indicators', 'globalize', 'layoutManager', 'apphost', 'dom', 'browser', 'playbackManager', 'itemShortcuts', 'scripts/imagehelper', 'css!./card', 'paper-icon-button-light', 'programStyles'],
+ function (datetime, imageLoader, connectionManager, itemHelper, focusManager, indicators, globalize, layoutManager, appHost, dom, browser, playbackManager, itemShortcuts, imageHelper) {
'use strict';
var devicePixelRatio = window.devicePixelRatio || 1;
@@ -1546,28 +1546,8 @@ define(['datetime', 'imageLoader', 'connectionManager', 'itemHelper', 'focusMana
}
function getCardDefaultText(item, options) {
-
- var collectionType = item.CollectionType;
- if (collectionType === 'livetv') {
- return '';
- }
- if (collectionType === 'movies') {
- return '';
- }
- if (collectionType === 'tvshows') {
- return '';
- }
- if (collectionType === 'homevideos' || collectionType === 'photos') {
- return '';
- }
- if (collectionType === 'music') {
- return '';
- }
- if (collectionType === 'musicvideos') {
- return '';
- }
- if (collectionType === 'books') {
- return '';
+ if (item.CollectionType) {
+ return '' + imageHelper.getLibraryIcon(item.CollectionType) + ''
}
if (item.Type === 'MusicAlbum') {
return '';
diff --git a/src/components/homesections/homesections.js b/src/components/homesections/homesections.js
index 141a558cd6..cf1456a12a 100644
--- a/src/components/homesections/homesections.js
+++ b/src/components/homesections/homesections.js
@@ -1,4 +1,4 @@
-define(['connectionManager', 'cardBuilder', 'appSettings', 'dom', 'apphost', 'layoutManager', 'imageLoader', 'globalize', 'itemShortcuts', 'itemHelper', 'appRouter', 'paper-icon-button-light', 'emby-itemscontainer', 'emby-scroller', 'emby-button', 'css!./homesections'], function (connectionManager, cardBuilder, appSettings, dom, appHost, layoutManager, imageLoader, globalize, itemShortcuts, itemHelper, appRouter) {
+define(['connectionManager', 'cardBuilder', 'appSettings', 'dom', 'apphost', 'layoutManager', 'imageLoader', 'globalize', 'itemShortcuts', 'itemHelper', 'appRouter', 'scripts/imagehelper','paper-icon-button-light', 'emby-itemscontainer', 'emby-scroller', 'emby-button', 'css!./homesections'], function (connectionManager, cardBuilder, appSettings, dom, appHost, layoutManager, imageLoader, globalize, itemShortcuts, itemHelper, appRouter, imageHelper) {
'use strict';
function getDefaultSection(index) {
@@ -156,49 +156,10 @@ define(['connectionManager', 'cardBuilder', 'appSettings', 'dom', 'apphost', 'la
html += '
';
- // "My Library" backgrounds
+ // library card background images
for (var i = 0, length = items.length; i < length; i++) {
var item = items[i];
- var icon;
- switch (item.CollectionType) {
- case "movies":
- icon = "video_library";
- break;
- case "music":
- icon = "library_music";
- break;
- case "photos":
- icon = "photo_library";
- break;
- case "livetv":
- icon = "live_tv";
- break;
- case "tvshows":
- icon = "tv";
- break;
- case "trailers":
- icon = "local_movies";
- break;
- case "homevideos":
- icon = "photo_library";
- break;
- case "musicvideos":
- icon = "music_video";
- break;
- case "books":
- icon = "library_books";
- break;
- case "channels":
- icon = "videocam";
- break;
- case "playlists":
- icon = "view_list";
- break;
- default:
- icon = "folder";
- break;
- }
-
+ var icon = imageHelper.getLibraryIcon(item.CollectionType);
html += '
' + icon + '' + item.Name + '';
}
diff --git a/src/controllers/medialibrarypage.js b/src/controllers/medialibrarypage.js
index 488ff94f4c..405d38bfa7 100644
--- a/src/controllers/medialibrarypage.js
+++ b/src/controllers/medialibrarypage.js
@@ -1,4 +1,4 @@
-define(["jQuery", "apphost", "scripts/taskbutton", "loading", "libraryMenu", "globalize", "dom", "indicators", "cardStyle", "emby-itemrefreshindicator"], function($, appHost, taskButton, loading, libraryMenu, globalize, dom, indicators) {
+define(["jQuery", "apphost", "scripts/taskbutton", "loading", "libraryMenu", "globalize", "dom", "indicators", "scripts/imagehelper", "cardStyle", "emby-itemrefreshindicator"], function($, appHost, taskButton, loading, libraryMenu, globalize, dom, indicators, imageHelper) {
"use strict";
function addVirtualFolder(page) {
@@ -217,35 +217,6 @@ define(["jQuery", "apphost", "scripts/taskbutton", "loading", "libraryMenu", "gl
}]
}
- function getIcon(type) {
- switch (type) {
- case "movies":
- return "video_library";
- case "music":
- return "library_music";
- case "photos":
- return "photo_library";
- case "livetv":
- return "live_tv";
- case "tvshows":
- return "tv";
- case "trailers":
- return "local_movies";
- case "homevideos":
- return "photo_library";
- case "musicvideos":
- return "video_library";
- case "books":
- return "library_books";
- case "channels":
- return "videocam";
- case "playlists":
- return "view_list";
- default:
- return "folder";
- }
- }
-
function getVirtualFolderHtml(page, virtualFolder, index) {
var html = "";
var style = "";
@@ -267,7 +238,7 @@ define(["jQuery", "apphost", "scripts/taskbutton", "loading", "libraryMenu", "gl
hasCardImageContainer = true;
} else if (!virtualFolder.showNameWithIcon) {
html += '
';
- html += '
' + (virtualFolder.icon || getIcon(virtualFolder.CollectionType)) + "";
+ html += '
' + (virtualFolder.icon || imageHelper.getLibraryIcon(virtualFolder.CollectionType)) + "";
hasCardImageContainer = true;
}
if (hasCardImageContainer) {
@@ -278,7 +249,7 @@ define(["jQuery", "apphost", "scripts/taskbutton", "loading", "libraryMenu", "gl
}
if (!imgUrl && virtualFolder.showNameWithIcon) {
html += '
';
- html += '' + (virtualFolder.icon || getIcon(virtualFolder.CollectionType)) + "";
+ html += '' + (virtualFolder.icon || imageHelper.getLibraryIcon(virtualFolder.CollectionType)) + "";
virtualFolder.showNameWithIcon && (html += '
', html += virtualFolder.Name, html += "
");
html += "";
}
diff --git a/src/scripts/imagehelper.js b/src/scripts/imagehelper.js
index 437a8b7aab..486a030a54 100644
--- a/src/scripts/imagehelper.js
+++ b/src/scripts/imagehelper.js
@@ -28,7 +28,37 @@ define(["browser"], function (browser) {
}
}
+ function getLibraryIcon(library) {
+ switch (library) {
+ case "movies":
+ return "video_library";
+ case "music":
+ return "library_music";
+ case "photos":
+ return "photo_library";
+ case "livetv":
+ return "live_tv";
+ case "tvshows":
+ return "tv";
+ case "trailers":
+ return "local_movies";
+ case "homevideos":
+ return "photo_library";
+ case "musicvideos":
+ return "music_video";
+ case "books":
+ return "library_books";
+ case "channels":
+ return "videocam";
+ case "playlists":
+ return "view_list";
+ default:
+ return "folder";
+ }
+ }
+
return {
getDeviceIcon: getDeviceIcon,
+ getLibraryIcon: getLibraryIcon
};
});
\ No newline at end of file
diff --git a/src/scripts/librarymenu.js b/src/scripts/librarymenu.js
index 59275c218c..89f672ca02 100644
--- a/src/scripts/librarymenu.js
+++ b/src/scripts/librarymenu.js
@@ -1,4 +1,4 @@
-define(["dom", "layoutManager", "inputManager", "connectionManager", "events", "viewManager", "libraryBrowser", "appRouter", "apphost", "playbackManager", "browser", "globalize", "paper-icon-button-light", "material-icons", "scrollStyles", "flexStyles"], function (dom, layoutManager, inputManager, connectionManager, events, viewManager, libraryBrowser, appRouter, appHost, playbackManager, browser, globalize) {
+define(["dom", "layoutManager", "inputManager", "connectionManager", "events", "viewManager", "libraryBrowser", "appRouter", "apphost", "playbackManager", "browser", "globalize", "scripts/imagehelper", "paper-icon-button-light", "material-icons", "scrollStyles", "flexStyles"], function (dom, layoutManager, inputManager, connectionManager, events, viewManager, libraryBrowser, appRouter, appHost, playbackManager, browser, globalize, imageHelper) {
"use strict";
function getCurrentApiClient() {
@@ -532,48 +532,11 @@ define(["dom", "layoutManager", "inputManager", "connectionManager", "events", "
html += globalize.translate("HeaderMedia");
html += "";
html += items.map(function (i) {
- var icon = "folder";
+ var icon = i.icon || imageHelper.getLibraryIcon(i.CollectionType);
var itemId = i.Id;
-
- if ("channels" === i.CollectionType) {
- itemId = "channels";
- }
- else if ("livetv" === i.CollectionType) {
- itemId = "livetv";
- }
- else if ("music" === i.CollectionType) {
- icon = "library_music";
- }
- else if ("musicvideos" === i.CollectionType) {
- icon = "music_video";
- }
- else if ("books" === i.CollectionType) {
- icon = "library_books";
- }
- else if ("playlists" === i.CollectionType) {
- icon = "view_list";
- }
- else if ("movies" === i.CollectionType) {
- icon = "video_library";
- }
- else if ("homevideos" === i.CollectionType || "photos" === i.CollectionType) {
- icon = "photo_library";
- }
- else if ("channels" === i.CollectionType || "Channel" === i.Type) {
- icon = "videocam";
- }
- else if ("tvshows" === i.CollectionType) {
- icon = "tv";
- }
- else if ("livetv" === i.CollectionType) {
- icon = "live_tv";
- }
- icon = i.icon || icon;
-
if (i.onclick) {
i.onclick;
}
-
return '";
}).join("");
libraryMenuOptions.innerHTML = html;