microblog/app/templates/layout.html

88 lines
3.5 KiB
HTML

<!DOCTYPE HTML>
<html lang="en">
<head>
{% if GA_ANALYTICS %}
<!-- Google tag (gtag.js) -->
<script async src="https://www.googletagmanager.com/gtag/js?id={{ GA_ANALYTICS }}"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', '{{ GA_ANALYTICS }}');
</script>
{% endif %}
<meta charset="utf-8">
<meta http-equiv="x-ua-compatible" content="ie=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<link rel="stylesheet" href="{{ BASE_URL }}/static/css/main.css?v={{ CSS_HASH }}">
<link rel="alternate" title="blog.zak" type="application/json" href="{{ url_for("json_feed") }}" />
<link rel="alternate" href="{{ url_for("rss_feed") }}" type="application/rss+xml" title="blog.zak">
<link rel="alternate" href="{{ url_for("atom_feed") }}" type="application/atom+xml" title="blog.zak">
<link rel="icon" type="image/x-icon" href="{{ BASE_URL }}/static/favicon.ico">
<style>{{ highlight_css }}</style>
{% block head %}{% endblock %}
</head>
<body>
<div id="main">
<main{%- block main_tag %}{%- endblock %}>
{% if is_admin %}
<div id="admin">
{% macro admin_link(url, text) %}
{% set url_for = BASE_URL + request.app.router.url_path_for(url) %}
<a href="{{ url_for }}" {% if BASE_URL + request.url.path == url_for %}class="active"{% endif %}>{{ text }}</a>
{% endmacro %}
<div class="admin-menu">
<nav class="flexbox">
<ul>
<li>{{ admin_link("index", "Public") }}</li>
<li>{{ admin_link("admin_new", "New") }}</li>
<li>{{ admin_link("admin_stream", "Stream") }}</li>
<li>{{ admin_link("admin_inbox", "Inbox") }} / {{ admin_link("admin_outbox", "Outbox") }}</li>
<li>{{ admin_link("admin_direct_messages", "DMs") }}</li>
<li>{{ admin_link("admin_snippets", "Snippets") }}</li>
<li>{{ admin_link("get_notifications", "Notifications") }} {% if notifications_count %}({{ notifications_count }}){% endif %}</li>
<li>{{ admin_link("get_lookup", "Lookup") }}</li>
<li>{{ admin_link("admin_bookmarks", "Bookmarks") }}</li>
<li><a href="{{ url_for("logout")}}">Logout</a></li>
</ul>
</nav>
</div>
</div>
{% endif %}
{% block content %}{% endblock %}
</main>
</div>
{%- macro header_link(url, text) -%}
{% set url_for = BASE_URL + request.app.router.url_path_for(url) %}
<a href="{{ url_for }}" {% if BASE_URL + request.url.path == url_for %}class="active"{% endif %}>{{ text }}</a>
{% endmacro %}
<footer class="footer">
<div class="box">
{% if custom_footer %}
{{ custom_footer | safe }}
{% else %}
<a href="{{ url_for("login") }}">Admin</a>.
{% if is_admin %}
{{ header_link("followers", "Followers") }} <span class="counter">{{ followers_count }}</span>.
{{ header_link("following", "Following") }} <span class="counter">{{ following_count }}</span>.
{% endif %}
<div>
Runs a modified version of <a href="https://microblog.pub/" target="_blank">microblog.pub</a>. Supports <a href="https://activitypub.rocks/" target="_blank">ActivityPub</a>!
</div>
<div>
Modified source code at: <a href="https://github.com/zpl-zak/microblog_pub_mirror" target="_blank">GitHub mirror</a>.
</div>
{% endif %}
</div>
</footer>
{% if is_admin %}
<script src="{{ BASE_URL }}/static/common-admin.js?v={{ JS_HASH }}"></script>
{% endif %}
<script src="{{ BASE_URL }}/static/common.js?v={{ JS_HASH }}"></script>
</body>
</html>