| 1 |
<!DOCTYPE html> |
| 2 |
<html lang="en"> |
| 3 |
<head> |
| 4 |
<meta charset="UTF-8"> |
| 5 |
<meta name="viewport" content="width=device-width, initial-scale=1.0"> |
| 6 |
{% if let Some(token) = csrf_token %}<meta name="csrf-token" content="{{ token }}">{% endif %} |
| 7 |
<title>{% block title %}Multithreaded{% endblock %}</title> |
| 8 |
<link rel="stylesheet" href="/static/style.css"> |
| 9 |
<script src="/static/htmx.min.js"></script> |
| 10 |
{% block head %}{% endblock %} |
| 11 |
</head> |
| 12 |
<body data-mnw-url="{{ mnw_base_url }}"{% block body_attrs %}{% endblock %}> |
| 13 |
<a href="#main-content" class="skip-to-main">Skip to main content</a> |
| 14 |
{% block header %}{% endblock %} |
| 15 |
<main id="main-content"> |
| 16 |
{% block content %}{% endblock %} |
| 17 |
</main> |
| 18 |
|
| 19 |
<footer class="site-footer"> |
| 20 |
<div class="site-footer-links"> |
| 21 |
<a href="{{ mnw_base_url }}/pricing">Pricing</a> |
| 22 |
<a href="{{ mnw_base_url }}/creators">Creators</a> |
| 23 |
<a href="{{ mnw_base_url }}/docs">Docs</a> |
| 24 |
<a href="{{ mnw_base_url }}/policy">Policy</a> |
| 25 |
</div> |
| 26 |
<span>Powered by <a href="{{ mnw_base_url }}/">Makenot<span class="dot">.</span>work</a></span> |
| 27 |
<span class="footer-sep">·</span> |
| 28 |
<a href="/about/tracking">Tracking</a> |
| 29 |
<span class="footer-sep">·</span> |
| 30 |
<span>Report abuse: moderation@makenot.work</span> |
| 31 |
</footer> |
| 32 |
|
| 33 |
<div id="search-modal" class="search-modal" hidden aria-modal="true" role="dialog" aria-label="Search forums"> |
| 34 |
<div class="search-modal-backdrop" id="search-backdrop"></div> |
| 35 |
<div class="search-modal-content"> |
| 36 |
<input type="text" id="search-input" class="search-input" placeholder="Search threads..." |
| 37 |
autocomplete="off" spellcheck="false" |
| 38 |
hx-get="/search" hx-trigger="keyup changed delay:150ms" hx-target="#search-results" |
| 39 |
hx-swap="innerHTML" name="q"> |
| 40 |
<div id="search-results" class="search-results-container"></div> |
| 41 |
</div> |
| 42 |
</div> |
| 43 |
<div id="notifications" class="toast-container" role="alert" aria-live="polite"></div> |
| 44 |
<script src="/static/mt.js"></script> |
| 45 |
{% block scripts %}{% endblock %} |
| 46 |
</body> |
| 47 |
</html> |
| 48 |
|