Files
ad/molodetz/templates/base.html
T

88 lines
4.5 KiB
HTML

<!-- retoor <retoor@molodetz.nl> -->
{% set seo = seo or {} %}
{% set viewer = current_user(request) %}
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover">
<title>{{ seo.title or app_title }}</title>
<meta name="description" content="{{ seo.description or '' }}">
<meta name="robots" content="{{ seo.robots or 'index,follow' }}">
<meta name="keywords" content="{{ seo.keywords or '' }}">
<meta name="asset-version" content="{{ static_version }}">
<meta name="theme-color" content="#0d0c0a">
{% if seo.canonical %}<link rel="canonical" href="{{ seo.canonical }}">{% endif %}
{% if seo.prev_url %}<link rel="prev" href="{{ seo.prev_url }}">{% endif %}
{% if seo.next_url %}<link rel="next" href="{{ seo.next_url }}">{% endif %}
<meta property="og:site_name" content="{{ app_title }}">
<meta property="og:title" content="{{ seo.title or app_title }}">
<meta property="og:description" content="{{ seo.description or '' }}">
<meta property="og:type" content="{{ seo.og_type or 'website' }}">
{% if seo.canonical %}<meta property="og:url" content="{{ seo.canonical }}">{% endif %}
{% if seo.og_image %}<meta property="og:image" content="{{ seo.og_image }}">{% endif %}
<meta property="og:locale" content="en_US">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:title" content="{{ seo.title or app_title }}">
<meta name="twitter:description" content="{{ seo.description or '' }}">
{% for block_json in seo.json_ld or [] %}
<script type="application/ld+json">{{ block_json | safe }}</script>
{% endfor %}
<link rel="icon" href="{{ static_url('/static/media/favicon.svg') }}" type="image/svg+xml">
<link rel="stylesheet" href="{{ static_url('/static/css/variables.css') }}">
<link rel="stylesheet" href="{{ static_url('/static/css/base.css') }}">
<link rel="stylesheet" href="{{ static_url('/static/css/layout.css') }}">
<link rel="stylesheet" href="{{ static_url('/static/css/content.css') }}">
<link rel="stylesheet" href="{{ static_url('/static/css/forms.css') }}">
<link rel="stylesheet" href="{{ static_url('/static/css/components.css') }}">
<link rel="modulepreload" href="{{ static_url('/static/js/Application.js') }}">
<link rel="modulepreload" href="{{ static_url('/static/js/components/index.js') }}">
{% block extra_head %}{% endblock %}
</head>
<body>
<a class="sr-only" href="#main">Skip to content</a>
<header class="site-header">
<nav class="site-nav" aria-label="Main menu">
<a class="brand" href="/">MOLODETZ</a>
<button class="nav-toggle" type="button" data-nav-toggle aria-expanded="false" aria-controls="nav-links">Menu</button>
<div class="nav-links" id="nav-links">
<a href="/roll" class="{{ nav_active(request, '/roll') }}">Roll</a>
<a href="/standard" class="{{ nav_active(request, '/standard') }}">Standard</a>
<a href="/flyers" class="{{ nav_active(request, '/flyers') }}">Flyers</a>
<a href="/memes" class="{{ nav_active(request, '/memes') }}">Memes</a>
<a href="/people" class="{{ nav_active(request, '/people') }}">People</a>
<a href="/join" class="{{ nav_active(request, '/join') }}">Join</a>
{% if viewer %}
<span class="nav-account">
{% if is_admin(viewer) %}<a href="/admin" class="{{ nav_active(request, '/admin') }}">Admin</a>{% endif %}
<a href="/notifications" class="{{ nav_active(request, '/notifications') }}">Notifications{% set unread = unread_count(request) %}{% if unread %}<span class="badge-count">{{ unread }}</span>{% endif %}</a>
<form method="post" action="/auth/logout"><button type="submit">Log out</button></form>
</span>
{% endif %}
</div>
</nav>
</header>
<main id="main" class="page {% block main_class %}{% endblock %}">
{% if seo.breadcrumbs and seo.breadcrumbs | length > 1 %}
{% include "_breadcrumbs.html" %}
{% endif %}
{% block content %}{% endblock %}
</main>
<footer class="site-footer">
<div class="inner">
<span class="tagline">Molodetz. {{ setting('site_tagline') }}</span>
<a href="/docs">Docs</a>
<a href="/terms">Terms</a>
<a href="/privacy">Privacy</a>
{% if not viewer %}<a href="/auth/login" rel="nofollow">Log in</a>{% endif %}
<span>&copy; {{ current_year() }}</span>
</div>
</footer>
<dp-toast></dp-toast>
<dp-lightbox></dp-lightbox>
<span class="response-time" title="Server render time">{{ response_time(request) }}</span>
<script type="module" src="{{ static_url('/static/js/Application.js') }}"></script>
{% block extra_js %}{% endblock %}
</body>
</html>