diff --git a/src/assets/css/librarybrowser.css b/src/assets/css/librarybrowser.css index 8010d05fa9..cbbd2f198e 100644 --- a/src/assets/css/librarybrowser.css +++ b/src/assets/css/librarybrowser.css @@ -609,6 +609,25 @@ -webkit-box-shadow: 0 0.0725em 0.29em 0 rgba(0, 0, 0, 0.37); } +div.itemDetailGalleryLink.defaultCardBackground { + text-align: center; +} + +.itemDetailGalleryLink.defaultCardBackground { + height: 23vw; /* Dirty hack to get it to look somewhat square. Less than ideal. */ +} + +.btnSyncComplete i { + -webkit-border-radius: 100em; + border-radius: 100em; +} + +.itemDetailGalleryLink.defaultCardBackground > i { + font-size: 15vw; + margin-top: 50%; + transform: translateY(-50%); +} + @media all and (max-width: 62.5em) { .detailPageWrapperContainer { position: relative; @@ -629,11 +648,6 @@ background: #673ab7 !important; } -.btnSyncComplete i { - -webkit-border-radius: 100em; - border-radius: 100em; -} - .emby-button.detailFloatingButton { position: absolute; background-color: rgba(0, 0, 0, 0.5) !important; diff --git a/src/components/cardbuilder/cardBuilder.js b/src/components/cardbuilder/cardBuilder.js index ac61575b14..23ac93676e 100644 --- a/src/components/cardbuilder/cardBuilder.js +++ b/src/components/cardbuilder/cardBuilder.js @@ -1397,7 +1397,7 @@ define(['datetime', 'imageLoader', 'connectionManager', 'itemHelper', 'focusMana //} if (!imgUrl) { - cardImageContainerOpen += getCardDefaultText(item, options); + cardImageContainerOpen += getDefaultText(item, options); } var tagName = (layoutManager.tv) && !overlayButtons ? 'button' : 'div'; @@ -1485,17 +1485,24 @@ define(['datetime', 'imageLoader', 'connectionManager', 'itemHelper', 'focusMana return html; } - function getCardDefaultText(item, options) { + function getDefaultText(item, options) { if (item.CollectionType) { return '' + imageHelper.getLibraryIcon(item.CollectionType) + '' } - if (item.Type === 'MusicAlbum') { - return 'album'; + + switch (item.Type) { + case 'MusicAlbum': + return 'album'; + case 'MusicArtist': + case 'Person': + return 'person'; + case 'Movie': + return 'movie' + case 'Series': + return 'tv' } - if (item.Type === 'MusicArtist' || item.Type === 'Person') { - return 'person'; - } - if (options.defaultCardImageIcon) { + + if (options && options.defaultCardImageIcon) { return '' + options.defaultCardImageIcon + ''; } @@ -1702,6 +1709,8 @@ define(['datetime', 'imageLoader', 'connectionManager', 'itemHelper', 'focusMana return { getCardsHtml: getCardsHtml, + getDefaultBackgroundClass: getDefaultBackgroundClass, + getDefaultText: getDefaultText, buildCards: buildCards, onUserDataChanged: onUserDataChanged, onTimerCreated: onTimerCreated, diff --git a/src/controllers/itemdetailpage.js b/src/controllers/itemdetailpage.js index cb877243ec..432ad0ff2d 100644 --- a/src/controllers/itemdetailpage.js +++ b/src/controllers/itemdetailpage.js @@ -798,22 +798,26 @@ define(["loading", "appRouter", "layoutManager", "connectionManager", "cardBuild }); } - if (editable) { + if (editable && url === undefined) { + html += ""; + } else if (!editable && url === undefined) { + html += "" } var progressHtml = item.IsFolder || !item.UserData ? "" : indicators.getProgressBarHtml(item); @@ -826,6 +830,14 @@ define(["loading", "appRouter", "layoutManager", "connectionManager", "cardBuild html += ""; elem.innerHTML = html; + if (detectRatio && item.PrimaryImageAspectRatio) { + if (item.PrimaryImageAspectRatio >= 1.48) { + shape = "thumb"; + } else if (item.PrimaryImageAspectRatio >= 0.85 && item.PrimaryImageAspectRatio <= 1.34) { + shape = "square"; + } + } + if ("thumb" == shape) { elem.classList.add("thumbDetailImageContainer"); elem.classList.remove("portraitDetailImageContainer"); diff --git a/yarn.lock b/yarn.lock index 8f3ba7b2c3..7187bd1774 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5639,6 +5639,11 @@ serialize-javascript@^2.1.2: resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-2.1.2.tgz#ecec53b0e0317bdc95ef76ab7074b7384785fa61" integrity sha512-rs9OggEUF0V4jUSecXazOYsLfu7OGK2qIn3c7IPBiffz32XniEp/TX9Xmc9LQfK2nQ2QKHvZ2oygKUGU0lG4jQ== +serialize-javascript@^2.1.2: + version "2.1.2" + resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-2.1.2.tgz#ecec53b0e0317bdc95ef76ab7074b7384785fa61" + integrity sha512-rs9OggEUF0V4jUSecXazOYsLfu7OGK2qIn3c7IPBiffz32XniEp/TX9Xmc9LQfK2nQ2QKHvZ2oygKUGU0lG4jQ== + serve-index@^1.9.1: version "1.9.1" resolved "https://registry.yarnpkg.com/serve-index/-/serve-index-1.9.1.tgz#d3768d69b1e7d82e5ce050fff5b453bea12a9239"