{% extends "django_fundamentals/layouts/base.html" %} {# APP SHELL: FIXED SIDEBAR ON DESKTOP, OFF-CANVAS DRAWER ON MOBILE. #} {# THE x-data SITS ON THE OUTER WRAPPER SO BOTH THE NAVBAR'S HAMBURGER #} {# AND THE SIDEBAR ITSELF SHARE THE SAME `sidebarOpen` STATE. #} {% block body %}
{% block navbar %} {% include "django_fundamentals/organisms/navbar.html" %} {% endblock %} {# MOBILE BACKDROP #} {% block sidebar %} {% include "django_fundamentals/organisms/sidebar.html" %} {% endblock %} {# CONTENT COLUMN — OFFSET BY THE SIDEBAR ON DESKTOP ONLY #}
{% include "django_fundamentals/organisms/messages.html" %} {% block page_header %} {% if page_title %} {% include "django_fundamentals/organisms/page_header.html" %} {% endif %} {% endblock %} {# content_outer WRAPS content SO A SUB-LAYOUT CAN ADD CHROME #} {# AROUND A PAGE WITHOUT THAT PAGE COOPERATING — CHILD TEMPLATES #} {# OVERRIDE content AS USUAL AND LAND INSIDE THE WRAPPER. THIS IS #} {# WHAT LETS layouts/settings.html PUT THE TAB RAIL ON allauth'S #} {# OWN PAGES WITHOUT OVERRIDING ANY OF THEM. #} {% block content_outer %}{% block content %}{% endblock %}{% endblock %}
{% block footer %} {% include "django_fundamentals/organisms/footer.html" %} {% endblock %}
{% endblock %}