Changeset View
Changeset View
Standalone View
Standalone View
swh/web/admin/origin_save.py
# Copyright (C) 2018-2019 The Software Heritage developers | # Copyright (C) 2018-2019 The Software Heritage developers | ||||
# See the AUTHORS file at the top-level directory of this distribution | # See the AUTHORS file at the top-level directory of this distribution | ||||
# License: GNU Affero General Public License version 3, or any later version | # License: GNU Affero General Public License version 3, or any later version | ||||
# See top-level LICENSE file for more information | # See top-level LICENSE file for more information | ||||
import json | |||||
from django.conf import settings | from django.conf import settings | ||||
from django.contrib.admin.views.decorators import staff_member_required | from django.contrib.admin.views.decorators import staff_member_required | ||||
from django.core.exceptions import ObjectDoesNotExist | from django.core.exceptions import ObjectDoesNotExist | ||||
from django.core.paginator import Paginator | from django.core.paginator import Paginator | ||||
from django.http import HttpResponse | from django.http import HttpResponse, JsonResponse | ||||
from django.shortcuts import render | from django.shortcuts import render | ||||
from django.views.decorators.http import require_POST | from django.views.decorators.http import require_POST | ||||
from swh.web.admin.adminurls import admin_route | from swh.web.admin.adminurls import admin_route | ||||
from swh.web.common.models import ( | from swh.web.common.models import ( | ||||
SaveAuthorizedOrigin, | SaveAuthorizedOrigin, | ||||
SaveUnauthorizedOrigin, | SaveUnauthorizedOrigin, | ||||
Show All 30 Lines | def _datatables_origin_urls_response(request, urls_query_set): | ||||
table_data["draw"] = int(request.GET["draw"]) | table_data["draw"] = int(request.GET["draw"]) | ||||
table_data["recordsTotal"] = urls_query_set.count() | table_data["recordsTotal"] = urls_query_set.count() | ||||
table_data["recordsFiltered"] = urls_query_set.count() | table_data["recordsFiltered"] = urls_query_set.count() | ||||
length = int(request.GET["length"]) | length = int(request.GET["length"]) | ||||
page = int(request.GET["start"]) / length + 1 | page = int(request.GET["start"]) / length + 1 | ||||
paginator = Paginator(urls_query_set, length) | paginator = Paginator(urls_query_set, length) | ||||
urls_query_set = paginator.page(page).object_list | urls_query_set = paginator.page(page).object_list | ||||
table_data["data"] = [{"url": u.url} for u in urls_query_set] | table_data["data"] = [{"url": u.url} for u in urls_query_set] | ||||
table_data_json = json.dumps(table_data, separators=(",", ": ")) | return JsonResponse(table_data) | ||||
return HttpResponse(table_data_json, content_type="application/json") | |||||
@admin_route( | @admin_route( | ||||
r"origin/save/authorized_urls/list/", | r"origin/save/authorized_urls/list/", | ||||
view_name="admin-origin-save-authorized-urls-list", | view_name="admin-origin-save-authorized-urls-list", | ||||
) | ) | ||||
@staff_member_required(view_func=None, login_url=settings.LOGIN_URL) | @staff_member_required(view_func=None, login_url=settings.LOGIN_URL) | ||||
def _admin_origin_save_authorized_urls_list(request): | def _admin_origin_save_authorized_urls_list(request): | ||||
▲ Show 20 Lines • Show All 147 Lines • Show Last 20 Lines |