0001-django4-replaced-deprecated-request.is_ajax-call-685.patch
combo/apps/dashboard/views.py | ||
---|---|---|
37 | 37 | |
38 | 38 |
from combo.data.models import CellBase, ConfigJsonCell |
39 | 39 |
from combo.public.views import render_cell |
40 |
from combo.utils import is_ajax |
|
40 | 41 | |
41 | 42 |
from .models import DashboardCell, Tile |
42 | 43 |
from .templatetags.dashboard import get_cell_data |
... | ... | |
45 | 46 |
def dashboard_success(request, dashboard, cell_data): |
46 | 47 |
dashboard_url = dashboard.page.get_online_url() |
47 | 48 | |
48 |
if request.is_ajax():
|
|
49 |
if is_ajax(request):
|
|
49 | 50 |
return HttpResponse( |
50 | 51 |
json.dumps({'err': 0, 'url': request.build_absolute_uri(dashboard_url), 'cell_data': cell_data}), |
51 | 52 |
content_type='application/json', |
combo/apps/lingo/views.py | ||
---|---|---|
49 | 49 |
from combo.data.models import Page |
50 | 50 |
from combo.profile.utils import get_user_from_name_id |
51 | 51 |
from combo.public.views import publish_page |
52 |
from combo.utils import DecryptionError, aes_hex_decrypt, check_request_signature |
|
52 |
from combo.utils import DecryptionError, aes_hex_decrypt, check_request_signature, is_ajax
|
|
53 | 53 | |
54 | 54 |
from .models import ( |
55 | 55 |
EXPIRED, |
... | ... | |
844 | 844 |
return {'item': None, 'err_desc': _('No item was found.')} |
845 | 845 | |
846 | 846 |
def get_template_names(self): |
847 |
if self.request.is_ajax:
|
|
847 |
if is_ajax(self.request):
|
|
848 | 848 |
return ['lingo/combo/item.html'] |
849 | 849 |
return ['lingo/combo/invoice_fullpage.html'] |
850 | 850 |
combo/manager/views.py | ||
---|---|---|
66 | 66 |
import_site_tar, |
67 | 67 |
) |
68 | 68 |
from combo.urls_utils import staff_required |
69 |
from combo.utils.misc import is_portal_agent |
|
69 |
from combo.utils.misc import is_ajax, is_portal_agent
|
|
70 | 70 | |
71 | 71 |
from .forms import ( |
72 | 72 |
CellDuplicateForm, |
... | ... | |
1043 | 1043 |
return self.model().get_form_class_for_link_list_cell() |
1044 | 1044 | |
1045 | 1045 |
def form_valid(self, form): |
1046 |
if self.request.is_ajax():
|
|
1046 |
if is_ajax(self.request):
|
|
1047 | 1047 |
self.object = form.save() |
1048 | 1048 |
response = self.form_invalid(form) # avoid redirection |
1049 | 1049 |
else: |
combo/public/views.py | ||
---|---|---|
141 | 141 |
action_response = cell.post(request) |
142 | 142 |
except PostException as e: |
143 | 143 |
exception = e |
144 |
if not request.is_ajax():
|
|
144 |
if not utils.is_ajax(request):
|
|
145 | 145 |
messages.error(request, force_str(e) if force_str(e) != 'None' else _('Error sending data.')) |
146 | 146 | |
147 | 147 |
if action_response: |
... | ... | |
152 | 152 |
response['Content-Disposition'] = action_response.headers['Content-Disposition'] |
153 | 153 |
return response |
154 | 154 | |
155 |
if not request.is_ajax():
|
|
155 |
if not utils.is_ajax(request):
|
|
156 | 156 |
return HttpResponseRedirect(cell.page.get_online_url()) |
157 | 157 | |
158 | 158 |
response = render_cell(request, cell) |
combo/utils/__init__.py | ||
---|---|---|
17 | 17 |
# import specific symbols for compatibility |
18 | 18 |
from .cache import cache_during_request |
19 | 19 |
from .crypto import DecryptionError, aes_hex_decrypt, aes_hex_encrypt |
20 |
from .misc import ellipsize, flatten_context |
|
20 |
from .misc import ellipsize, flatten_context, is_ajax
|
|
21 | 21 |
from .requests_wrapper import NothingInCacheException, requests |
22 | 22 |
from .signature import check_query, check_request_signature, sign_url |
23 | 23 |
from .urls import TemplateError, get_templated_url, is_templated_url |
combo/utils/misc.py | ||
---|---|---|
64 | 64 |
if service.get('is-portal-agent') and not service.get('secret'): |
65 | 65 |
return True |
66 | 66 |
return False |
67 | ||
68 | ||
69 |
def is_ajax(request): |
|
70 |
return request.headers.get('x-requested-with') == 'XMLHttpRequest' |
|
67 |
- |