Merge remote-tracking branch 'origin/main'

This commit is contained in:
SBD
2023-12-09 21:30:26 +03:00
6 changed files with 98 additions and 18 deletions

View File

@@ -90,6 +90,7 @@ class Admin_StackedInline_Block(Admin_Trans_GenericBaseIconStackedInline, SuperI
# class Admin_StaticPage(NestedModelAdmin, Admin_Trans_BaseModelViewPage):
class Admin_StaticPage(SuperModelAdmin, Admin_Trans_BaseModelViewPage):
from ServicesApp.admin import Admin_StackedInline_BlockPluginPresentation
fieldsets = [
@@ -120,20 +121,24 @@ class Admin_StaticPage(SuperModelAdmin, Admin_Trans_BaseModelViewPage):
'order', 'modifiedDT', 'createDT'
]
list_display_links = ['id']
list_display_links = ['id', 'image_thumb', 'name']
list_editable = ['order']
list_filter = ['modifiedDT', 'createDT']
search_fields = ['name', 'title']
# filter_horizontal = ['options']
inlines = [Admin_StackedInline_Block]
inlines = [
Admin_StackedInline_BlockPluginPresentation,
Admin_StackedInline_Block,
AdminStacked_FAQitem,
]
def has_delete_permission(self, request, obj=None):
if request.user.is_superuser:
return True
if obj.url in ('main', 'spec_technics', 'works'):
if obj.url in ('main', 'contacts'):
return False
admin.site.register(StaticPage,Admin_StaticPage)
@@ -249,9 +254,10 @@ class Admin_Office(Admin_Trans_BaseModelViewPage):
# 'main_office',
'city',
'address',
'picture',
(
'work_time_from', 'work_time_to',
# 'workTime',
'workTime',
),
# ('legal_name', 'unp', 'legal_address', 'urInfo'),
# 'fullContactInfo',
@@ -268,7 +274,7 @@ class Admin_Office(Admin_Trans_BaseModelViewPage):
save_on_top = True
# prepopulated_fields = {"url": ("name",)}
list_display = [
'id', 'enable', 'order', 'city', 'address', 'work_time_from', 'work_time_to',
'image_thumb', 'id', 'enable', 'order', 'city', 'address', 'work_time_from', 'work_time_to',
# 'main_office',
'modifiedDT', 'createDT'
]

View File

@@ -0,0 +1,28 @@
# Generated by Django 4.2.7 on 2023-12-09 21:19
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('GeneralApp', '0020_alter_office_options_office_work_time_from_en_and_more'),
]
operations = [
migrations.AlterField(
model_name='office',
name='workTime',
field=models.CharField(blank=True, max_length=220, null=True, verbose_name='Комментарий к времени работы'),
),
migrations.AlterField(
model_name='office',
name='workTime_en',
field=models.CharField(blank=True, max_length=220, null=True, verbose_name='Комментарий к времени работы'),
),
migrations.AlterField(
model_name='office',
name='workTime_ru',
field=models.CharField(blank=True, max_length=220, null=True, verbose_name='Комментарий к времени работы'),
),
]

View File

@@ -171,7 +171,7 @@ class Office(BaseModelViewPage):
city = models.CharField(max_length=250, verbose_name=_(u'Город'))
address = models.CharField(max_length=250, verbose_name=_(u'Адрес'), null=True, blank=True)
workTime = models.CharField(
max_length=220, verbose_name=_(u'Комментарий к времени работы'),
max_length=220, verbose_name=_(u'Комментарий к времени работы'), null=True, blank=True
# help_text='добавляется справа от времени работы'
)
work_time_from = models.TimeField(verbose_name=_('Время работы с'), default=work_time_default_from())

View File

@@ -6,6 +6,7 @@ from .views import *
urlpatterns = [
path('', MainPage, name='main'),
path('contacts/', contacts_view, name='contacts'),
path('page/<str:url>/', StaticPageView, name='static_page'),
path('test_code', test_code, name='test_code'),
]

View File

@@ -29,6 +29,14 @@ def MainPage(request):
name_ru = _('Главная')
)
try:
page = StaticPage.objects.get(url='contacts')
except StaticPage.DoesNotExist:
page = StaticPage.objects.create(
url='contacts',
name_ru = _('Контакты')
)
# from ArticlesApp.models import ArticleModel
# arts = ArticleModel.objects.filter(enable=True).order_by('-createDT')[:4]
@@ -56,18 +64,7 @@ def StaticPageView(request, url):
if url == '':
return MainPage(request)
elif url == 'for_movers':
Dict.update({
# 'route_form': RouteForm(),
'owner_type': 'customer',
})
elif url == 'for_customers':
Dict.update({
# 'route_form': RouteForm(),
'owner_type': 'mover'
})
# elif url == 'works':
# return WorksPage(request)
elif url in ['main']:
raise Http404
@@ -92,3 +89,22 @@ def StaticPageView(request, url):
# return HttpResponse(t.render(Dict, request))
def contacts_view(request):
# from RoutesApp.forms import RouteForm
# from SubscribesApp.funcs import get_subsribes_w_options
try:
page = StaticPage.objects.get(url='contacts')
except Exception as e:
page = StaticPage.objects.create(
url='contacts',
name_ru=_('Контакты')
)
Dict = {
'page': page,
'offices': Office.objects.filter(enable=True)
}
t = loader.get_template('pages/p_contacts.html')
return get_inter_http_respose(t, Dict, request)
# return HttpResponse(t.render(Dict, request))

View File

@@ -0,0 +1,29 @@
{% extends 'tb_base.html' %}
{% block CONTENT %}
<div>
Контакты
<div>
{% for office in offices %}
<div>
{% if office.picture %}
<img src="{{ MEDIA_URL }}{{ office.picture }}" alt="{{ office.city }}" />
{% endif %}
<div>{{ office.city }}</div>
<div>{{ office.address }}</div>
Часы работы:
<div>{{ office.work_time_from }} - {{ office.work_time_to }}</div>
<div>{{ office.work_time }}</div>
<div>
{% for contact in office.contacts %}
<div>
{% if contact.contact_label %}{{ contact.contact_label }}: {% endif %}{{ contact.get_prefix_w_data }}
</div>
{% endfor %}
</div>
</div>
{% endfor %}
</div>
</div>
{% endblock %}