{(!!data.voteCount ||
- (ratingData?.criticsRating && !!ratingData?.criticsScore) ||
- (ratingData?.audienceRating && !!ratingData?.audienceScore)) && (
+ (ratingData?.rt?.criticsRating &&
+ !!ratingData?.rt?.criticsScore) ||
+ (ratingData?.rt?.audienceRating &&
+ !!ratingData?.rt?.audienceScore) ||
+ ratingData?.imdb?.criticsScore) && (
- {ratingData?.criticsRating && !!ratingData?.criticsScore && (
-
+ {ratingData?.rt?.criticsRating &&
+ !!ratingData?.rt?.criticsScore && (
+
+
+ {ratingData.rt.criticsRating === 'Rotten' ? (
+
+ ) : (
+
+ )}
+ {ratingData.rt.criticsScore}%
+
+
+ )}
+ {ratingData?.rt?.audienceRating &&
+ !!ratingData?.rt?.audienceScore && (
+
+
+ {ratingData.rt.audienceRating === 'Spilled' ? (
+
+ ) : (
+
+ )}
+ {ratingData.rt.audienceScore}%
+
+
+ )}
+ {ratingData?.imdb?.criticsScore && (
+
- {ratingData.criticsRating === 'Rotten' ? (
-
- ) : (
-
- )}
- {ratingData.criticsScore}%
-
-
- )}
- {ratingData?.audienceRating && !!ratingData?.audienceScore && (
-
-
- {ratingData.audienceRating === 'Spilled' ? (
-
- ) : (
-
- )}
- {ratingData.audienceScore}%
+
+ {ratingData.imdb.criticsScore}
)}
@@ -827,7 +847,7 @@ const MovieDetails = ({ movie }: MovieDetailsProps) => {
tmdbId={data.id}
tvdbId={data.externalIds.tvdbId}
imdbId={data.externalIds.imdbId}
- rtUrl={ratingData?.url}
+ rtUrl={ratingData?.rt?.url}
mediaUrl={
data.mediaInfo?.mediaUrl ?? data.mediaInfo?.mediaUrl4k
}
diff --git a/src/components/Selector/index.tsx b/src/components/Selector/index.tsx
index 78ae33ea1..7b2165872 100644
--- a/src/components/Selector/index.tsx
+++ b/src/components/Selector/index.tsx
@@ -437,6 +437,7 @@ export const WatchProviderSelector = ({
{otherProviders.length > 0 && (
@@ -165,6 +166,7 @@ const Slider = ({
}`}
onClick={() => slide(Direction.RIGHT)}
disabled={scrollPos.isEnd}
+ type="button"
>
diff --git a/src/components/StatusBadge/index.tsx b/src/components/StatusBadge/index.tsx
index 53c8a0dca..58e722bdd 100644
--- a/src/components/StatusBadge/index.tsx
+++ b/src/components/StatusBadge/index.tsx
@@ -176,11 +176,11 @@ const StatusBadge = ({
{inProgress && (
<>
- {mediaType === 'tv' && (
+ {mediaType === 'tv' && downloadItem[0].episode && (
{intl.formatMessage(messages.seasonepisodenumber, {
- seasonNumber: downloadItem[0].episode?.seasonNumber,
- episodeNumber: downloadItem[0].episode?.episodeNumber,
+ seasonNumber: downloadItem[0].episode.seasonNumber,
+ episodeNumber: downloadItem[0].episode.episodeNumber,
})}
)}
@@ -229,11 +229,11 @@ const StatusBadge = ({
{inProgress && (
<>
- {mediaType === 'tv' && (
+ {mediaType === 'tv' && downloadItem[0].episode && (
{intl.formatMessage(messages.seasonepisodenumber, {
- seasonNumber: downloadItem[0].episode?.seasonNumber,
- episodeNumber: downloadItem[0].episode?.episodeNumber,
+ seasonNumber: downloadItem[0].episode.seasonNumber,
+ episodeNumber: downloadItem[0].episode.episodeNumber,
})}
)}
@@ -282,11 +282,11 @@ const StatusBadge = ({
{inProgress && (
<>
- {mediaType === 'tv' && (
+ {mediaType === 'tv' && downloadItem[0].episode && (
{intl.formatMessage(messages.seasonepisodenumber, {
- seasonNumber: downloadItem[0].episode?.seasonNumber,
- episodeNumber: downloadItem[0].episode?.episodeNumber,
+ seasonNumber: downloadItem[0].episode.seasonNumber,
+ episodeNumber: downloadItem[0].episode.episodeNumber,
})}
)}
diff --git a/src/components/TvDetails/index.tsx b/src/components/TvDetails/index.tsx
index 6c0064e45..daceb9c84 100644
--- a/src/components/TvDetails/index.tsx
+++ b/src/components/TvDetails/index.tsx
@@ -40,7 +40,7 @@ import {
PlayIcon,
} from '@heroicons/react/24/outline';
import { ChevronDownIcon } from '@heroicons/react/24/solid';
-import type { RTRating } from '@server/api/rottentomatoes';
+import type { RTRating } from '@server/api/rating/rottentomatoes';
import { ANIME_KEYWORD_ID } from '@server/api/themoviedb/constants';
import { IssueStatus } from '@server/constants/issue';
import { MediaRequestStatus, MediaStatus } from '@server/constants/media';
diff --git a/src/i18n/locale/en.json b/src/i18n/locale/en.json
index 5dc30620e..ac450c78e 100644
--- a/src/i18n/locale/en.json
+++ b/src/i18n/locale/en.json
@@ -200,8 +200,6 @@
"components.LanguageSelector.originalLanguageDefault": "All Languages",
"components.Layout.LanguagePicker.displaylanguage": "Display Language",
"components.Layout.SearchInput.searchPlaceholder": "Search Movies & TV",
- "components.Layout.Sidebar.browsemovies": "Movies",
- "components.Layout.Sidebar.browsetv": "Series",
"components.Layout.Sidebar.dashboard": "Discover",
"components.Layout.Sidebar.browsemovies": "Movies",
"components.Layout.Sidebar.browsetv": "Series",
@@ -282,6 +280,7 @@
"components.MovieDetails.cast": "Cast",
"components.MovieDetails.digitalrelease": "Digital Release",
"components.MovieDetails.downloadstatus": "Download Status",
+ "components.MovieDetails.imdbuserscore": "IMDB User Score",
"components.MovieDetails.managemovie": "Manage Movie",
"components.MovieDetails.mark4kavailable": "Mark as Available in 4K",
"components.MovieDetails.markavailable": "Mark as Available",