Esempio n. 1
0
    def add_movie(self, tmdb_id=None, **kwargs):
        if not tmdb_id:
            return

        # Get movie details
        details = TMDb().get_request_sc('movie',
                                        tmdb_id,
                                        append_to_response='external_ids')
        if not details or not details.get('title'):
            return
        imdb_id = details.get('external_ids', {}).get('imdb_id')
        name = u'{} ({})'.format(details['title'],
                                 details['release_date'][:4]) if details.get(
                                     'release_date') else details['title']

        # Only add strm if not in library
        file = self.kodi_db_movies.get_info(info='file',
                                            imdb_id=imdb_id,
                                            tmdb_id=tmdb_id)
        if not file:
            file = create_file(STRM_MOVIE.format(tmdb_id),
                               name,
                               name,
                               basedir=BASEDIR_MOVIE)
            create_nfo('movie', tmdb_id, name, basedir=BASEDIR_MOVIE)
            self._log._add('movie', tmdb_id, 'added strm file', path=file)
        else:
            self._log._add('movie', tmdb_id, 'item in library', path=file)

        # Return our playlist rule
        return ('filename', file.replace('\\', '/').split('/')[-1])
Esempio n. 2
0
    def _add_episode(self, episode, season, folder):
        number = episode.get('episode_number')
        filename = validify_filename(u'S{:02d}E{:02d} - {}'.format(
            try_int(season), try_int(number), episode.get('name')))
        self.tv._cache.my_history['episodes'].append(filename)

        # Skip episodes we added in the past
        if self._log._add('tv',
                          self.tv.tmdb_id,
                          self.tv._cache.is_added_episode(filename),
                          season=season,
                          episode=number):
            return

        # Skip future episodes
        if self.hide_unaired and is_future_timestamp(episode.get('air_date'),
                                                     "%Y-%m-%d", 10):
            self.tv._cache.my_history['skipped'].append(filename)
            self._log._add('tv',
                           self.tv.tmdb_id,
                           'unaired episode',
                           season=season,
                           episode=number,
                           air_date=episode.get('air_date'))
            return

        # Check if item has already been added
        file = self.tv.get_episode_db_info(season, number, info='file')
        if file:
            self._log._add('tv',
                           self.tv.tmdb_id,
                           'found in library',
                           season=season,
                           episode=number,
                           path=file)
            return

        # Add our strm file
        file = create_file(STRM_EPISODE.format(self.tv.tmdb_id, season,
                                               number),
                           filename,
                           self.tv.name,
                           folder,
                           basedir=BASEDIR_TV)
        self._log._add('tv',
                       self.tv.tmdb_id,
                       'added strm file',
                       season=season,
                       episode=number,
                       path=file)