Beispiel #1
0
    def update_series(cls, series_id):
        """
        Refetches series, and refetches its seasons IF it has changes
        """
        series_id = int(series_id)
        series = Series.get_by_id(series_id)
        seasons_changed = TMDB.seasons_changed_in_series(series_id)
        for season_number in seasons_changed:
            # refetch seasons that have changed
            new_season = Season.from_json(
                TMDB.season(series_id, season_number))

            # store the season
            series.set_season(new_season)

        # refetch series
        new_series = Series.from_json(TMDB.series(series_id))
        
        # store seasons
        new_series.seasons = series.seasons
        
        new_series.put()
        logging.info("Updated series: %s %s" % (series_id, series.name))
        
        return new_series
Beispiel #2
0
    def load_series(series_id):
        """
        Loads series, season, episode into db.
        """
        #check if already in database
        series = Series.get_by_id(series_id)
        if series is not None:
            logging.info("Tried to re-add series %d" % series_id)
            return False

        # fetch from TMDB
        series_json = TMDB.series(series_id)
        if not series_json:
            return False;

        series = Series.from_json(series_json)

        for i in range(1, series.number_of_seasons() + 1):
            season_json = TMDB.season(series_id, season_number=i)
            if not season_json:
                continue
            season = Season.from_json(season_json)
            series.set_season(season)

        series.put()
        return True