def _queue(request, TableObj, tab, qs=None, unlisted=False): if qs is None: qs = TableObj.Meta.model.objects.all() if request.GET: search_form = forms.QueueSearchForm(request.GET) if search_form.is_valid(): qs = search_form.filter_qs(qs) else: search_form = forms.QueueSearchForm() order_by = request.GET.get('sort', TableObj.default_order_by()) order_by = TableObj.translate_sort_cols(order_by) table = TableObj(data=qs, order_by=order_by) default = 100 per_page = request.GET.get('per_page', default) try: per_page = int(per_page) except ValueError: per_page = default if per_page <= 0 or per_page > 200: per_page = default page = paginate(request, table.rows, per_page=per_page) table.set_page(page) return render( request, 'editors/queue.html', context(table=table, page=page, tab=tab, search_form=search_form, point_types=amo.REVIEWED_AMO, unlisted=unlisted))
def _queue(request, TableObj, tab): qs = TableObj.Meta.model.objects.all() if request.GET: search_form = forms.QueueSearchForm(request.GET) if search_form.is_valid(): qs = search_form.filter_qs(qs) else: search_form = forms.QueueSearchForm() review_num = request.GET.get('num', None) if review_num: try: review_num = int(review_num) except ValueError: pass else: try: # Force a limit query for efficiency: row = qs[review_num - 1:1][0] return redirect('%s?num=%s' % ( reverse('editors.review', args=[row.latest_version_id]), review_num)) except IndexError: pass order_by = request.GET.get('sort', '-waiting_time_min') legacy_sorts = { 'name': 'addon_name', 'age': 'waiting_time_min', 'type': 'addon_type_id', } order_by = legacy_sorts.get(order_by, order_by) table = TableObj(qs, order_by=order_by) default = 100 per_page = request.GET.get('per_page', default) try: per_page = int(per_page) except ValueError: per_page = default if per_page <= 0 or per_page > 200: per_page = default page = paginate(request, table.rows, per_page=per_page) table.set_page(page) return jingo.render(request, 'editors/queue.html', context(table=table, page=page, tab=tab, search_form=search_form))
def _queue(request, TableObj, tab, qs=None): if qs is None: qs = TableObj.Meta.model.objects.all() if request.GET: search_form = forms.QueueSearchForm(request.GET) if search_form.is_valid(): qs = search_form.filter_qs(qs) else: search_form = forms.QueueSearchForm() review_num = request.GET.get('num', None) if review_num: try: review_num = int(review_num) except ValueError: pass else: try: # Force a limit query for efficiency: start = review_num - 1 row = qs[start:start + 1][0] return http.HttpResponseRedirect( '%s?num=%s' % (TableObj.review_url(row), review_num)) except IndexError: pass order_by = request.GET.get('sort', TableObj.default_order_by()) order_by = TableObj.translate_sort_cols(order_by) table = TableObj(data=qs, order_by=order_by) default = 100 per_page = request.GET.get('per_page', default) try: per_page = int(per_page) except ValueError: per_page = default if per_page <= 0 or per_page > 200: per_page = default page = paginate(request, table.rows, per_page=per_page) table.set_page(page) return render( request, 'editors/queue.html', context(table=table, page=page, tab=tab, search_form=search_form, point_types=amo.REVIEWED_AMO))
def _queue(request, TableObj, tab, qs=None, unlisted=False): if qs is None: qs = TableObj.Meta.model.objects.all() if request.GET: search_form = forms.QueueSearchForm(request.GET) if search_form.is_valid(): qs = search_form.filter_qs(qs) else: search_form = forms.QueueSearchForm() admin_reviewer = is_admin_reviewer(request) if not admin_reviewer and not search_form.data.get('searching'): qs = exclude_admin_only_addons(qs) motd_editable = acl.action_allowed(request, 'AddonReviewerMOTD', 'Edit') order_by = request.GET.get('sort', TableObj.default_order_by()) order_by = TableObj.translate_sort_cols(order_by) table = TableObj(data=qs, order_by=order_by) default = 100 per_page = request.GET.get('per_page', default) try: per_page = int(per_page) except ValueError: per_page = default if per_page <= 0 or per_page > 200: per_page = default page = paginate(request, table.rows, per_page=per_page) table.set_page(page) return render( request, 'editors/queue.html', context(request, table=table, page=page, tab=tab, search_form=search_form, point_types=amo.REVIEWED_AMO, unlisted=unlisted, motd_editable=motd_editable))
def application_versions_json(request): app_id = request.POST['application_id'] f = forms.QueueSearchForm() return {'choices': f.version_choices_for_app_id(app_id)}