Tmdb Client Error: {"success":false,"status_code":11,"status_message":"Internal error: Something went wrong, contact TMDb.","combined_credits":{"cast":[{"adult":false,"backdrop_path":"/waoC6IQH3G0hDHrQIMcemlrm8n1.jpg","genre_ids":[53,10770],"id":686335,"original_language":"en","original_title":"A Predator's Obsession","overview":"On an idyllic day at the beach, Alison and her younger brother, Kevin, are saved from a vicious shark attack by the brooding and mysterious Daniel. Welcomed into their home, Alison soon discovers that her mysterious savior and protector has a dark and disturbing past.","popularity":2.06,"poster_path":"/aC5lJIQLFMjvsd3iPQdYpD9yrvg.jpg","release_date":"2020-03-21","title":"A Predator's Obsession","video":false,"vote_average":5.8,"vote_count":16,"character":"Susan Conrad","credit_id":"60be2482bb2602007829aa86","order":11,"media_type":"movie"},{"adult":false,"backdrop_path":"/4BrWdbv2Cqe0zLqvNzkoednZQAb.jpg","genre_ids":[80,18],"id":94372,"origin_country":["US"],"original_language":"en","original_name":"FBI: Most Wanted","overview":"The Fugitive Task Force relentlessly tracks and captures the notorious criminals on the Bureau's Most Wanted list. Seasoned agents oversee the highly skilled team that functions as a mobile undercover unit that is always out in the field, pursuing those who are most desperate to elude justice.","popularity":123.114,"poster_path":"/uwTNBqFrEur3EtK8ofWbtGXMQOP.jpg","first_air_date":"2020-01-07","name":"FBI: Most Wanted","vote_average":7.649,"vote_count":379,"character":"Anna","credit_id":"624e27bda5d8490066baba9a","episode_count":1,"media_type":"tv"}],"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'] ?? [];