diff --git a/server/api/themoviedb/index.ts b/server/api/themoviedb/index.ts index cb4d40711..1e2caa710 100644 --- a/server/api/themoviedb/index.ts +++ b/server/api/themoviedb/index.ts @@ -1,5 +1,6 @@ import ExternalAPI from '@server/api/externalapi'; import cacheManager from '@server/lib/cache'; +import { getSettings } from '@server/lib/settings'; import { sortBy } from 'lodash'; import type { TmdbCollection, @@ -99,6 +100,7 @@ interface DiscoverTvOptions { } class TheMovieDb extends ExternalAPI { + private locale: string; private discoverRegion?: string; private originalLanguage?: string; constructor({ @@ -118,6 +120,7 @@ class TheMovieDb extends ExternalAPI { }, } ); + this.locale = getSettings().main?.locale || 'en'; this.discoverRegion = discoverRegion; this.originalLanguage = originalLanguage; } @@ -126,7 +129,7 @@ class TheMovieDb extends ExternalAPI { query, page = 1, includeAdult = false, - language = 'en', + language = this.locale, }: SearchOptions): Promise => { try { const data = await this.get('/search/multi', { @@ -151,7 +154,7 @@ class TheMovieDb extends ExternalAPI { query, page = 1, includeAdult = false, - language = 'en', + language = this.locale, year, }: SingleSearchOptions): Promise => { try { @@ -178,7 +181,7 @@ class TheMovieDb extends ExternalAPI { query, page = 1, includeAdult = false, - language = 'en', + language = this.locale, year, }: SingleSearchOptions): Promise => { try { @@ -203,7 +206,7 @@ class TheMovieDb extends ExternalAPI { public getPerson = async ({ personId, - language = 'en', + language = this.locale, }: { personId: number; language?: string; @@ -221,7 +224,7 @@ class TheMovieDb extends ExternalAPI { public getPersonCombinedCredits = async ({ personId, - language = 'en', + language = this.locale, }: { personId: number; language?: string; @@ -244,7 +247,7 @@ class TheMovieDb extends ExternalAPI { public getMovie = async ({ movieId, - language = 'en', + language = this.locale, }: { movieId: number; language?: string; @@ -269,7 +272,7 @@ class TheMovieDb extends ExternalAPI { public getTvShow = async ({ tvId, - language = 'en', + language = this.locale, }: { tvId: number; language?: string; @@ -319,7 +322,7 @@ class TheMovieDb extends ExternalAPI { public async getMovieRecommendations({ movieId, page = 1, - language = 'en', + language = this.locale, }: { movieId: number; page?: number; @@ -343,7 +346,7 @@ class TheMovieDb extends ExternalAPI { public async getMovieSimilar({ movieId, page = 1, - language = 'en', + language = this.locale, }: { movieId: number; page?: number; @@ -367,7 +370,7 @@ class TheMovieDb extends ExternalAPI { public async getMoviesByKeyword({ keywordId, page = 1, - language = 'en', + language = this.locale, }: { keywordId: number; page?: number; @@ -391,7 +394,7 @@ class TheMovieDb extends ExternalAPI { public async getTvRecommendations({ tvId, page = 1, - language = 'en', + language = this.locale, }: { tvId: number; page?: number; @@ -417,7 +420,7 @@ class TheMovieDb extends ExternalAPI { public async getTvSimilar({ tvId, page = 1, - language = 'en', + language = this.locale, }: { tvId: number; page?: number; @@ -439,7 +442,7 @@ class TheMovieDb extends ExternalAPI { sortBy = 'popularity.desc', page = 1, includeAdult = false, - language = 'en', + language = this.locale, primaryReleaseDateGte, primaryReleaseDateLte, originalLanguage, @@ -510,7 +513,7 @@ class TheMovieDb extends ExternalAPI { public getDiscoverTv = async ({ sortBy = 'popularity.desc', page = 1, - language = 'en', + language = this.locale, firstAirDateGte, firstAirDateLte, includeEmptyReleaseDate = false, @@ -585,7 +588,7 @@ class TheMovieDb extends ExternalAPI { public getUpcomingMovies = async ({ page = 1, - language = 'en', + language = this.locale, }: { page: number; language: string; @@ -610,7 +613,7 @@ class TheMovieDb extends ExternalAPI { public getAllTrending = async ({ page = 1, timeWindow = 'day', - language = 'en', + language = this.locale, }: { page?: number; timeWindow?: 'day' | 'week'; @@ -677,7 +680,7 @@ class TheMovieDb extends ExternalAPI { public async getByExternalId({ externalId, type, - language = 'en', + language = this.locale, }: | { externalId: string; @@ -706,7 +709,7 @@ class TheMovieDb extends ExternalAPI { public async getMediaByImdbId({ imdbId, - language = 'en', + language = this.locale, }: { imdbId: string; language?: string; @@ -745,7 +748,7 @@ class TheMovieDb extends ExternalAPI { public async getShowByTvdbId({ tvdbId, - language = 'en', + language = this.locale, }: { tvdbId: number; language?: string; @@ -775,7 +778,7 @@ class TheMovieDb extends ExternalAPI { public async getCollection({ collectionId, - language = 'en', + language = this.locale, }: { collectionId: number; language?: string; @@ -849,7 +852,7 @@ class TheMovieDb extends ExternalAPI { } public async getMovieGenres({ - language = 'en', + language = this.locale, }: { language?: string; } = {}): Promise { @@ -896,7 +899,7 @@ class TheMovieDb extends ExternalAPI { } public async getTvGenres({ - language = 'en', + language = this.locale, }: { language?: string; } = {}): Promise {