husk/templates/template.html

126 lines
6.1 KiB
HTML
Raw Normal View History

2022-09-02 09:05:59 +02:00
<!doctype html>
<html lang="en">
<head>
{% block head %}
2022-11-02 22:46:19 +01:00
<meta charset="UTF-8">
2022-09-02 09:05:59 +02:00
<script src="https://cdn.jsdelivr.net/npm/fuse.js/dist/fuse.js"></script>
2022-09-06 23:45:26 +02:00
<script src="https://code.jquery.com/jquery-3.5.1.min.js"></script>
<script type="text/javascript" src="{{ url_for('static', filename='js/auto-complete.js') }}"></script>
<script type="text/javascript" src="{{ url_for('static', filename='js/lunr.min.js')}}"></script>
<script type="text/javascript" src="{{ url_for('static', filename='js/search.js')}}"></script>
<link rel="stylesheet" href="{{ url_for('static', filename=stylesheet) }}">
<link rel="stylesheet" href="{{ url_for('static', filename=stylesheet_auto_complete) }}">
<title>{% block title %}{{ project_title }}{% endblock %}</title>
2022-10-29 00:15:24 +02:00
<meta name="viewport" content="width-device-width, initial-scale=1">
2022-09-02 09:05:59 +02:00
{% endblock %}
2022-11-02 22:46:19 +01:00
2022-10-27 00:52:17 +02:00
<style type="text/css">
2022-10-29 00:15:24 +02:00
body { background: {{ colors.body_background }}; color: {{ colors.body }}; }
pre { background: {{ colors.pre_background }}; color: {{ colors.pre }}; border: 1px solid {{ colors.pre_border }}; }
code { background: {{ colors.code_background }}; color: {{ colors.code }}; }
2022-10-27 00:52:17 +02:00
a:hover { color: {{ colors.a }}; }
2022-10-29 00:15:24 +02:00
details > summary { background: {{ colors.details_background }}; }
details > summary:hover { background: {{ colors.details_hover_background }}; color: {{ colors.details_hover }}; }
::selection { background: {{ colors.selection_background }}; }
::-moz-selection { background: {{ colors.moz_selection_background }}; }
.header-wrapper { background: {{ colors.header_background }}; }
.HolyGrail-nav, .HolyGrail-ads { background: {{ colors.nav_background }}; }
2022-10-27 00:52:17 +02:00
.HolyGrail-content { border-top: 1px solid {{ colors.content_border_top }}; border-bottom: 1px solid {{ colors.content_border_bottom }}; }
2022-10-29 00:15:24 +02:00
.search-container-color input { background: {{ colors.search_input_background }}; color: {{ colors.search_input }}; border: 1px solid {{ colors.search_input_border }}; }
2022-10-27 00:52:17 +02:00
.search-container-color input:focus { border: 2px solid {{ colors.search_focus_border }}; }
</style>
2022-11-02 22:46:19 +01:00
2022-10-27 00:52:17 +02:00
<style>
.autocomplete-suggestions{ background: {{ colors.autocomplete_suggestions_background }}; border: 1px solid {{ colors.autocomplete_suggestions_border }}; }
.autocomplete-suggestion { color: {{ colors.autocomplete_suggestion }}; }
.autocomplete-suggestion b { color: {{ colors.autocomplete_suggestion_b }}; }
.autocomplete-suggestion.selected { background: {{ colors.autocomplete_suggestion_selected_background }}; color: {{ colors.autocomplete_suggestion_selected }}; }
.autocomplete-suggestion:hover { background: {{ colors.autocomplete_suggestion_hover_background }}; color: {{ colors.autocomplete_suggestion_hover }}; }
</style>
2022-11-02 22:46:19 +01:00
<style type="text/css">
.directory { height: 1em; content: url("{{ url_for('static', filename='svg/1f4c1.svg') }}"); }
</style>
<!-- script src='https://kit.fontawesome.com/a076d05399.js' crossorigin='anonymous'></script -->
2022-09-02 09:05:59 +02:00
</head>
2022-09-18 21:00:35 +02:00
<body class="HolyGrail">
2022-11-02 22:46:19 +01:00
2022-09-18 21:00:35 +02:00
<header>
2022-10-27 00:52:17 +02:00
<div class= "header-wrapper">
<div class="menu">
<div class="banner">
<a href="{{ url_for('content') }}" style="text-decoration:none">{{ project_name }}</a>
</div>
<div class="search-container">
<div class="search-container-color">
2022-10-29 00:15:24 +02:00
<!-- <label for="search-by"><i class="fas fa-search"></i></label> --!>
2022-10-27 00:52:17 +02:00
<input data-search-input="" id="search-by" type="search" placeholder="Search..." autocomplete="off">
<!--button type="submit"><i class="search"></i>&#128269;</button>-->
2022-10-29 00:15:24 +02:00
<!-- <span data-search-clear=""><i class="fas fa-times"></i></span> --!>
2022-10-27 00:52:17 +02:00
</div>
</div>
</div>
</div>
2022-09-02 09:05:59 +02:00
</div>
2022-09-18 21:00:35 +02:00
</header>
2022-11-02 22:46:19 +01:00
2022-09-18 21:00:35 +02:00
<div class="HolyGrail-body">
2022-10-27 00:52:17 +02:00
<main class="HolyGrail-content">{% block content %}{% endblock %}</main>
2022-09-18 21:00:35 +02:00
<nav class="HolyGrail-nav">
2022-11-02 22:46:19 +01:00
<ul>
{%- for item in tree.children recursive %}
2022-09-02 09:05:59 +02:00
{%- set name = item.name.split('/')[-1] -%}
2022-11-02 22:46:19 +01:00
{%- if item.type != "directory" -%}
<li><a href="{{ item.name }}.html">{{ name }}</a></li>
2022-09-02 09:05:59 +02:00
{%- else -%}
2022-11-02 22:46:19 +01:00
{%- if item.children|length -%}
<details id={{ name }} ontoggle="linkClick(this); return false;" ><summary><!--i class='fas fa-folder'></i--!>{{ name[0]|upper }}{{ name[1:] }}</summary>
{%- endif -%}
2022-09-02 09:05:59 +02:00
{%- endif -%}
2022-11-02 22:46:19 +01:00
{%- if item.children and item.children|length -%}
<ul>{{ loop(item.children) }}</ul></details>
{%- endif %}
{%- endfor %}
2022-09-02 09:05:59 +02:00
</ul>
2022-09-18 21:00:35 +02:00
</nav>
2022-10-27 00:52:17 +02:00
<aside class="HolyGrail-ads">{{ toc | safe }}</aside>
2022-09-18 21:00:35 +02:00
</div>
<footer>
2022-09-02 09:05:59 +02:00
{% block footer %}
2022-10-27 00:52:17 +02:00
<p></p><center>&copy; Stefan Friese</center><p></p>
2022-09-02 09:05:59 +02:00
{% endblock %}
2022-09-18 21:00:35 +02:00
</footer>
</body>
2022-10-27 00:52:17 +02:00
<script>
2022-09-06 23:45:26 +02:00
function linkClick(obj) {
2022-09-02 09:05:59 +02:00
if (obj.open) {
2022-09-06 23:45:26 +02:00
//console.log('open');
2022-10-29 00:15:24 +02:00
if (sessionStorage.getItem(obj.id) && !(sessionStorage.getItem(obj.id) === "open")) {
sessionStorage.removeItem(obj.id);
}
2022-09-06 23:45:26 +02:00
sessionStorage.setItem(obj.id,"open");
2022-10-27 00:52:17 +02:00
//console.log(obj.id);
2022-09-02 09:05:59 +02:00
} else {
2022-09-06 23:45:26 +02:00
//console.log('closed');
sessionStorage.removeItem(obj.id);
}
}
let _keys = Object.keys(sessionStorage);
if (_keys) {
for ( let i = 0; i < _keys.length; i++ ) {
document.getElementById(_keys[i])['open'] = 'open';
}
}
2022-09-02 09:05:59 +02:00
</script>
2022-09-06 23:45:26 +02:00
<script async src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.1/MathJax.js?config=TeX-AMS-MML_HTMLorMML" type="text/javascript"></script>
2022-09-02 09:05:59 +02:00
<script type="text/x-mathjax-config">
2022-09-06 23:45:26 +02:00
MathJax.Hub.Config({
config: ["MMLorHTML.js"],
jax: ["input/TeX", "output/HTML-CSS", "output/NativeMML"],
extensions: ["MathMenu.js", "MathZoom.js"]
});
</script>
2022-09-02 09:05:59 +02:00
</body>
</html>