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
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