def series_archive_view_selected(self): "show all series" self.general_model.clear() self.cursor.execute("SELECT title,path FROM series JOIN "\ "series_images ON series.id=series_images.series_id ORDER BY title") for (title, path) in self.cursor.fetchall(): util.render_view(self.image, title, self.general_model, settings.IMAGE_PATH+path) self.view_flag = 'series_archive_view_selected'
def series_archive_view_season_selected(self, choice): "show seasons of series" self.series_name = choice self.cursor.execute("SELECT number_of_seasons FROM series WHERE title=%s", (choice,)) (no_seasons,) = self.cursor.fetchone() self.general_model.clear() for num in range(1, no_seasons+1): util.render_view(self.image, "Season {}".format(num), self.general_model) self.view_flag = "series_archive_view_season_selected"
def series_on_air_view_selected(self): "show series which are currently on air" self.general_model.clear() self.cursor.execute("SELECT title,number_of_seasons,path FROM series "\ "JOIN series_images ON series.id=series_id AND "\ "status='1' ORDER BY title") for (title, current_season, path) in self.cursor.fetchall(): util.render_view(self.image, title+" "+"Season"+" "+str(current_season), self.general_model, settings.IMAGE_PATH+path) self.view_flag = 'series_on_air_view_selected'
def released_movies_view_selected(self): "show movies which have just been released" self.general_model.clear() self.cursor.execute("SELECT value FROM config WHERE key='movie_duration'") duration = self.cursor.fetchone() week = datetime.now() - timedelta(days=float(duration[0])) self.cursor.execute("SELECT movies.title, path from movies JOIN movie_images "\ "ON movies.title=movie_images.title "\ "AND date_added BETWEEN %s AND %s", (week, datetime.now(),)) for (title, path) in self.cursor.fetchall(): util.render_view(self.image, title, self.general_model, settings.IMAGE_PATH+path) self.view_flag = "released_movies_view_selected"
def watch_queue_series_selected(self): "show series in watch queue" self.general_model.clear() self.cursor.execute("SELECT si.path,wqs.name,sq.episode_name FROM "\ 'series_images AS si,'\ 'watch_queue_status AS wqs,'\ 'series_queue AS sq '\ 'WHERE wqs.id=sq.watch_queue_status_id '\ 'AND sq.series_id=si.series_id ORDER BY sq.id DESC limit 15') for (path, watch_name, episode_name) in self.cursor.fetchall(): util.render_view(self.image, episode_name+": "+watch_name, self.general_model, settings.IMAGE_PATH+path) self.view_flag = 'watch_queue_series_selected'
def watch_queue_movie_selected(self): "show movies in queue" self.general_model.clear() self.cursor.execute("SELECT mi.path,wqs.name FROM "\ 'movie_images AS mi,'\ 'watch_queue_status AS wqs,'\ 'movie_queue AS mq '\ 'WHERE mi.title=(SELECT title FROM movies WHERE id=mq.movie_id) '\ 'AND wqs.id=mq.watch_queue_status_id') for (path, watch_name) in self.cursor.fetchall(): util.render_view(self.image, watch_name, self.general_model, settings.IMAGE_PATH+path) self.view_flag = 'watch_queue_movies_selected'
def series_archive_view_season_episode_view_selected(self, choice): "show episodes of particular season of a series" self.episodes_dict = {} no = choice.split("Season ")[1] self.cursor.execute("SELECT episode_number || episode_name,episode_link FROM episodes " \ ' WHERE series_id=(SELECT id from series where title=%s) ' \ ' and episode_link LIKE %s', (self.series_name, "%season-" + no + "%",)) self.general_model.clear() for (episode_name, episode_link) in self.cursor.fetchall(): util.render_view(self.image, episode_name, self.general_model) self.episodes_dict[episode_name] = episode_link self.view_flag = "series_archive_view_season_episode_view_selected"
def movie_archive_view_genre_selected(self, choice): "show all movies from a particular genre" self.cursor.execute("SELECT id FROM genre WHERE genre=%s", (choice,)) self.search_choice = choice (genre_key,) = self.cursor.fetchone() self.cursor.execute('SELECT movies.title,path FROM movies '\ "JOIN movie_images ON movies.title=movie_images.title "\ 'AND genre_id=%s order by movies.title', (genre_key,)) movie_info = self.cursor.fetchall() self.general_model.clear() for (movie_title, path) in movie_info: util.render_view(self.image, movie_title, self.general_model, settings.IMAGE_PATH+path) self.view_flag = "movie_archive_view_genre_selected"
def latest_episodes_view_selected(self): "show latest episodes" self.episodes_dict = {} self.general_model.clear() self.cursor.execute("SELECT value FROM config WHERE key='series_duration'") duration = self.cursor.fetchone() week = datetime.now() - timedelta(days=float(duration[0])) self.cursor.execute("SELECT episode_number || episode_name,episode_link,path FROM episodes "\ "JOIN series_images "\ "ON episodes.series_id=series_images.series_id "\ "AND date BETWEEN %s AND %s", (week, datetime.now(),)) for (episode_name, episode_link, path) in self.cursor.fetchall(): util.render_view(self.image, episode_name, self.general_model, settings.IMAGE_PATH+path) self.episodes_dict[episode_name] = episode_link self.view_flag = 'latest_episode_view_selected'
def series_on_air_view_series_selected(self, choice): "show current seasons episodes" self.episodes_dict = {} series_name = choice.split(" Season")[0] logging.debug(series_name) series_number = choice.split("Season ")[1] logging.debug(series_number) self.cursor.execute("SELECT episode_number || episode_name,episode_link " \ "FROM episodes WHERE " \ ' series_id=(SELECT id from series where title=%s) ' \ ' and episode_link LIKE %s', (series_name, "%season-{}%".format(series_number),)) self.general_model.clear() for (episode_name, episode_link) in self.cursor.fetchall(): util.render_view(self.image, episode_name, self.general_model) self.episodes_dict[episode_name] = episode_link self.view_flag = "series_on_air_view_series_selected"