def get(self): ## Album list disabled until it is further optimized. #album_list = [] album_list = Album.get_new(num=36) start = datetime.date.today() - datetime.timedelta(days=6) end = datetime.date.today() + datetime.timedelta(days=1) song_num = 10 album_num = 10 logging.debug("Calling get top") top_songs, top_albums = Play.get_top(start, end, song_num, album_num) posts = BlogPost.get_last(num=3) events = Event.get_upcoming(num=3) template_values = { 'news_selected': True, 'flash': self.flashes, 'session': self.session, 'album_list': album_list, 'top_songs': top_songs, 'top_albums': top_albums, 'posts': posts, 'events': events, } self.response.out.write(template.render(get_path("index.html"), template_values))
def get(self): start = datetime.date.today() - datetime.timedelta(days=6) end = datetime.date.today() + datetime.timedelta(days=1) song_num = 30 album_num = 30 songs, albums = Play.get_top(start, end, song_num, album_num) template_values = { 'charts_selected': True, 'session': self.session, 'flash': self.flashes, 'songs': songs, 'albums': albums, 'start': start, 'end': end, 'login': self.dj_login, } self.response.out.write( template.render(get_path("charts.html"), template_values))
def post(self): song_num = 30 album_num = 30 # Parse dates start_date_req = self.request.get("start_date") if start_date_req: try: start = datetime.datetime.strptime(start_date_req, "%m/%d/%Y").date() except ValueError: self.session.add_flash( "Unable to parse start date. Defaulting to a week ago, today.") start = datetime.date.today() - datetime.timedelta(days=6) else: start = datetime.date.today() - datetime.timedelta(days=6) end_date_req = self.request.get("end_date") if end_date_req: try: end = datetime.datetime.strptime(end_date_req, "%m/%d/%Y").date() except ValueError: self.session.add_flash( "Couldn't parse end date. Defaulting to a week of charts.") end = start + datetime.timedelta(weeks=1) else: end = start + datetime.timedelta(weeks=1) if self.request.get("song_num"): song_num = int(self.request.get("song_num")) if self.request.get("album_num"): album_num = int(self.request.get("album_num")) songs, albums = Play.get_top(start, end, song_num, album_num) template_values = { 'charts_selected': True, 'session': self.session, 'flash': self.flashes, 'songs': songs, 'albums': albums, 'start': start, 'end': end, 'login': self.dj_login, } self.response.out.write( template.render(get_path("charts.html"), template_values))