+ );
+ }
+
if (sortKey === 'inCinemas' && inCinemas && !showCinemaRelease) {
const inCinemasDate = getRelativeDate(
inCinemas,
@@ -84,7 +117,7 @@ function MovieIndexPosterInfo(props: MovieIndexPosterInfoProps) {
);
return (
-
+
{inCinemasDate}
);
@@ -126,18 +159,58 @@ function MovieIndexPosterInfo(props: MovieIndexPosterInfoProps) {
);
}
+ if (sortKey === 'imdbRating' && !!ratings.imdb) {
+ return (
+
+
+
+ );
+ }
+
+ if (sortKey === 'tmdbRating' && !!ratings.tmdb) {
+ return (
+
+
+
+ );
+ }
+
if (sortKey === 'path') {
- return
{path}
;
+ return (
+
+ {path}
+
+ );
}
if (sortKey === 'sizeOnDisk') {
- return
{formatBytes(sizeOnDisk)}
;
+ return (
+
+ {formatBytes(sizeOnDisk)}
+
+ );
}
if (sortKey === 'certification') {
return
{certification}
;
}
+ if (sortKey === 'originalTitle' && originalTitle) {
+ return (
+
+ {originalTitle}
+
+ );
+ }
+
+ if (sortKey === 'originalLanguage' && originalLanguage) {
+ return (
+
+ {originalLanguage.name}
+
+ );
+ }
+
return null;
}
diff --git a/frontend/src/Movie/Index/Posters/MovieIndexPosters.tsx b/frontend/src/Movie/Index/Posters/MovieIndexPosters.tsx
index 3354c7a3e9..b866daef6c 100644
--- a/frontend/src/Movie/Index/Posters/MovieIndexPosters.tsx
+++ b/frontend/src/Movie/Index/Posters/MovieIndexPosters.tsx
@@ -143,6 +143,7 @@ export default function MovieIndexPosters(props: MovieIndexPostersProps) {
showTitle,
showMonitored,
showQualityProfile,
+ showCinemaRelease,
showReleaseDate,
} = posterOptions;
@@ -167,6 +168,10 @@ export default function MovieIndexPosters(props: MovieIndexPostersProps) {
heights.push(19);
}
+ if (showCinemaRelease) {
+ heights.push(19);
+ }
+
if (showReleaseDate) {
heights.push(19);
}
@@ -174,8 +179,13 @@ export default function MovieIndexPosters(props: MovieIndexPostersProps) {
switch (sortKey) {
case 'studio':
case 'added':
+ case 'year':
+ case 'imdbRating':
+ case 'tmdbRating':
case 'path':
case 'sizeOnDisk':
+ case 'originalTitle':
+ case 'originalLanguage':
heights.push(19);
break;
case 'qualityProfileId':
@@ -183,6 +193,17 @@ export default function MovieIndexPosters(props: MovieIndexPostersProps) {
heights.push(19);
}
break;
+ case 'inCinemas':
+ if (!showCinemaRelease) {
+ heights.push(19);
+ }
+ break;
+ case 'digitalRelease':
+ case 'physicalRelease':
+ if (!showReleaseDate) {
+ heights.push(19);
+ }
+ break;
default:
// No need to add a height of 0
}
diff --git a/frontend/src/Movie/Movie.ts b/frontend/src/Movie/Movie.ts
index 4f1993068f..d1abf81b9b 100644
--- a/frontend/src/Movie/Movie.ts
+++ b/frontend/src/Movie/Movie.ts
@@ -16,6 +16,13 @@ export interface Collection {
title: string;
}
+export interface Ratings {
+ imdb: object;
+ tmdb: object;
+ metacritic: object;
+ rottenTomatoes: object;
+}
+
interface Movie extends ModelBase {
tmdbId: number;
imdbId: string;
@@ -41,7 +48,7 @@ interface Movie extends ModelBase {
path: string;
sizeOnDisk: number;
genres: string[];
- ratings: object;
+ ratings: Ratings;
certification: string;
tags: number[];
images: Image[];