Tmdb Client Error: {"success":false,"status_code":11,"status_message":"Internal error: Something went wrong, contact TMDb.","combined_credits":{"cast":[{"adult":false,"backdrop_path":null,"genre_ids":[18],"id":940889,"original_language":"en","original_title":"Helmikuun tragedia","overview":"Employee Karri gets fired, through which he gets into the world of anger and alcohol.","popularity":0.022,"poster_path":"/m52Hgh5Rbo7Yu3vMVG1QBTrtncW.jpg","release_date":"2022-02-19","title":"The Tragedy of February","video":false,"vote_average":0.0,"vote_count":0,"character":"Police officer","credit_id":"62114a843520e80044afa8ff","order":3,"media_type":"movie"},{"adult":false,"backdrop_path":null,"genre_ids":[18],"id":940889,"original_language":"en","original_title":"Helmikuun tragedia","overview":"Employee Karri gets fired, through which he gets into the world of anger and alcohol.","popularity":0.022,"poster_path":"/m52Hgh5Rbo7Yu3vMVG1QBTrtncW.jpg","release_date":"2022-02-19","title":"The Tragedy of February","video":false,"vote_average":0.0,"vote_count":0,"character":"Uggelberg","credit_id":"62114a77a24232001cbe2d9a","order":2,"media_type":"movie"},{"adult":false,"backdrop_path":null,"genre_ids":[28],"id":1007111,"original_language":"en","original_title":"Italian Batman","overview":"Italian Batman must stop evil scarecrow!","popularity":0.001,"poster_path":null,"release_date":"","title":"Italian Batman","video":false,"vote_average":0.0,"vote_count":0,"character":"Henchmen and The Fly","credit_id":"62e79ccb1bf266005da3be0b","order":4,"media_type":"movie"},{"adult":false,"backdrop_path":"/krNvscj7NnnMKaDYyS73aPRUy2N.jpg","genre_ids":[9648],"id":1357024,"original_language":"fi","original_title":"Stories about emptiness","overview":"Two stories about emptiness","popularity":0.223,"poster_path":"/tV1Ws9DhYK8uo0DgcN2ckjOKjEP.jpg","release_date":"2024-08-11","title":"Stories about emptiness","video":false,"vote_average":0.0,"vote_count":0,"character":"Brother","credit_id":"66e70a9ee8211ecd22b09a54","order":1,"media_type":"movie"},{"adult":false,"backdrop_path":"/krNvscj7NnnMKaDYyS73aPRUy2N.jpg","genre_ids":[9648],"id":1357024,"original_language":"fi","original_title":"Stories about emptiness","overview":"Two stories about emptiness","popularity":0.223,"poster_path":"/tV1Ws9DhYK8uo0DgcN2ckjOKjEP.jpg","release_date":"2024-08-11","title":"Stories about emptiness","video":false,"vote_average":0.0,"vote_count":0,"character":"Ghost","credit_id":"66e7d5bdd7bcca524db0f22f","order":3,"media_type":"movie"}],"crew":[{"adult":false,"backdrop_path":null,"genre_ids":[18],"id":940889,"original_language":"en","original_title":"Helmikuun tragedia","overview":"Employee Karri gets fired, through which he gets into the world of anger and alcohol.","popularity":0.022,"poster_path":"/m52Hgh5Rbo7Yu3vMVG1QBTrtncW.jpg","release_date":"2022-02-19","title":"The Tragedy of February","video":false,"vote_average":0.0,"vote_count":0,"credit_id":"621149f33e2ec800435802ea","department":"Crew","job":"Cinematography","media_type":"movie"}]}}
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'] ?? [];