Tmdb Client Error: {"success":false,"status_code":11,"status_message":"Internal error: Something went wrong, contact TMDb.","combined_credits":{"cast":[{"adult":false,"backdrop_path":"/wl8MTBbqgmn3Xefj7Onep2KLjfE.jpg","genre_ids":[35,10751],"id":542090,"original_language":"ru","original_title":"Бегство рогатых викингов, или Пять дней из жизни Джонни Воробьева","overview":"Friends terrorized by a gang of street hooligans run the risk of spending the entire summer being locked up in their backyard. But thanks to their resourcefulness, mutual assistance and the support of the local population, they manage to get into their hands a serious “biological weapon”.","popularity":0.693,"poster_path":"/36cS4nrgzq1yy2KifCm4NAphTSo.jpg","release_date":"2019-06-13","title":"The Escape Of Horned Vikings, or Five Days In The Life Of Johnny Vorobyova","video":false,"vote_average":4.3,"vote_count":3,"character":"Peskar","credit_id":"5c383f410e0a267d5d21c095","order":6,"media_type":"movie"}],"crew":[]}}
96 'Content-Type' => 'application/json;charset=utf-8',
97 'Authorization' => sprintf('Bearer %s', Configurator::$instance->get('tmdb'))
98 ];
99
100 // Append language preference to headers to avoid adult content
101 $headers['Accept-Language'] = 'en-US'; // Example: Set language preference to English
102
103 // Make the GET request with headers
104 $resp = EasyCurl::setHeaders($headers)->get(...$args);
105
106 // Check if response status is not 200 OK
107 if ($resp->getStatus() != 200) {
108 throw new TmdbClientException('Tmdb Client Error: ' . $resp->getBody(), $resp->getStatus());
109 }
110
111 // Check for adult content in response (assuming TMDB API supports such filtering)
112 $jsonResponse = json_decode($resp->getBody(), true);
113
114
115 return $resp;
116 }
117
118
119 public function getGenre(): array
120 {
121 return $this->request('genre/' . $this->getType() . '/list')['genres'] ?? [];