Files
mal/internal/templates/layout.templ

52 lines
1.7 KiB
Plaintext

package templates
import "mal/internal/shared/ui/icons"
templ Layout(title string, showHeader bool) {
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8"/>
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
<title>{ title }</title>
<link rel="icon" type="image/svg+xml" href="/static/favicon.svg"/>
<link rel="stylesheet" href="/static/css/style.css"/>
<script src="https://unpkg.com/htmx.org@1.9.11"></script>
<script src="/static/js/discover.js" defer></script>
<script src="/static/js/anime.js" defer></script>
<script src="/static/js/timezone.js" defer></script>
<script src="/static/js/auth.js" defer></script>
</head>
<body>
if showHeader {
<header>
<div class="header-top">
<div class="header-left">
<a href="/" class="logo" aria-label="mal logo">
@icons.LogoIcon("logo-svg")
</a>
<div class="nav">
<a href="/">Catalog</a>
<a href="/discover">Discover</a>
<a href="/notifications">Notifications</a>
<a href="/watchlist">Watchlist</a>
<a href="/account">Account</a>
</div>
</div>
<div class="header-search-wrapper">
<form action="/search" method="GET" class="header-search" id="search-form">
<input type="text" id="search-input" name="q" class="search-input" placeholder="Search anime..." autocomplete="off"/>
<div id="search-dropdown" class="search-dropdown"></div>
</form>
</div>
</div>
</header>
}
<main class={ "main-content", templ.KV("auth-main", !showHeader) }>
{ children... }
</main>
<script src="/static/js/search.js"></script>
</body>
</html>
}