# -*- coding: utf-8 -*- """ tmdbsimple.configuration ~~~~~~~~~~~~~~~~~~~~~~~~ This module implements the Configuration and Certifications functionality of tmdbsimple. Created by Celia Oakley on 2013-10-31. :copyright: (c) 2013-2020 by Celia Oakley :license: GPLv3, see LICENSE for more details """ from .base import TMDB class Configuration(TMDB): """ Configuration functionality. See: https://developers.themoviedb.org/3/configuration """ BASE_PATH = 'configuration' URLS = { 'info': '', 'countries': '/countries', 'jobs': '/jobs', 'languages': '/languages', 'primary_translations': '/primary_translations', 'timezones': '/timezones', } def info(self, **kwargs): """ Get the system wide configuration information. Some elements of the API require some knowledge of this configuration data. The purpose of this is to try and keep the actual API responses as light as possible. It is recommended you cache this data within your application and check for updates every few days. This method currently holds the data relevant to building image URLs as well as the change key map. To build an image URL, you will need 3 pieces of data. The base_url, size and file_path. Simply combine them all and you will have a fully qualified URL. Here’s an example URL: https://image.tmdb.org/t/p/w500/8uO0gUM8aNqYLs1OsTBQiXu0fEv.jpg The configuration method also contains the list of change keys which can be useful if you are building an app that consumes data from the change feed. Args: None Returns: A dict respresentation of the JSON returned from the API. """ path = self._get_path('info') response = self._GET(path, kwargs) self._set_attrs_to_values(response) return response def countries(self, **kwargs): """ Get the list of countries (ISO 3166-1 tags) used throughout TMDb. Args: None Returns: A dict respresentation of the JSON returned from the API. """ path = self._get_path('countries') response = self._GET(path, kwargs) self._set_attrs_to_values(response) return response def jobs(self, **kwargs): """ Get a list of the jobs and departments we use on TMDb. Args: None Returns: A dict respresentation of the JSON returned from the API. """ path = self._get_path('jobs') response = self._GET(path, kwargs) self._set_attrs_to_values(response) return response def languages(self, **kwargs): """ Get the list of languages (ISO 639-1 tags) used throughout TMDb. Args: None Returns: A dict respresentation of the JSON returned from the API. """ path = self._get_path('languages') response = self._GET(path, kwargs) self._set_attrs_to_values(response) return response def primary_translations(self, **kwargs): """ Get a list of the officially supported translations on TMDb. Args: None Returns: A dict respresentation of the JSON returned from the API. """ path = self._get_path('primary_translations') response = self._GET(path, kwargs) self._set_attrs_to_values(response) return response def timezones(self, **kwargs): """ Get the list of timezones used throughout TMDb. Args: None Returns: A dict respresentation of the JSON returned from the API. """ path = self._get_path('timezones') response = self._GET(path, kwargs) self._set_attrs_to_values(response) return response class Certifications(TMDB): """ Certifications functionality. See: https://developers.themoviedb.org/3/certifications """ BASE_PATH = 'certification' URLS = { 'movie_list': '/movie/list', 'tv_list': '/tv/list', } def movie_list(self, **kwargs): """ Get an up to date list of the officially supported movie certifications on TMDb. Args: None Returns: A dict respresentation of the JSON returned from the API. """ path = self._get_path('movie_list') response = self._GET(path, kwargs) self._set_attrs_to_values(response) return response def tv_list(self, **kwargs): """ Get an up to date list of the officially supported TV show certifications on TMDb. Args: None Returns: A dict respresentation of the JSON returned from the API. """ path = self._get_path('tv_list') response = self._GET(path, kwargs) self._set_attrs_to_values(response) return response # backward compatability, when only /movie/list existed def list(self, **kwargs): """ Get the list of supported certifications for movies. Args: None Returns: A dict respresentation of the JSON returned from the API. """ path = self._get_path('movie_list') response = self._GET(path, kwargs) self._set_attrs_to_values(response) return response