s3lph
66f23f5dda
feat: list all users and products in a table in the settings feat: add back buttons to signup, password login and touchkey login pages feat: if the tabfocus webextension is installed, use it to focus the tab when a barcode is scanned
76 lines
2.3 KiB
HTML
76 lines
2.3 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="en">
|
|
<head>
|
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
{% block head %}
|
|
{# Show the setup name, as set in the config file, as tab title. Don't escape HTML entities. #}
|
|
<title>{{ setupname|safe }}</title>
|
|
<link rel="stylesheet" href="/static/css/matemat.css"/>
|
|
<link rel="stylesheet" href="/static/css/theme.css"/>
|
|
{% endblock %}
|
|
</head>
|
|
|
|
<body>
|
|
|
|
<header>
|
|
{% block header %}
|
|
|
|
<nav class="navbarbutton">
|
|
{# Show a link to the settings, if a user logged in via password (authlevel 2). #}
|
|
{% if authlevel|default(0) > 1 %}
|
|
{% if authuser is defined %}
|
|
<a href="/">Home</a>
|
|
{# If a user is an admin, call the link "Administration". Otherwise, call it "Settings". #}
|
|
{% if authuser.is_admin %}
|
|
<a href="/admin">Administration</a>
|
|
<a href="/statistics">Sales Statistics</a>
|
|
{% else %}
|
|
<a href="/admin">Settings</a>
|
|
{% endif %}
|
|
{% endif %}
|
|
{% endif %}
|
|
</nav>
|
|
{% endblock %}
|
|
</header>
|
|
|
|
<main>
|
|
{% block notifications %}
|
|
{% for n in notifications | default([]) %}
|
|
<div class="notification {{ n.classes | join(' ') }}">{{ n.msg|safe }}</div>
|
|
{% endfor %}
|
|
{% endblock %}
|
|
{% block main %}
|
|
{# Here be content. #}
|
|
{% endblock %}
|
|
</main>
|
|
|
|
<footer>
|
|
{% block footer %}
|
|
{# Show some information in the footer, e.g. the instance name, the version, and copyright info. #}
|
|
<ul>
|
|
<li> {{ setupname|safe }}
|
|
<li> Matemat {{ __version__ }}
|
|
<li> MIT License
|
|
<li> git.kabelsalat.ch/s3lph/matemat
|
|
</ul>
|
|
{% endblock %}
|
|
</footer>
|
|
|
|
{% if eanwebsocket %}
|
|
<script>
|
|
function connect() {
|
|
let socket = new WebSocket("{{ eanwebsocket }}");
|
|
socket.onclose = () => { setTimeout(connect, 1000); };
|
|
socket.onmessage = function (e) {
|
|
// Focus this tab - requires https://git.kabelsalat.ch/ccc-basel/barcode-utils
|
|
if (typeof window.extension_tabfocus === "function") {
|
|
window.extension_tabfocus();
|
|
}
|
|
{% block eanwebsocket %}{% endblock %}
|
|
};
|
|
}
|
|
window.addEventListener("load", () => { connect(); });
|
|
</script>
|
|
{% endif %}
|
|
</body>
|
|
</html>
|