84 lines
3.7 KiB
Plaintext
84 lines
3.7 KiB
Plaintext
<!doctype html>
|
|
<html lang="{{ currentLocale }}">
|
|
<head>
|
|
<meta charset="utf-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
<title>{{ template "title" . }} — Numerus</title>
|
|
<link rel="stylesheet" type="text/css" media="screen" href="/static/numerus.css">
|
|
<script src="/static/htmx@1.9.2.min.js"></script>
|
|
<script type="module" src="/static/custom-elements@1.3.0.min.js"></script>
|
|
<script type="module" src="/static/numerus.js"></script>
|
|
<script defer src="/static/alpinejs@3.12.0.min.js"></script>
|
|
</head>
|
|
<body class="filters-visible">
|
|
<header>
|
|
<h1><img src="/static/numerus.svg" alt="Numerus" width="261" height="33"></h1>
|
|
<details id="profile-menu" class="menu">
|
|
<summary aria-label="{{( gettext "Profile menu" )}}">
|
|
<i class="ri-user-6-line ri-3x"></i>
|
|
</summary>
|
|
<ul role="menu" class="action-menu" data-hx-push-url="false" data-hx-swap="beforeend">
|
|
<li role="presentation">
|
|
<a role="menuitem" href="{{ companyURI "/profile" }}" data-hx-boost="true">
|
|
<i class="ri-user-6-line"></i>
|
|
{{( pgettext "Account" "menu" )}}
|
|
</a>
|
|
</li>
|
|
<li role="presentation">
|
|
<a role="menuitem" href="{{ companyURI "/tax-details" }}" data-hx-boost="true">
|
|
<i class="ri-vip-diamond-line"></i>
|
|
{{( pgettext "Tax Details" "menu" )}}
|
|
</a>
|
|
</li>
|
|
<li role="presentation">
|
|
<a role="menuitem" href="{{ companyURI "/switch-company" }}" data-hx-boost="true">
|
|
<i class="ri-briefcase-line"></i>
|
|
{{( pgettext "Switch Company" "menu" )}}
|
|
</a>
|
|
</li>
|
|
<li role="presentation">
|
|
<form method="POST" action="/logout">
|
|
{{ csrfToken }}
|
|
<button type="submit" role="menuitem">
|
|
<i class="ri-logout-circle-line"></i>
|
|
{{( pgettext "Logout" "action" )}}
|
|
</button>
|
|
</form>
|
|
</li>
|
|
</ul>
|
|
</details>
|
|
</header>
|
|
<nav aria-label="{{( pgettext "Main" "title" )}}" data-hx-target="main" data-hx-boost="true">
|
|
<ul>
|
|
<li><a{{if requestURIMatches (companyURI "/") }} aria-current="page"{{ end }} href="{{ companyURI "/" }}">{{( pgettext "Dashboard" "nav" )}}</a></li>
|
|
<li><a{{if requestURIHasPrefix (companyURI "/quotes") }} aria-current="page"{{ end }} href="{{ companyURI "/quotes" }}">{{( pgettext "Quotations" "nav" )}}</a></li>
|
|
<li><a{{if requestURIHasPrefix (companyURI "/invoices") }} aria-current="page"{{ end }} href="{{ companyURI "/invoices" }}">{{( pgettext "Invoices" "nav" )}}</a></li>
|
|
<li><a{{if requestURIHasPrefix (companyURI "/expenses") }} aria-current="page"{{ end }} href="{{ companyURI "/expenses" }}">{{( pgettext "Expenses" "nav" )}}</a></li>
|
|
<li><a{{if requestURIHasPrefix (companyURI "/products") }} aria-current="page"{{ end }} href="{{ companyURI "/products" }}">{{( pgettext "Products" "nav" )}}</a></li>
|
|
<li><a{{if requestURIHasPrefix (companyURI "/contacts") }} aria-current="page"{{ end }} href="{{ companyURI "/contacts" }}">{{( pgettext "Contacts" "nav" )}}</a></li>
|
|
</ul>
|
|
</nav>
|
|
<main>
|
|
{{- template "breadcrumbs" . }}
|
|
{{- template "content" . }}
|
|
</main>
|
|
<footer>
|
|
<p>{{printf ( gettext "<a href=\"https://numerus.cat/\">Numerus</a> Version: %s") numerusVersion | unsafe}}</p>
|
|
</footer>
|
|
</body>
|
|
<div x-data="snackbar">
|
|
<div x-show="show"
|
|
@click="dismiss"
|
|
x-cloak
|
|
x-transition:enter="enter"
|
|
x-transition:enter-start="start"
|
|
x-transition:enter-end="end"
|
|
x-transition:leave="leave"
|
|
x-transition:leave-start="start"
|
|
x-transition:leave-end="end"
|
|
role="alert">
|
|
<p x-text="toast"></p>
|
|
</div>
|
|
</div>
|
|
</html>
|