Tmdb Client Error: {"success":false,"status_code":11,"status_message":"Internal error: Something went wrong, contact TMDb.","combined_credits":{"cast":[{"adult":false,"backdrop_path":"/f5ayQ9RioUSmgiSHf9t65pa152u.jpg","genre_ids":[18],"id":154282,"original_language":"en","original_title":"Touchy Feely","overview":"Abby is a sought after massage therapist and a free spirit, while her brother Paul thrives on routine, running a failing dental practice with his assistant and daughter Jenny. Suddenly, Abby develops an aversion to bodily contact, which not only makes her unable to do her job, but also severely affects her relationship with her boyfriend. As Abby navigates her way through an identity crisis, her brother's dental practice receives new life when clients seek out his “healing touch.”","popularity":6.111,"poster_path":"/ngGBnTcBKHJznsI7PvFiRnp4IjC.jpg","release_date":"2013-09-06","title":"Touchy Feely","video":false,"vote_average":4.7,"vote_count":77,"character":"Soul Dancer","credit_id":"62ad8d3c5b1240035f86b07b","order":53,"media_type":"movie"},{"adult":false,"backdrop_path":null,"genre_ids":[35,99],"id":405159,"original_language":"en","original_title":"Attacking the Darkness","overview":"American religious extremism collides with independent filmmaking when Harmony Hope Bryant sets out to create a cautionary movie about the dangers of roleplaying games.","popularity":0.51,"poster_path":"/pSZ8TovpgGnN3ShzgBLvQ9rd9Gg.jpg","release_date":"2015-10-07","title":"Attacking the Darkness","video":false,"vote_average":6.0,"vote_count":1,"character":"Godrick","credit_id":"577d8441c3a36817fb00298f","order":5,"media_type":"movie"}],"crew":[{"adult":false,"backdrop_path":null,"genre_ids":[16,18,10402],"id":1283892,"original_language":"en","original_title":"Teething","overview":"A cinematic poem about being caught between childhood and adulthood. Through dance, lyrical narration, and a lushly orchestrated score, 'Teething' stirs your senses and ignites your imagination.","popularity":0.032,"poster_path":null,"release_date":"2010-01-01","title":"Teething","video":false,"vote_average":0.0,"vote_count":0,"credit_id":"66339cffc616ac0125192cd8","department":"Directing","job":"Director","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'] ?? [];