Merge remote-tracking branch 'origin/main'

This commit is contained in:
2023-12-01 12:02:59 +03:00

View File

@@ -16,6 +16,7 @@ from django.core.exceptions import ValidationError
import json
from django.core.files import File
import base64
from django.core.validators import validate_email
# @login_required(login_url='/profile/login/')
@@ -71,18 +72,54 @@ def send_message_ajax(request):
phone_str = ''
email_str = ''
msg_str = ''
if request_type:
request_type_str = f'<b>{_("Тип запроса")}:</b> {request_type}<br>'
if 'name' in data:
name_str = f'<b>{_("Имя")}:</b> {data["name"]}<br>'
if 'phone' in data:
phone_str = f'<b>{_("Телефон")}:</b> {data["phone"]}<br>'
if 'email' in data:
email_str = f'<b>{_("email")}:</b> {data["email"]}<br>'
if 'text_msg' in data:
msg_str = (f'<b>{_("Сообщение")}:</b><br>'
f'<div style="margin-left: 40px; line-height: 20px;">{data["text_msg"]}</div><br>')
form_type = 'one_field'
errors = {}
for name, val in data.items():
if not val:
errors.update({name: _('Обязательное поле')})
if name == 'form_name':
request_type_str = f'<b>{_("Тип запроса")}:</b> {request_type}<br>'
if name == 'name':
name_str = f'<b>{_("Имя")}:</b> {data["name"]}<br>'
if form_type == 'one_field':
form_type = 'two_fields'
if name =='phone':
phone_str = f'<b>{_("Телефон")}:</b> {data["phone"]}<br>'
if name =='email':
try:
error = validate_email(data["email"])
except ValidationError as e:
error = e.message
if error:
errors.update({name: _(error)})
email_str = f'<b>{_("email")}:</b> {data["email"]}<br>'
if name =='text_msg':
msg_str = (f'<b>{_("Сообщение")}:</b><br>'
f'<div style="margin-left: 40px; line-height: 20px;">{data["text_msg"]}</div><br>')
form_type = 'full'
if errors:
Dict = {
'form': data.dict()
}
Dict['form'].update({
'errors': errors
})
tpl = 'forms/f_one_field_form.html'
if form_type == 'full':
tpl = 'forms/f_feedback_form.html'
elif form_type == 'two_fields':
tpl = 'forms/f_commercial_offer.html'
html = render_to_string(tpl, Dict, request)
return JsonResponse({'html': html}, status=400)
Dict = {
'logo': f'{request.scheme}://{sets["domain"]}/static/img/svg/LogoMobile.svg',
@@ -118,7 +155,7 @@ def send_message_ajax(request):
except Exception as e:
return JsonResponse({
'status': 'error',
'error': str(e)
'html': str(e)
}, status=400)