0.8.14
processing forms
This commit is contained in:
@@ -88,6 +88,10 @@ def send_message_ajax(request):
|
|||||||
form_type = 'two_fields'
|
form_type = 'two_fields'
|
||||||
|
|
||||||
if name =='phone':
|
if name =='phone':
|
||||||
|
from BaseModels.validators.form_field_validators import get_phone_valid_error
|
||||||
|
error = get_phone_valid_error(data["phone"])
|
||||||
|
if error:
|
||||||
|
errors.update({name: _(error)})
|
||||||
phone_str = f'<b>{_("Телефон")}:</b> {data["phone"]}<br>'
|
phone_str = f'<b>{_("Телефон")}:</b> {data["phone"]}<br>'
|
||||||
|
|
||||||
if name =='email':
|
if name =='email':
|
||||||
|
|||||||
@@ -96,27 +96,27 @@ def sortByLength(inputStr):
|
|||||||
return len(inputStr)
|
return len(inputStr)
|
||||||
|
|
||||||
|
|
||||||
def add_domain(request, url, add_lang=False):
|
# def add_domain(request, url, add_lang=False):
|
||||||
domain = get_domain_by_request(request)
|
# domain = get_domain_by_request(request)
|
||||||
if add_lang:
|
# if add_lang:
|
||||||
cur_lang = get_cur_lang_by_request(request)
|
# cur_lang = get_cur_lang_by_request(request)
|
||||||
return '{0}/{1}/{2}'.format(domain, cur_lang, url)
|
# return '{0}/{1}/{2}'.format(domain, cur_lang, url)
|
||||||
else:
|
# else:
|
||||||
return '{0}{1}'.format(domain, url)
|
# return '{0}{1}'.format(domain, url)
|
||||||
|
|
||||||
|
|
||||||
def get_domain_by_request(request):
|
# def get_domain_by_request(request):
|
||||||
from project_sets import domain
|
# from project_sets import domain
|
||||||
if request.query_params and 'domain' in request.query_params:
|
# if request.query_params and 'domain' in request.query_params:
|
||||||
return request.query_params['domain']
|
# return request.query_params['domain']
|
||||||
return domain
|
# return domain
|
||||||
|
#
|
||||||
|
#
|
||||||
def get_cur_lang_by_request(request):
|
# def get_cur_lang_by_request(request):
|
||||||
from project_sets import lang
|
# from project_sets import lang
|
||||||
if request.query_params and 'cur_lang' in request.query_params:
|
# if request.query_params and 'cur_lang' in request.query_params:
|
||||||
return request.query_params['cur_lang']
|
# return request.query_params['cur_lang']
|
||||||
return lang
|
# return lang
|
||||||
|
|
||||||
|
|
||||||
def get_img_type_by_request(request):
|
def get_img_type_by_request(request):
|
||||||
@@ -416,6 +416,8 @@ def kill_pretexts(txt):
|
|||||||
return ' '.join(words)
|
return ' '.join(words)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
def stay_only_text_and_numbers(txt):
|
def stay_only_text_and_numbers(txt):
|
||||||
bad_symbols = '"~`{}[]|!@#$%^&*()_+№;:?= '
|
bad_symbols = '"~`{}[]|!@#$%^&*()_+№;:?= '
|
||||||
nums = '0123456789'
|
nums = '0123456789'
|
||||||
|
|||||||
12
BaseModels/validators/form_field_validators.py
Normal file
12
BaseModels/validators/form_field_validators.py
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
from django.utils.translation import gettext as _
|
||||||
|
def get_phone_valid_error(val):
|
||||||
|
allow_chars = '01234567890()+ -'
|
||||||
|
|
||||||
|
i = 0
|
||||||
|
while i < len(val):
|
||||||
|
if val[i] not in allow_chars:
|
||||||
|
return _('Некорректные символы в номере телефона, пример корректного ввода +7 925 8600100')
|
||||||
|
|
||||||
|
i += 1
|
||||||
|
|
||||||
|
return None
|
||||||
@@ -25,7 +25,7 @@
|
|||||||
type="text"
|
type="text"
|
||||||
{# {% if form.name %} required{% endif %}#}
|
{# {% if form.name %} required{% endif %}#}
|
||||||
|
|
||||||
placeholder="{% translate 'Имя' %}" {% if form.data.name %} value="{{ form.data.name }}"{% endif %}>
|
placeholder="{% translate 'Имя' %}" {% if form.name %} value="{{ form.name }}"{% endif %}>
|
||||||
{% if form.errors.name %}
|
{% if form.errors.name %}
|
||||||
<span>{{ form.errors.name }}</span>
|
<span>{{ form.errors.name }}</span>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
@@ -36,7 +36,7 @@
|
|||||||
name="email"
|
name="email"
|
||||||
type="email"
|
type="email"
|
||||||
|
|
||||||
placeholder="Е-mail"{% if form.data.email %} value="{{ form.data.email }}"{% endif %}
|
placeholder="Е-mail"{% if form.email %} value="{{ form.email }}"{% endif %}
|
||||||
>
|
>
|
||||||
{% if form.errors.email %}
|
{% if form.errors.email %}
|
||||||
<span>{{ form.errors.email }}</span>
|
<span>{{ form.errors.email }}</span>
|
||||||
@@ -47,7 +47,7 @@
|
|||||||
<input name="phone"
|
<input name="phone"
|
||||||
type="tel"
|
type="tel"
|
||||||
|
|
||||||
placeholder="{% translate 'Телефон' %}"{% if form.data.phone %} value="{{ form.data.phone }}"{% endif %}>
|
placeholder="{% translate 'Телефон' %}"{% if form.phone %} value="{{ form.phone }}"{% endif %}>
|
||||||
{% if form.errors.phone %}
|
{% if form.errors.phone %}
|
||||||
<span>{{ form.errors.phone }}</span>
|
<span>{{ form.errors.phone }}</span>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
@@ -66,7 +66,7 @@
|
|||||||
placeholder= '{% translate "Сообщение" %}'
|
placeholder= '{% translate "Сообщение" %}'
|
||||||
{# value="{% if form.data.text_msg %}{{ form.initial.text_msg }}{% endif %}"#}
|
{# value="{% if form.data.text_msg %}{{ form.initial.text_msg }}{% endif %}"#}
|
||||||
maxlength="100"
|
maxlength="100"
|
||||||
></textarea>
|
>{% if form.text_msg %}{{ form.text_msg }}{% endif %}</textarea>
|
||||||
<span class="counter-text">
|
<span class="counter-text">
|
||||||
<span class="counter-text__current">0</span>
|
<span class="counter-text__current">0</span>
|
||||||
/
|
/
|
||||||
|
|||||||
Reference in New Issue
Block a user