{% extends "base.html" %} {% import '_start_page_form.html' as startpage %} {# Your own profile. Everything on this page belongs to the signed-in account. It is NOT a settings page: /settings is admin-only, which is why a normal account could not reach its own theme, accent colour or media-server profile before this page existed. Built exactly like Settings / Integrations / Notifications: one .settings-container, a floating side menu, and one .settings-tab-panel per section switched client-side (no reload). See _profile_menu.html for the menu and switchProfileTab() below. The appearance controls deliberately reuse the ids the Design tab uses (themeBtnDark/themeBtnLight, accentPresetsSettings, accentHexInputSettings, accentColorPickerSettings). setTheme(), resetAppearance() and the preset renderer live in base.html and are loaded on every page, so they work here with no second implementation to keep in step. #} {% block styles %} {% endblock %} {% block content %} {# The menu goes INSIDE the container, after the page header -- that is what makes .floating-side-menu float beside the content instead of stacking as a full-width block above it (see notifications.html, which does the same). #}
{% endblock %} {% block scripts %} {{ startpage.start_page_i18n() }} {% endblock %}