Merge remote-tracking branch 'origin/main'
This commit is contained in:
@@ -39,7 +39,7 @@ class Admin_ProfileInline(admin.StackedInline):
|
|||||||
(None, {
|
(None, {
|
||||||
'classes': ['wide'],
|
'classes': ['wide'],
|
||||||
'fields': (
|
'fields': (
|
||||||
('account_type',),
|
# ('account_type',),
|
||||||
('enable',),
|
('enable',),
|
||||||
('phone',),
|
('phone',),
|
||||||
('country', 'city'),
|
('country', 'city'),
|
||||||
@@ -107,45 +107,45 @@ admin.site.unregister(User)
|
|||||||
admin.site.register(User, Admin_User)
|
admin.site.register(User, Admin_User)
|
||||||
|
|
||||||
|
|
||||||
class Admin_UserProfile(Admin_BaseIconModel):
|
# class Admin_UserProfile(Admin_BaseIconModel):
|
||||||
|
#
|
||||||
fieldsets = (
|
# fieldsets = (
|
||||||
(None, {
|
# (None, {
|
||||||
'classes': ['wide'],
|
# 'classes': ['wide'],
|
||||||
'fields': (
|
# 'fields': (
|
||||||
'user', 'enable',
|
# 'user', 'enable',
|
||||||
('account_type',),
|
# ('account_type',),
|
||||||
('phone',),
|
# ('phone',),
|
||||||
('country', 'city'),
|
# ('country', 'city'),
|
||||||
('authMailCode',),
|
# ('authMailCode',),
|
||||||
('birthdate'),
|
# ('birthdate'),
|
||||||
'creator'
|
# 'creator'
|
||||||
)
|
# )
|
||||||
}),
|
# }),
|
||||||
('1С', {
|
# ('1С', {
|
||||||
'classes': ['wide'],
|
# 'classes': ['wide'],
|
||||||
'fields': (
|
# 'fields': (
|
||||||
('name',),
|
# ('name',),
|
||||||
)
|
# )
|
||||||
}),
|
# }),
|
||||||
)
|
# )
|
||||||
|
#
|
||||||
save_on_top = True
|
# save_on_top = True
|
||||||
|
#
|
||||||
list_display = [
|
# list_display = [
|
||||||
'id', 'user', 'enable', 'birthdate', 'modifiedDT', 'createDT'
|
# 'id', 'user', 'enable', 'birthdate', 'modifiedDT', 'createDT'
|
||||||
]
|
# ]
|
||||||
list_editable = ['enable', 'birthdate']
|
# list_editable = ['enable', 'birthdate']
|
||||||
list_display_links = ['id', ] # 'user__last_name', 'user__first_name']
|
# list_display_links = ['id', ] # 'user__last_name', 'user__first_name']
|
||||||
search_fields = [
|
# search_fields = [
|
||||||
'id', 'user__last_name', 'user__first_name', 'user__email',
|
# 'id', 'user__last_name', 'user__first_name', 'user__email',
|
||||||
]
|
# ]
|
||||||
|
#
|
||||||
list_filter = ['enable', 'account_type']
|
# list_filter = ['enable', 'account_type']
|
||||||
|
#
|
||||||
# filter_horizontal = ['connected_mailings']
|
# # filter_horizontal = ['connected_mailings']
|
||||||
# raw_id_fields = ("favourites",)
|
# # raw_id_fields = ("favourites",)
|
||||||
verbose_name_plural = _(u'Профиль пользователя')
|
# verbose_name_plural = _(u'Профиль пользователя')
|
||||||
|
#
|
||||||
|
#
|
||||||
admin.site.register(UserProfile, Admin_UserProfile)
|
# admin.site.register(UserProfile, Admin_UserProfile)
|
||||||
|
|||||||
@@ -52,33 +52,33 @@ class Admin_StaticPage(Admin_Trans_BaseModelViewPage):
|
|||||||
|
|
||||||
admin.site.register(StaticPage,Admin_StaticPage)
|
admin.site.register(StaticPage,Admin_StaticPage)
|
||||||
|
|
||||||
class Admin_Block(Admin_Trans_BaseModel):
|
# class Admin_Block(Admin_Trans_BaseModel):
|
||||||
pass
|
# pass
|
||||||
|
#
|
||||||
# def get_fieldsets(self, request, obj=None):
|
# # def get_fieldsets(self, request, obj=None):
|
||||||
# fieldsets = super(type(self), self).get_fieldsets(request, obj)
|
# # fieldsets = super(type(self), self).get_fieldsets(request, obj)
|
||||||
# if not request.user.is_superuser and obj.name and obj.name in ('About US', 'machines', 'works'):
|
# # if not request.user.is_superuser and obj.name and obj.name in ('About US', 'machines', 'works'):
|
||||||
# fieldsets[0][1]['fields'].pop(0)
|
# # fieldsets[0][1]['fields'].pop(0)
|
||||||
# fieldsets.insert(
|
# # fieldsets.insert(
|
||||||
# 1, (_('Контент'), {
|
# # 1, (_('Контент'), {
|
||||||
# 'classes': ['wide'],
|
# # 'classes': ['wide'],
|
||||||
# 'fields': (
|
# # 'fields': (
|
||||||
# 'title', 'description', 'text',
|
# # 'title', 'description', 'text',
|
||||||
# 'picture',
|
# # 'picture',
|
||||||
# )
|
# # )
|
||||||
#
|
# #
|
||||||
# })
|
# # })
|
||||||
# )
|
# # )
|
||||||
# return fieldsets
|
# # return fieldsets
|
||||||
#
|
# #
|
||||||
# def has_delete_permission(self, request, obj=None):
|
# # def has_delete_permission(self, request, obj=None):
|
||||||
# if request.user.is_superuser:
|
# # if request.user.is_superuser:
|
||||||
# return True
|
# # return True
|
||||||
#
|
# #
|
||||||
# if obj.name in ('About US', 'machines', 'works'):
|
# # if obj.name in ('About US', 'machines', 'works'):
|
||||||
# return False
|
# # return False
|
||||||
|
#
|
||||||
admin.site.register(Block,Admin_Block)
|
# admin.site.register(Block,Admin_Block)
|
||||||
|
|
||||||
class Admin_Option(Admin_Trans_BaseModel):
|
class Admin_Option(Admin_Trans_BaseModel):
|
||||||
|
|
||||||
|
|||||||
@@ -3,47 +3,47 @@ from django.utils.translation import gettext as _
|
|||||||
|
|
||||||
|
|
||||||
required_options_Dict = {
|
required_options_Dict = {
|
||||||
'Адрес почтового сервера': {
|
'mail_server_url': {
|
||||||
'name_ru': 'Адрес почтового сервера',
|
'name_ru': 'Адрес почтового сервера',
|
||||||
'opt_type': 'mail_server_url',
|
'opt_type': 'mail_server_url',
|
||||||
'value': '213.142.147.40',
|
'value': '213.142.147.40',
|
||||||
},
|
},
|
||||||
'SMTP порт почтового сервера': {
|
'mail_server_smtp_port': {
|
||||||
'name_ru': 'SMTP порт почтового сервера',
|
'name_ru': 'SMTP порт почтового сервера',
|
||||||
'opt_type': 'mail_server_smtp_port',
|
'opt_type': 'mail_server_smtp_port',
|
||||||
'value': 587,
|
'value': 587,
|
||||||
},
|
},
|
||||||
'login для отправки писем с сайта': {
|
'sender_mail_login': {
|
||||||
'name_ru': 'email для отправки писем с сайта',
|
'name_ru': 'email для отправки писем с сайта',
|
||||||
'opt_type': 'sender_mail_login',
|
'opt_type': 'sender_mail_login',
|
||||||
'value': 'admin@tripwb.com',
|
'value': 'admin@tripwb.com',
|
||||||
},
|
},
|
||||||
'email для отправки': {
|
'sender_email': {
|
||||||
'name_ru': 'email для отправки',
|
'name_ru': 'email для отправки',
|
||||||
'opt_type': 'sender_email',
|
'opt_type': 'sender_email',
|
||||||
'value': 'admin@tripwb.com',
|
'value': 'admin@tripwb.com',
|
||||||
},
|
},
|
||||||
'Пароль для отправки писем с сайта': {
|
'sender_mail_password': {
|
||||||
'name_ru': 'пароль для отправки писем с сайта',
|
'name_ru': 'пароль для отправки писем с сайта',
|
||||||
'opt_type': 'sender_mail_password',
|
'opt_type': 'sender_mail_password',
|
||||||
'value': 't5Fdcah^gdajY',
|
'value': 't5Fdcah^gdajY',
|
||||||
},
|
},
|
||||||
'Название проекта': {
|
'project_name': {
|
||||||
'name_ru': 'Название проекта',
|
'name_ru': 'Название проекта',
|
||||||
'opt_type': 'project_name',
|
'opt_type': 'project_name',
|
||||||
'value': 'TWB',
|
'value': 'TWB',
|
||||||
},
|
},
|
||||||
'Адрес сайта': {
|
'domain': {
|
||||||
'name_ru': 'Адрес сайта',
|
'name_ru': 'Адрес сайта',
|
||||||
'opt_type': 'domain',
|
'opt_type': 'domain',
|
||||||
'value': 'tripwb.com',
|
'value': 'tripwb.com',
|
||||||
},
|
},
|
||||||
'email техподдержки': {
|
'support_email': {
|
||||||
'name_ru': 'email техподдержки',
|
'name_ru': 'email техподдержки',
|
||||||
'opt_type': 'support_email',
|
'opt_type': 'support_email',
|
||||||
'value': 'admin@tripwb.com',
|
'value': 'admin@tripwb.com',
|
||||||
},
|
},
|
||||||
'корпоративный email': {
|
'corp_email': {
|
||||||
'name_ru': 'корпоративный email',
|
'name_ru': 'корпоративный email',
|
||||||
'opt_type': 'corp_email',
|
'opt_type': 'corp_email',
|
||||||
'value': 'admin@tripwb.com',
|
'value': 'admin@tripwb.com',
|
||||||
@@ -53,11 +53,11 @@ required_options_Dict = {
|
|||||||
|
|
||||||
def init_options():
|
def init_options():
|
||||||
options = Option.objects.all()
|
options = Option.objects.all()
|
||||||
option_names = options.values_list('name', flat=True)
|
option_types_list = options.values_list('opt_type', flat=True)
|
||||||
|
|
||||||
opts_for_create = []
|
opts_for_create = []
|
||||||
for name, data_Dict in required_options_Dict.items():
|
for opt_type, data_Dict in required_options_Dict.items():
|
||||||
if not name in option_names:
|
if not opt_type in option_types_list:
|
||||||
opt = Option(**data_Dict)
|
opt = Option(**data_Dict)
|
||||||
opts_for_create.append(opt)
|
opts_for_create.append(opt)
|
||||||
|
|
||||||
|
|||||||
@@ -1989,7 +1989,11 @@ button.cancel_remove.show, button.confirm_remove.show{
|
|||||||
font-style: normal;
|
font-style: normal;
|
||||||
font-weight: 700;
|
font-weight: 700;
|
||||||
line-height: 52px;
|
line-height: 52px;
|
||||||
margin-bottom: 40px;
|
|
||||||
|
}
|
||||||
|
|
||||||
|
.ta_center{
|
||||||
|
margin: 120px auto 40px;
|
||||||
}
|
}
|
||||||
#title_static_customer{
|
#title_static_customer{
|
||||||
text-align: center;
|
text-align: center;
|
||||||
|
|||||||
@@ -951,13 +951,13 @@ function hideErrors(el) {
|
|||||||
let error_footer = document.getElementById('error_footer')
|
let error_footer = document.getElementById('error_footer')
|
||||||
|
|
||||||
|
|
||||||
if(error_feeedback === counter_text ){
|
if(error_feeedback === counter_text && error_feeedback !== null && error_feeedback_text !== null ){
|
||||||
error_feeedback_text.classList.add('hide')
|
error_feeedback_text.classList.add('hide')
|
||||||
} else if(error_feeedback === footer_button ){
|
} else if(error_feeedback === footer_button && error_footer !== null ){
|
||||||
error_footer.classList.add('hide')
|
error_footer.classList.add('hide')
|
||||||
}
|
}
|
||||||
|
|
||||||
else {
|
else if(error_feeedback !== null) {
|
||||||
error_feeedback.classList.add('hide')
|
error_feeedback.classList.add('hide')
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -15,7 +15,7 @@
|
|||||||
type="text"
|
type="text"
|
||||||
onkeydown = "hideErrors(this)"
|
onkeydown = "hideErrors(this)"
|
||||||
placeholder="{% translate 'Имя' %}"
|
placeholder="{% translate 'Имя' %}"
|
||||||
{% if form.data.name %} value="{{ form.data.name }}"{% endif %}>
|
{% if form.name %} value="{{ form.name }}"{% endif %}>
|
||||||
{% if form.errors.name %}
|
{% if form.errors.name %}
|
||||||
<span id="error_com_offer">{{ form.errors.name }}</span>
|
<span id="error_com_offer">{{ form.errors.name }}</span>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
@@ -25,7 +25,7 @@
|
|||||||
<input name="phone"
|
<input name="phone"
|
||||||
type="tel"
|
type="tel"
|
||||||
onkeydown = "hideErrors(this)"
|
onkeydown = "hideErrors(this)"
|
||||||
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 id="error_com_offer">{{ form.errors.phone }}</span>
|
<span id="error_com_offer">{{ form.errors.phone }}</span>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
{% load i18n %}
|
{% load i18n %}
|
||||||
|
|
||||||
<form
|
<form
|
||||||
class="clear_form"
|
class="clear_form_footer"
|
||||||
id="clear_input"
|
id="clear_input"
|
||||||
data-name="msg_from_footer"
|
data-name="msg_from_footer"
|
||||||
{% if form.form_name %}data-name="{{ form.form_name}}"{% endif %}
|
{% if form.form_name %}data-name="{{ form.form_name}}"{% endif %}
|
||||||
|
|||||||
@@ -180,7 +180,7 @@
|
|||||||
<div class="card_title_1">{% translate "в 3 раза" %}</div>
|
<div class="card_title_1">{% translate "в 3 раза" %}</div>
|
||||||
<div class="card_title_2">{% translate "быстрее других сервисов" %}</div>
|
<div class="card_title_2">{% translate "быстрее других сервисов" %}</div>
|
||||||
<div class="card_title_3">{% translate "Почтовые сервисы доставляет посылки в среднем за 10 дней. С нами - быстрее!" %}</div>
|
<div class="card_title_3">{% translate "Почтовые сервисы доставляет посылки в среднем за 10 дней. С нами - быстрее!" %}</div>
|
||||||
<div class="card_gradient"></div>
|
{# <div class="card_gradient"></div>#}
|
||||||
|
|
||||||
|
|
||||||
{# <div class="cards_item_2_right">#}
|
{# <div class="cards_item_2_right">#}
|
||||||
@@ -233,7 +233,7 @@
|
|||||||
|
|
||||||
|
|
||||||
<div class="news_block_main">
|
<div class="news_block_main">
|
||||||
<h2 id=title_static>{% translate "Последние новости" %}</h2>
|
<h2 class="ta_center" id=title_static>{% translate "Последние новости" %}</h2>
|
||||||
{# {% for art in articles %}#}
|
{# {% for art in articles %}#}
|
||||||
{##}
|
{##}
|
||||||
{# <div class="news_item">#}
|
{# <div class="news_item">#}
|
||||||
|
|||||||
Reference in New Issue
Block a user