From 61f69c21f7576c22d06d308d982d8c8a6c258703 Mon Sep 17 00:00:00 2001 From: erjemin Date: Thu, 30 Apr 2026 23:20:34 +0300 Subject: [PATCH] =?UTF-8?q?mod:=20=D0=B8=D0=B7=D0=BC=D0=B5=D0=BD=D0=B5?= =?UTF-8?q?=D0=BD=D0=B8=D0=B5=20=D1=80=D0=BE=D1=83=D1=82=D0=B8=D0=BD=D0=B3?= =?UTF-8?q?=D0=B0=20=D0=B4=D0=BB=D1=8F=20=D1=81=D1=82=D1=80=D0=B0=D0=BD?= =?UTF-8?q?=D0=B8=D1=86=D1=8B=20=D1=86=D0=B5=D0=BD=D0=BE=D0=B2=D1=8B=D1=85?= =?UTF-8?q?=20=D0=BF=D1=80=D0=B5=D0=B4=D0=BB=D0=BE=D0=B6=D0=B5=D0=BD=D0=B8?= =?UTF-8?q?=D0=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- oknardia/oknardia/urls.py | 10 ++-- oknardia/templates/price/price_list.html | 5 +- .../seria_info/all_seria_info_pre_light.html | 32 ++++++------ oknardia/templates/seria_info/geo_map.html | 21 +++++--- oknardia/web/catalog_series.py | 18 ++++--- .../management/commands/generate_sitemaps.py | 14 ++++- oknardia/web/prices.py | 51 +++++++++++++++++++ 7 files changed, 114 insertions(+), 37 deletions(-) diff --git a/oknardia/oknardia/urls.py b/oknardia/oknardia/urls.py index 589d81e..dd1ce61 100644 --- a/oknardia/oknardia/urls.py +++ b/oknardia/oknardia/urls.py @@ -84,11 +84,14 @@ urlpatterns = [ prices.redirect_one_win_price_legacy), # LEGACY-URL: 301 -> КАНОНИЧЕСКИЙ ПУТЬ re_path(r'^next_price_one_flap_frame/idW(?P\d+)N(?P\d+)\S*$', prices.next_one_win_price), # ПОДГРУЖАЕМЫЙ ФРЕЙМ С ЦЕНОВЫМИ ПРЕДЛОЖЕНИЯМИ ДЛЯ ОДНОГО ПРОЕМА - # --- Ценовая выдача - re_path(r'^(?P\d+)/(?P\d+)/(?P[\s\S]*)$', prices.report_price), - # --- Подгружаемый фрейм ценовая выдачи + # --- Ценовая выдача (НОВЫЙ РОУТИНГ) + # Новый красивый URL с префиксами seriaID, appartAD, addressID + re_path(r'^price/seriaID(?P\d+)--(?P[^/]+)/appartID(?P\d+)/addressID(?P\d+)--(?P[^/]+)/?$', prices.report_price_new), + # --- Подгружаемый фрейм ценовой выдачи (оставляем старый) re_path(r'^next_price_frame/idA(?P\d+)MDPO(?P\d+)LON(?P\d+)' r'LAT(?P\d+\.*\d*)N(?P\d+\.*\d*)\S*[/*]$', prices.next_price_frame), + # --- Старый URL ценовой выдачи (добавим редирект) + re_path(r'^(?P\d+)/(?P\d+)/(?P[\s\S]*)$', prices.report_price_legacy_redirect), # СРАВНЕНИЕ ОКОННЫХ НАБОРОВ re_path(r'^compare_sets/(?P[\s\S]+|.*)$', report1.compare_offers), # дубль для старых ссылок re_path(r'^compare_offers/(?P[\s\S]+|.*)$', report1.compare_offers), @@ -116,4 +119,3 @@ if DEBUG: urlpatterns = [path('__debug__/', include('debug_toolbar.urls')), *urlpatterns] # Медиа-файлы urlpatterns += static(MEDIA_URL, document_root=MEDIA_ROOT) - diff --git a/oknardia/templates/price/price_list.html b/oknardia/templates/price/price_list.html index d5c4a12..444075b 100755 --- a/oknardia/templates/price/price_list.html +++ b/oknardia/templates/price/price_list.html @@ -224,7 +224,10 @@ $(function () { // инициализация и обработка попове
Другие типовые квартиры в этом доме:
    {% for I_APART in APARTMENT_IN_BUILDING %} - {% if I_APART.APT_ID == '!' %}
  • {{ I_APART.APT_NAME|safe }}
  • {% else %}
  • {{ I_APART.APT_NAME|safe }}
  • {% endif %}{% endfor %} + {% if I_APART.APT_ID == '!' %}
  • {{ I_APART.APT_NAME|safe }}
  • {% else %} + {# Новый формат роутинга для перехода между квартирами #} +
  • {{ I_APART.APT_NAME|safe }}
  • + {% endif %}{% endfor %}
Информация по серии {{ BASE_SERIA }}
diff --git a/oknardia/templates/seria_info/all_seria_info_pre_light.html b/oknardia/templates/seria_info/all_seria_info_pre_light.html index 4a44a5f..52b8096 100755 --- a/oknardia/templates/seria_info/all_seria_info_pre_light.html +++ b/oknardia/templates/seria_info/all_seria_info_pre_light.html @@ -149,19 +149,15 @@ TechArticle: описывает страницу как технический

Оконные проёмы в типовых квартирах серии {{ THIS_SERIA_NAME }}

- {% templatetag openblock %} for row in TABLE_OF_WINDOWS {% templatetag closeblock %} - - {% templatetag openblock %} for col in row.WIN_IN_APART {% templatetag closeblock %} - {% templatetag openblock %} endfor {% templatetag closeblock %} - - {% templatetag openblock %} endfor {% templatetag closeblock %} - - {% templatetag openblock %} for i in WIN_OFFER_AND_MERCHANT {% templatetag closeblock %} - {% templatetag openblock %} endfor {% templatetag closeblock %} - - -
{% templatetag openvariable %} row.APART_NAME|safe {% templatetag closevariable %}{% templatetag openblock %} if col.WIN_ID {% templatetag closeblock %}{% templatetag openblock %} for I_II in col.WIN_NUM {% templatetag closeblock %} {% templatetag openblock %} endfor {% templatetag closeblock %}{% templatetag openblock %} else {% templatetag closeblock %}—{% templatetag openblock %} endif {% templatetag closeblock %} {% templatetag openvariable %} row.NUM_OFFERS {% templatetag closevariable %}
© 2015-{% now "Y" %}, данные: oknardia.ru {% templatetag openvariable %} i.WIN_OFFER {% templatetag closevariable %}
-
+ {# --- ОСНОВНОЙ БЛОК С ТАБЛИЦЕЙ --- #} + {# Если есть кешированный файл, включаем его. Иначе - рендерим блок на лету. #} + {% if PRE_RENDERED_INCLUDE_PATH %} + {% include PRE_RENDERED_INCLUDE_PATH %} + {% else %} + {% include "seria_info/all_seria_info_pre_light_include.html" %} + {% endif %} + {# --- КОНЕЦ ОСНОВНОГО БЛОКА --- #} +
@@ -182,7 +178,9 @@ TechArticle: описывает страницу как технический

Чтобы посмотреть цены на установку и замену окон от партнёров «Окнардия» в своей квартире: найдите дом на карте; кликните на него; перейдите по ссылке «Смотреть коммерческие предложения». При необходимости смените типовую планировку квартиры (на странице ценовой выдачи, справа от изображения типовых проёмов и схем открывания).

-
{% include 'seria_info/geo_map.html' %}
+
+ {% include 'seria_info/geo_map.html' with first_apart_id=TABLE_OF_WINDOWS.0.APART_ID %} +
© 2015-{% now "Y" %}, данные: oknardia.ru
@@ -208,8 +206,8 @@ TechArticle: описывает страницу как технический
- {% templatetag openblock %}include "report/report_last_user_visit.html" {% templatetag closeblock %} - {% templatetag openblock %} include "report/report_log_user_visit.html" {% templatetag closeblock %} + {% include "report/report_last_user_visit.html" %} + {% include "report/report_log_user_visit.html" %}
-{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/oknardia/templates/seria_info/geo_map.html b/oknardia/templates/seria_info/geo_map.html index a3d011d..48185bf 100755 --- a/oknardia/templates/seria_info/geo_map.html +++ b/oknardia/templates/seria_info/geo_map.html @@ -2,8 +2,7 @@ {% block Top_JS5 %} {% if MAP_JS %}{% else %}