Merge remote-tracking branch 'origin/main'
This commit is contained in:
@@ -16,6 +16,7 @@ from django.core.exceptions import ValidationError
|
|||||||
import json
|
import json
|
||||||
from django.core.files import File
|
from django.core.files import File
|
||||||
import base64
|
import base64
|
||||||
|
from django.core.validators import validate_email
|
||||||
|
|
||||||
|
|
||||||
# @login_required(login_url='/profile/login/')
|
# @login_required(login_url='/profile/login/')
|
||||||
@@ -71,18 +72,54 @@ def send_message_ajax(request):
|
|||||||
phone_str = ''
|
phone_str = ''
|
||||||
email_str = ''
|
email_str = ''
|
||||||
msg_str = ''
|
msg_str = ''
|
||||||
if request_type:
|
form_type = 'one_field'
|
||||||
request_type_str = f'<b>{_("Тип запроса")}:</b> {request_type}<br>'
|
errors = {}
|
||||||
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>')
|
|
||||||
|
|
||||||
|
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 = {
|
Dict = {
|
||||||
'logo': f'{request.scheme}://{sets["domain"]}/static/img/svg/LogoMobile.svg',
|
'logo': f'{request.scheme}://{sets["domain"]}/static/img/svg/LogoMobile.svg',
|
||||||
@@ -118,7 +155,7 @@ def send_message_ajax(request):
|
|||||||
except Exception as e:
|
except Exception as e:
|
||||||
return JsonResponse({
|
return JsonResponse({
|
||||||
'status': 'error',
|
'status': 'error',
|
||||||
'error': str(e)
|
'html': str(e)
|
||||||
}, status=400)
|
}, status=400)
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user