replaced removed .is_ajax method with request.headers.get('x-requested-with') == 'XMLHttpRequest'.

- https://docs.djangoproject.com/en/3.2/releases/3.1/#id2
> The HttpRequest.is_ajax() method is deprecated as it relied on a jQuery-specific way of signifying AJAX calls, while current usage tends to use the JavaScript Fetch API. Depending on your use case, you can either write your own AJAX detection method, or use the new HttpRequest.accepts() method if your code depends on the client Accept HTTP header.
pull/7560/head
Jochen Wersdörfer 2021-09-28 12:34:16 +02:00 zatwierdzone przez LB Johnston
rodzic 7a0f3b3684
commit e7fe66a93e
8 zmienionych plików z 13 dodań i 13 usunięć

Wyświetl plik

@ -35,7 +35,7 @@ def users_with_page_permission(page, permission_type, include_superusers=True):
def permission_denied(request):
"""Return a standard 'permission denied' response"""
if request.is_ajax():
if request.headers.get('x-requested-with') == 'XMLHttpRequest':
raise PermissionDenied
from wagtail.admin import messages
@ -141,7 +141,7 @@ def user_has_any_page_permission(user):
def reject_request(request):
if request.is_ajax():
if request.headers.get('x-requested-with') == 'XMLHttpRequest':
raise PermissionDenied
# import redirect_to_login here to avoid circular imports on model files that import
@ -193,12 +193,12 @@ def require_admin_access(view_func):
return view_func(request, *args, **kwargs)
except PermissionDenied:
if request.is_ajax():
if request.headers.get('x-requested-with') == 'XMLHttpRequest':
raise
return permission_denied(request)
if not request.is_ajax():
if not request.headers.get('x-requested-with') == 'XMLHttpRequest':
messages.error(request, _('You do not have permission to access the admin'))
return reject_request(request)

Wyświetl plik

@ -93,7 +93,7 @@ def search(request):
paginator = Paginator(pages, per_page=20)
pages = paginator.get_page(request.GET.get('p'))
if request.is_ajax():
if request.headers.get('x-requested-with') == 'XMLHttpRequest':
return TemplateResponse(request, "wagtailadmin/pages/search_results.html", {
'pages': pages,
'all_pages': all_pages,

Wyświetl plik

@ -88,13 +88,13 @@ class WorkflowAction(BaseWorkflowFormView):
form = self.form_class(request.POST)
if form.is_valid():
redirect_to = self.task.on_action(self.task_state, request.user, self.action_name, **form.cleaned_data) or self.redirect_to
elif self.action_modal and request.is_ajax():
elif self.action_modal and request.headers.get('x-requested-with') == 'XMLHttpRequest':
# show form errors
return self.render_modal_form(request, form)
else:
redirect_to = self.task.on_action(self.task_state, request.user, self.action_name) or self.redirect_to
if request.is_ajax():
if request.headers.get('x-requested-with') == 'XMLHttpRequest':
return render_modal_workflow(request, '', None, {}, json_data={'step': 'success', 'redirect': redirect_to})
return redirect(redirect_to)
@ -113,7 +113,7 @@ class CollectWorkflowActionData(BaseWorkflowFormView):
form = self.form_class(request.POST)
if form.is_valid():
return render_modal_workflow(request, '', None, {}, json_data={'step': 'success', 'cleaned_data': form.cleaned_data})
elif self.action_modal and request.is_ajax():
elif self.action_modal and request.headers.get('x-requested-with') == 'XMLHttpRequest':
# show form errors
return self.render_modal_form(request, form)

Wyświetl plik

@ -54,7 +54,7 @@ def index(request):
redirects = paginator.get_page(request.GET.get('p'))
# Render template
if request.is_ajax():
if request.headers.get('x-requested-with') == 'XMLHttpRequest':
return TemplateResponse(request, "wagtailredirects/results.html", {
'ordering': ordering,
'redirects': redirects,

Wyświetl plik

@ -48,7 +48,7 @@ def index(request):
paginator = Paginator(queries, per_page=20)
queries = paginator.get_page(request.GET.get('p'))
if request.is_ajax():
if request.headers.get('x-requested-with') == 'XMLHttpRequest':
return TemplateResponse(request, "wagtailsearchpromotions/results.html", {
'is_searching': is_searching,
'ordering': ordering,

Wyświetl plik

@ -1102,7 +1102,7 @@ class Page(AbstractPage, index.Indexed, ClusterableModel, metaclass=PageBase):
return context
def get_template(self, request, *args, **kwargs):
if request.is_ajax():
if request.headers.get('x-requested-with') == 'XMLHttpRequest':
return self.ajax_template or self.template
else:
return self.template

Wyświetl plik

@ -61,7 +61,7 @@ class IndexView(mixins.SearchableListMixin, generic.IndexView):
ordering = ['name']
def get_template_names(self):
if self.request.is_ajax():
if self.request.headers.get('x-requested-with') == 'XMLHttpRequest':
return ['wagtailusers/groups/results.html']
else:
return ['wagtailusers/groups/index.html']

Wyświetl plik

@ -101,7 +101,7 @@ def index(request, *args):
paginator = Paginator(users.select_related('wagtail_userprofile'), per_page=20)
users = paginator.get_page(request.GET.get('p'))
if request.is_ajax():
if request.headers.get('x-requested-with') == 'XMLHttpRequest':
return TemplateResponse(request, "wagtailusers/users/results.html", {
'users': users,
'is_searching': is_searching,