def episode_toplist(request, num=100): lang = process_lang_params(request) toplist = EpisodeToplist(language=lang) entries = list(map(proxy_object, toplist[:num])) # load podcast objects podcast_ids = [e.podcast for e in entries] podcasts = podcasts_to_dict(podcast_ids, True) for entry in entries: entry.podcast = podcasts.get(entry.podcast, None) current_site = RequestSite(request) # Determine maximum listener amount (or 0 if no entries exist) max_listeners = max([0]+[e.listeners for e in entries]) languages = get_podcast_languages() all_langs = get_language_names(languages) return render(request, 'episode_toplist.html', { 'entries': entries, 'max_listeners': max_listeners, 'url': current_site, 'language': lang, 'all_languages': all_langs, })
def welcome(request): current_site = RequestSite(request) lang = process_lang_params(request) toplist = Podcast.objects.all().toplist(lang) return render(request, 'home.html', {'url': current_site, 'toplist': toplist})
def welcome(request): current_site = RequestSite(request) lang = process_lang_params(request) toplist = Podcast.objects.all().toplist(lang) return render(request, "home.html", { "url": current_site, "toplist": toplist })
def toplist(request, num=100, lang=None): lang = process_lang_params(request) toplist = PodcastToplist(lang) entries = toplist[:num] max_subscribers = max([p.subscriber_count() for (oldp, p) in entries]) if entries else 0 current_site = RequestSite(request) languages = get_podcast_languages() all_langs = get_language_names(languages) return render(request, 'toplist.html', { 'entries': entries, 'max_subscribers': max_subscribers, 'url': current_site, 'language': lang, 'all_languages': all_langs, })
def welcome(request): current_site = RequestSite(request) podcasts = get_cache_or_calc('podcast-count', timeout=60*60, calc=lambda: Podcast.count()) users = get_cache_or_calc('user-count', timeout=60*60, calc=lambda: User.count()) episodes = get_cache_or_calc('episode-count', timeout=60*60, calc=lambda: Episode.count()) lang = utils.process_lang_params(request) toplist = PodcastToplist(lang) return render(request, 'home.html', { 'podcast_count': podcasts, 'user_count': users, 'episode_count': episodes, 'url': current_site, 'toplist': toplist, })
def toplist(request, num=100, lang=None): try: lang = utils.process_lang_params(request) except utils.UpdatedException, updated: return HttpResponseRedirect("/toplist/?lang=%s" % ",".join(updated.data))
def language(self): """ Currently selected language """ return process_lang_params(self.request)