default.html
HTML document, ASCII text
1<!DOCTYPE html> 2<html lang="en-GB"> 3<head> 4<title>{% block title %}{% endblock %}</title> 5<meta charset="utf-8"> 6<meta name="viewport" content="width=device-width, initial-scale=1"> 7<link rel="stylesheet" href="/static/style.css"> 8<script src="https://cdn.jsdelivr.net/npm/iconify-icon@2.1.0/dist/iconify-icon.min.js"></script> 9</head> 10<style> 11@media (prefers-reduced-motion: no-preference) { 12@view-transition { 13navigation: auto; 14} 15} 16</style> 17{% block extra_head %}{% endblock %} 18<body {% if fixed_content_area %}class="fixed-content-area"{% endif %}> 19<dialog id="hamburger" class="sheet-left"> 20<nav> 21<ul> 22<li><span id="hamburger-site-name">{{ site_name }}</span></li> 23<li><a href="/"> 24<iconify-icon icon="ic:baseline-home"></iconify-icon>Home 25</a></li> 26<li><a href="/object/"> 27<iconify-icon icon="mdi:flower-tulip"></iconify-icon>Object list 28</a></li> 29<li><a href="/query-pictures"> 30<iconify-icon icon="mdi:search"></iconify-icon>Query 31</a></li> 32<li><a href="/info/"> 33<iconify-icon icon="mdi:information"></iconify-icon>Help 34</a></li> 35{% if session.username %} 36<li><a href="/upload"> 37<iconify-icon icon="mdi:upload"></iconify-icon>Upload 38</a></li> 39<li><a href="/create-gallery"> 40<iconify-icon icon="ic:baseline-photo-album"></iconify-icon>New gallery 41</a></li> 42{% endif %} 43</ul> 44<ul> 45{% if session.username %} 46<li><a href="/profile/{{ session.username }}"> 47<iconify-icon icon="ic:baseline-account-circle"></iconify-icon>Profile: {{ session.username }} 48</a></li> 49<li><a href="/logout"> 50<iconify-icon icon="mdi:logout"></iconify-icon>Log out 51</a></li> 52{% else %} 53<li><a href="/accounts"> 54<iconify-icon icon="mdi:login"></iconify-icon>Accounts 55</a></li> 56{% endif %} 57</ul> 58</nav> 59</dialog> 60<header> 61<nav class="navbar" id="mobile-navbar"> 62<ul> 63{% if back_url %} 64<li id="back-button"> 65<a class="button button-flat button-neutral" href="{{ back_url | safe }}"> 66<iconify-icon icon="ic:baseline-arrow-back">Back</iconify-icon> 67</a> 68</li> 69{% else %} 70<li id="hamburger-button"> 71<button class="button-flat button-neutral" onclick="document.getElementById('hamburger').showModal()"> 72<iconify-icon icon="ic:baseline-menu">Menu</iconify-icon> 73</button> 74</li> 75{% endif %} 76<li id="mobile-navbar-title"> 77{% block nav_title %}{% endblock %} 78</li> 79</ul> 80</nav> 81<nav class="navbar" id="desktop-navbar"> 82<ul> 83{% if back_url %} 84<li id="back-button-desktop"> 85<a class="button button-flat button-neutral" href="{{ back_url | safe }}"> 86<iconify-icon icon="ic:baseline-arrow-back">Back</iconify-icon> 87</a> 88</li> 89{% endif %} 90<li id="desktop-navbar-title">{{ self.nav_title() }}</li> {# copy the block #} 91</ul> 92<ul> 93<li><a href="/">Home</a></li> 94<li><a href="/object/">Object list</a></li> 95<li><a href="/query-pictures">Query</a></li> 96<li><a href="/info/">Help</a></li> 97{% if session.username %} 98<li><a href="/upload">Upload</a></li> 99<li><a href="/create-gallery">New gallery</a> 100{% endif %} 101{% if session.username %} 102<li><a href="/profile/{{ session.username }}">Profile: {{ session.username }}</a></li> 103<li><a href="/logout">Log out</a></li> 104{% else %} 105<li><a href="/accounts">Accounts</a></li> 106{% endif %} 107</ul> 108</nav> 109</header> 110<div id="mobile-navbar-spacer"></div> 111<main> 112{% block content %}{% endblock %} 113</main> 114{% with messages = get_flashed_messages(with_categories=true) %} 115<ol class="toast-container"> 116{% for category, message in messages %} 117<li 118style=" 119{% if category %} 120background-color: 121{% if category == 'error' %}var(--color-error) 122{% elif category == 'alert' %}var(--color-alert) 123{% elif category == 'info' %}var(--color-info) 124{% elif category == 'success' %}var(--color-success) 125{% endif %}; 126color: 127{% if category == 'error' %}var(--color-error-text) 128{% elif category == 'alert' %}var(--color-alert-text) 129{% elif category == 'info' %}var(--color-info-text) 130{% elif category == 'success' %}var(--color-success-text) 131{% endif %}; 132{% endif %}" 133> 134{% if category | split | first == "task" %} 135{{ message }} 136{% else %} 137{{ message }} 138{% endif %} 139<x-buttonbox> 140<button class="button-flat" onclick="removeToast()" style="color: inherit !important;">Close</button> 141</x-buttonbox> 142</li> 143{% endfor %} 144</ol> 145{% endwith %} 146<script src="/static/efficient-ui/dialogs.js"></script> 147<script src="/static/efficient-ui/toasts.js"></script> 148<script src="/static/ripples.js"></script> 149</body> 150</html> 151