Skip to content

Commit

Permalink
Merge pull request #545 from ferferga/artworks2
Browse files Browse the repository at this point in the history
Improved appearance of images and artworks - Part 3

(cherry picked from commit 79cd6a7)
Signed-off-by: Joshua Boniface <[email protected]>
  • Loading branch information
dkanada authored and joshuaboniface committed Nov 24, 2019
1 parent e1308f0 commit 54b05ab
Show file tree
Hide file tree
Showing 4 changed files with 61 additions and 46 deletions.
2 changes: 1 addition & 1 deletion src/components/cardbuilder/card.css
Original file line number Diff line number Diff line change
Expand Up @@ -156,7 +156,7 @@ button {
}

.cardImageContainer {
background-size: contain;
background-size: cover;
background-repeat: no-repeat;
background-position: center center;
display: -webkit-flex;
Expand Down
10 changes: 0 additions & 10 deletions src/controllers/dashboardpage.js
Original file line number Diff line number Diff line change
Expand Up @@ -507,7 +507,6 @@ define(["datetime", "events", "itemHelper", "serverNotifications", "dom", "globa
if (session.UserId && session.UserPrimaryImageTag) {
return ApiClient.getUserImageUrl(session.UserId, {
tag: session.UserPrimaryImageTag,
height: 24,
type: "Primary"
});
}
Expand Down Expand Up @@ -602,23 +601,20 @@ define(["datetime", "events", "itemHelper", "serverNotifications", "dom", "globa
if (item && item.BackdropImageTags && item.BackdropImageTags.length) {
return ApiClient.getScaledImageUrl(item.Id, {
type: "Backdrop",
width: 275,
tag: item.BackdropImageTags[0]
});
}

if (item && item.ParentBackdropImageTags && item.ParentBackdropImageTags.length) {
return ApiClient.getScaledImageUrl(item.ParentBackdropItemId, {
type: "Backdrop",
width: 275,
tag: item.ParentBackdropImageTags[0]
});
}

if (item && item.BackdropImageTag) {
return ApiClient.getScaledImageUrl(item.BackdropItemId, {
type: "Backdrop",
width: 275,
tag: item.BackdropImageTag
});
}
Expand All @@ -628,47 +624,41 @@ define(["datetime", "events", "itemHelper", "serverNotifications", "dom", "globa
if (item && imageTags.Thumb) {
return ApiClient.getScaledImageUrl(item.Id, {
type: "Thumb",
width: 275,
tag: imageTags.Thumb
});
}

if (item && item.ParentThumbImageTag) {
return ApiClient.getScaledImageUrl(item.ParentThumbItemId, {
type: "Thumb",
width: 275,
tag: item.ParentThumbImageTag
});
}

if (item && item.ThumbImageTag) {
return ApiClient.getScaledImageUrl(item.ThumbItemId, {
type: "Thumb",
width: 275,
tag: item.ThumbImageTag
});
}

if (item && imageTags.Primary) {
return ApiClient.getScaledImageUrl(item.Id, {
type: "Primary",
width: 275,
tag: imageTags.Primary
});
}

if (item && item.PrimaryImageTag) {
return ApiClient.getScaledImageUrl(item.PrimaryImageItemId, {
type: "Primary",
width: 275,
tag: item.PrimaryImageTag
});
}

if (item && item.AlbumPrimaryImageTag) {
return ApiClient.getScaledImageUrl(item.AlbumId, {
type: "Primary",
width: 275,
tag: item.AlbumPrimaryImageTag
});
}
Expand Down
90 changes: 60 additions & 30 deletions src/controllers/itemdetailpage.js
Original file line number Diff line number Diff line change
Expand Up @@ -256,36 +256,66 @@ define(["loading", "appRouter", "layoutManager", "connectionManager", "cardBuild
}

function renderDetailPageBackdrop(page, item, apiClient) {
var imgUrl, screenWidth = screen.availWidth,
hasbackdrop = !1,
itemBackdropElement = page.querySelector("#itemBackdrop"),
usePrimaryImage = ("Video" === item.MediaType && "Movie" !== item.Type && "Trailer" !== item.Type) || (item.MediaType && "Video" !== item.MediaType) || ("MusicAlbum" === item.Type) || ("MusicArtist" === item.Type);
return "Program" === item.Type && item.ImageTags && item.ImageTags.Thumb ? (imgUrl = apiClient.getScaledImageUrl(item.Id, {
type: "Thumb",
index: 0,
maxWidth: screenWidth,
tag: item.ImageTags.Thumb
}), itemBackdropElement.classList.remove("noBackdrop"), imageLoader.lazyImage(itemBackdropElement, imgUrl, !1), hasbackdrop = !0) : usePrimaryImage && item.ImageTags && item.ImageTags.Primary ? (imgUrl = apiClient.getScaledImageUrl(item.Id, {
type: "Primary",
index: 0,
maxWidth: screenWidth,
tag: item.ImageTags.Primary
}), itemBackdropElement.classList.remove("noBackdrop"), imageLoader.lazyImage(itemBackdropElement, imgUrl, !1), hasbackdrop = !0) : item.BackdropImageTags && item.BackdropImageTags.length ? (imgUrl = apiClient.getScaledImageUrl(item.Id, {
type: "Backdrop",
index: 0,
maxWidth: screenWidth,
tag: item.BackdropImageTags[0]
}), itemBackdropElement.classList.remove("noBackdrop"), imageLoader.lazyImage(itemBackdropElement, imgUrl, !1), hasbackdrop = !0) : item.ParentBackdropItemId && item.ParentBackdropImageTags && item.ParentBackdropImageTags.length ? (imgUrl = apiClient.getScaledImageUrl(item.ParentBackdropItemId, {
type: "Backdrop",
index: 0,
tag: item.ParentBackdropImageTags[0],
maxWidth: screenWidth
}), itemBackdropElement.classList.remove("noBackdrop"), imageLoader.lazyImage(itemBackdropElement, imgUrl, !1), hasbackdrop = !0) : item.ImageTags && item.ImageTags.Thumb ? (imgUrl = apiClient.getScaledImageUrl(item.Id, {
type: "Thumb",
index: 0,
maxWidth: screenWidth,
tag: item.ImageTags.Thumb
}), itemBackdropElement.classList.remove("noBackdrop"), imageLoader.lazyImage(itemBackdropElement, imgUrl, !1), hasbackdrop = !0) : (itemBackdropElement.classList.add("noBackdrop"), itemBackdropElement.style.backgroundImage = ""), hasbackdrop
var imgUrl;
var screenWidth = screen.availWidth;
var hasbackdrop = false;
var itemBackdropElement = page.querySelector("#itemBackdrop");
var usePrimaryImage = item.MediaType === "Video" && item.Type !== "Movie" && item.Type !== "Trailer" ||
item.MediaType && item.MediaType !== "Video" ||
item.Type === "MusicAlbum" ||
item.Type === "MusicArtist";

if ("Program" === item.Type && item.ImageTags && item.ImageTags.Thumb) {
imgUrl = apiClient.getScaledImageUrl(item.Id, {
type: "Thumb",
index: 0,
tag: item.ImageTags.Thumb
});
itemBackdropElement.classList.remove("noBackdrop");
imageLoader.lazyImage(itemBackdropElement, imgUrl, false);
hasbackdrop = true;
} else if (usePrimaryImage && item.ImageTags && item.ImageTags.Primary) {
imgUrl = apiClient.getScaledImageUrl(item.Id, {
type: "Primary",
index: 0,
tag: item.ImageTags.Primary
});
itemBackdropElement.classList.remove("noBackdrop");
imageLoader.lazyImage(itemBackdropElement, imgUrl, false);
hasbackdrop = true;
} else if (item.BackdropImageTags && item.BackdropImageTags.length) {
imgUrl = apiClient.getScaledImageUrl(item.Id, {
type: "Backdrop",
index: 0,
tag: item.BackdropImageTags[0]
});
itemBackdropElement.classList.remove("noBackdrop");
imageLoader.lazyImage(itemBackdropElement, imgUrl, false);
hasbackdrop = true;
} else if (item.ParentBackdropItemId && item.ParentBackdropImageTags && item.ParentBackdropImageTags.length) {
imgUrl = apiClient.getScaledImageUrl(item.ParentBackdropItemId, {
type: "Backdrop",
index: 0,
tag: item.ParentBackdropImageTags[0]
});
itemBackdropElement.classList.remove("noBackdrop");
imageLoader.lazyImage(itemBackdropElement, imgUrl, false);
hasbackdrop = true;
} else if (item.ImageTags && item.ImageTags.Thumb) {
imgUrl = apiClient.getScaledImageUrl(item.Id, {
type: "Thumb",
index: 0,
tag: item.ImageTags.Thumb
});
itemBackdropElement.classList.remove("noBackdrop");
imageLoader.lazyImage(itemBackdropElement, imgUrl, false);
hasbackdrop = true;
} else {
itemBackdropElement.classList.add("noBackdrop");
itemBackdropElement.style.backgroundImage = "";
}

return hasbackdrop;
}

function reloadFromItem(instance, page, params, item, user) {
Expand Down
5 changes: 0 additions & 5 deletions src/scripts/librarymenu.js
Original file line number Diff line number Diff line change
Expand Up @@ -25,11 +25,6 @@ define(["dom", "layoutManager", "inputManager", "connectionManager", "events", "
if (user && user.name) {
if (user.imageUrl) {
var url = user.imageUrl;

if (user.supportsImageParams) {
url += "&height=" + Math.round(26 * Math.max(window.devicePixelRatio || 1, 2));
}

updateHeaderUserButton(url);
hasImage = true;
}
Expand Down

0 comments on commit 54b05ab

Please sign in to comment.