{% load static security seo styles %} {% comment %}Wariant serwisu - jasny albo ciemny. Decyduje motyw kolorystyczny z Ustawień (Widoki i listy). Nad nim stoi wyłącznik trybu ciemnego: gdy jest zdjęty, `dark` nie pada nigdzie - ani tutaj, ani ze skryptu "jak w systemie" niżej, ani z wyboru gościa zapamiętanego przez przeglądarkę (szablon publiczny) - a przełącznik znika z nagłówka.{% endcomment %} {% firstof site_settings.color_scheme as site_scheme %} {% comment %}Język dokumentu: wersja językowa żądania (moduł Tłumaczenia), a przy serwisie jednojęzycznym - język z ustawień serwisu.{% endcomment %} {% comment %}Cały nagłówek SEO części publicznej: opis, reguły dla robotów, adres kanoniczny, znaczniki udostępniania, potwierdzenie własności serwisu i dane strukturalne. Ustawia go System > SEO, a treść bieżącej strony wnosi obiekt `seo` z widoku (core/seo.py).{% endcomment %} {% seo_head %} {% block meta %}{% endblock %} {% comment %}Tytuł dokumentu z tego samego źródła co reszta znaczników: tytuł strony podany przez widok plus końcówka z Ustawień SEO (core/templatetags/seo.py). Szablon strony publicznej nie nadpisuje tego bloku - inaczej `` i `og:title` mówiłyby co innego.{% endcomment %} <title>{% block title %}{% seo_title %}{% endblock %} {% if site_settings.favicon %}{% endif %} {% comment %}Krój pisma z zakładki Ustawienia > Kolory i typografia. Pliki daje pakiet dlis-fonts z requirements.txt, nie Google Fonts. Krój systemowy nie ma arkusza - wtedy lista jest pusta i nie ma tu nic.{% endcomment %} {% for href in site_settings.font_stylesheets %} {% endfor %} {% comment %}Arkusz Tailwinda zbudowany przy wydaniu (python manage.py zbuduj_style, core/tailwind.py) - zwykły plik CSS zamiast skryptu z CDN-u, który składał arkusz w przeglądarce i blokował rysowanie strony. Strona z klasą nieznaną w chwili budowania dostaje dodatkowo Tailwinda z CDN-u (core.tailwind.TailwindFallbackMiddleware).{% endcomment %} {% comment %}Kolory serwisu z zakładki Ustawienia > Kolory i typografia jako kanały RGB - czytają je klasy brand-* i site-* arkusza (static/js/tailwind-motyw.js). Kolor wiodący podmienia także jaśniejsze stopnie (400/500) - inaczej `text-brand-400` z trybu ciemnego zostawałoby przy domyślnym fiolecie. Nagłówek i stopka mają jedną barwę paska na oba warianty; wartości domyślne (pole puste) są różne dla jasnego i ciemnego.{% endcomment %} {% site_color_vars %} {% if is_public_site %} {% endif %} {% if site_settings.dark_mode_enabled and site_scheme == 'system' %} {% endif %} {% comment %}Własne style serwisu (System > Style serwisu) wchodzą po stylach serwisu, więc przy tej samej regule wygrywają.{% endcomment %} {% if site_styles.css %}{% endif %} {% block head %}{% endblock %} {% block analytics %} {% if is_public_site and consent %}{% include 'public/partials/consent_head.html' %}{% endif %} {% if site_settings.analytics_code %}{% code_with_nonce site_settings.analytics_code %}{% endif %} {% endblock %} {% if is_public_site and site_settings.maintenance_mode and user.is_staff %}
Tryb konserwacji jest włączony - goście widzą komunikat o przerwie technicznej. Ta strona jest widoczna tylko dla Ciebie, bo masz dostęp do panelu. Wyłącz w ustawieniach
{% endif %} {% block body %}{% endblock %} {% comment %}Baner zgody stoi poza blokiem `body`, więc dostaje go każdy szablon wyglądu bez własnego {% include %}. Bez identyfikatorów usług nie ma o co pytać - kontekst nie zapala wtedy `consent.active`.{% endcomment %} {% if is_public_site and consent.active %}{% include 'public/partials/consent_banner.html' %}{% endif %} {% block scripts %}{% endblock %} {% if is_public_site %} {% endif %}