def channel_list(request, state): query = Channel.objects.extra( select={ 'owned_by_freelance': 'owner_id=' '(SELECT id FROM auth_user WHERE username="******")' }) ordering = ['owned_by_freelance', 'creation_time'] if state == 'waiting': query = query.filter(waiting_for_reply_date__isnull=False) ordering[1] = 'waiting_for_reply_date' header = _("Channels Waiting For Replies") elif state == 'dont-know': query = query.filter(state=Channel.DONT_KNOW) header = _("Channels Flagged Don't Know By a Moderator") elif state == 'rejected': query = query.filter(state=Channel.REJECTED) header = _("Rejected Channels") elif state == 'suspended': query = query.filter(state=Channel.SUSPENDED) header = _("Suspended Channels") elif state == 'featured': query = query.filter(featured_queue__state=FeaturedQueue.IN_QUEUE) header = _("Featured Queue") elif state == 'hd-flagged': query = Channel.objects.filter(hi_def=True).annotate(Count('flags')) query = query.order_by('-flags__count') ordering = None header = _('Flagged HD Channels') else: query = query.filter(state=Channel.NEW) header = _("Unreviewed Channels") if ordering: query = query.order_by(*ordering) paginator = Paginator(query, 20) try: page = paginator.page(request.GET.get('page', 1)) except InvalidPage: return HttpResponseRedirect(request.path) return render_to_response('moderate/moderator-channel-list.html', { 'request': request, 'page': page, 'header': header, 'subscribe_all_link': util.make_link( util.get_subscription_url(*[ channel.url for channel in page.object_list if channel.url is not None ]), _("Subscribe to all %i channels on this page") % len(page.object_list)) }, context_instance=RequestContext(request))
def channel_list(request, state): query = Channel.objects.extra( select={ 'owned_by_freelance': 'owner_id=' '(SELECT id FROM auth_user WHERE username="******")' }) ordering = ['owned_by_freelance', 'creation_time'] if state == 'waiting': query = query.filter(waiting_for_reply_date__isnull=False) ordering[1] = 'waiting_for_reply_date' header = _("Channels Waiting For Replies") elif state == 'dont-know': query = query.filter(state=Channel.DONT_KNOW) header = _("Channels Flagged Don't Know By a Moderator") elif state == 'rejected': query = query.filter(state=Channel.REJECTED) header = _("Rejected Channels") elif state == 'suspended': query = query.filter(state=Channel.SUSPENDED) header = _("Suspended Channels") elif state == 'featured': query = query.filter(featured_queue__state=FeaturedQueue.IN_QUEUE) header = _("Featured Queue") elif state == 'hd-flagged': query = Channel.objects.filter(hi_def=True).annotate(Count('flags')) query = query.order_by('-flags__count') ordering = None header = _('Flagged HD Channels') else: query = query.filter(state=Channel.NEW) header = _("Unreviewed Channels") if ordering: query = query.order_by(*ordering) paginator = Paginator(query, 20) try: page = paginator.page(request.GET.get('page', 1)) except InvalidPage: return HttpResponseRedirect(request.path) return render_to_response('moderate/moderator-channel-list.html', { 'request': request, 'page': page, 'header': header, 'subscribe_all_link': util.make_link( util.get_subscription_url(*[channel.url for channel in page.object_list if channel.url is not None]), _("Subscribe to all %i channels on this page") % len( page.object_list)) }, context_instance=RequestContext(request))
def audio_link(self): return util.make_link(self.get_audio_url(), self.name)
def link(self): return util.make_link(self.get_url(), self.name)
def website_link(self): url_label = self.website_url url_label = util.chop_prefix(url_label, 'http://') url_label = util.chop_prefix(url_label, 'https://') url_label = util.chop_prefix(url_label, 'www.') return util.make_link(self.website_url, url_label)
def name_as_link(self): return util.make_link(self.get_absolute_url(), self.name)