172 lines
8.1 KiB
HTML
172 lines
8.1 KiB
HTML
{% load static %}
|
|
{% load i18n %}
|
|
{% load theming_tags %}
|
|
|
|
<html>
|
|
<head>
|
|
<title>{% block title %}
|
|
{% endblock %}</title>
|
|
<meta charset="utf-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
|
|
|
|
|
<link rel="shortcut icon" type="image/x-icon" href="{% static 'favicon.png' %}">
|
|
<link rel="shortcut icon" href="{% static 'favicon.png' %}">
|
|
<link rel="icon" type="image/png" href="{% static 'favicon.png' %}" sizes="32x32">
|
|
<link rel="icon" type="image/png" href="{% static 'favicon.png' %}" sizes="96x96">
|
|
<link rel="apple-touch-icon" sizes="180x180" href="{% static 'favicon.png' %}">
|
|
<meta name="msapplication-TileColor" content="#ffffff">
|
|
<meta name="msapplication-TileImage" content="/mstile-144x144.png">
|
|
|
|
<!-- Bootstrap 4 -->
|
|
<link id="id_main_css" href="{% theme_url request %}" rel="stylesheet">
|
|
<script src="https://code.jquery.com/jquery-3.4.1.js"
|
|
integrity="sha256-WpOohJOqMqqyKL9FccASB9O0KwACQJpFTUBLTYOVvVU="
|
|
crossorigin="anonymous"></script>
|
|
|
|
<script src="https://cdn.jsdelivr.net/npm/popper.js@1.16.0/dist/umd/popper.min.js"
|
|
integrity="sha384-Q6E9RHvbIyZFJoft+2mJbHaEWldlvI9IOYy5n3zV9zzTtmI3UksdQRVvoxMfooAo"
|
|
crossorigin="anonymous"></script>
|
|
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/js/bootstrap.min.js"
|
|
integrity="sha384-wfSDF2E50Y2D1uUdj0O3uMBJnjuUD4Ih7YwaYd1iqfktj0Uod8GCExl3Og8ifwB6"
|
|
crossorigin="anonymous"></script>
|
|
|
|
<!-- Select2 for use with django autocomplete light -->
|
|
<link href="https://cdn.jsdelivr.net/npm/select2@4.0.13/dist/css/select2.min.css" rel="stylesheet"/>
|
|
<script src="https://cdn.jsdelivr.net/npm/select2@4.0.13/dist/js/select2.min.js"></script>
|
|
|
|
<!-- Bootstrap theme for select2 -->
|
|
<link rel="stylesheet"
|
|
href="https://cdnjs.cloudflare.com/ajax/libs/select2-bootstrap-theme/0.1.0-beta.10/select2-bootstrap.css"
|
|
integrity="sha256-zFnNbsU+u3l0K+MaY92RvJI6AdAVAxK3/QrBApHvlH8=" crossorigin="anonymous"/>
|
|
|
|
<link rel="stylesheet"
|
|
href="{% static 'themes/select2-bootstrap-theme.css' %}"
|
|
crossorigin="anonymous"/>
|
|
|
|
<script type="text/javascript">
|
|
$.fn.select2.defaults.set("theme", "bootstrap");
|
|
</script>
|
|
|
|
<!-- Fontawesome icons -->
|
|
<link rel="stylesheet" href="{% static "fontawesome/fontawesome_all.min.css" %}">
|
|
|
|
{% block extra_head %} <!-- block for templates to put stuff into header -->
|
|
{% endblock %}
|
|
|
|
<style>
|
|
@media (max-width: 1025px) {
|
|
.container {
|
|
width: 95% !important;
|
|
margin-left: 20px !important;
|
|
margin-right: 20px !important;
|
|
max-width: 1200px !important;
|
|
}
|
|
}
|
|
</style>
|
|
</head>
|
|
<body>
|
|
<nav class="navbar navbar-expand-lg navbar-dark bg-{% nav_color request %}" id="id_main_nav">
|
|
<!--<a class="navbar-brand" href="{% url 'index' %}">{% trans 'Cookbook' %}</a>-->
|
|
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarText"
|
|
aria-controls="navbarText" aria-expanded="false" aria-label="Toggle navigation">
|
|
<span class="navbar-toggler-icon"></span>
|
|
</button>
|
|
<div class="collapse navbar-collapse" id="navbarText">
|
|
<ul class="navbar-nav mr-auto">
|
|
<li class="nav-item {% if request.resolver_match.url_name == "index" %}active{% endif %}">
|
|
<a class="nav-link" href="{% url 'index' %}"><i class="fas fa-book"></i> {% trans 'Cookbook' %}<span
|
|
class="sr-only">(current)</span></a>
|
|
</li>
|
|
<li class="nav-item {% if request.resolver_match.url_name == "view_books" %}active{% endif %}">
|
|
<a class="nav-link" href="{% url 'view_books' %}"><i class="fas fa-bookmark"></i> {% trans 'Books' %}
|
|
</a>
|
|
</li>
|
|
<li class="nav-item {% if request.resolver_match.url_name == "view_plan" %}active{% endif %}">
|
|
<a class="nav-link" href="{% url 'view_plan' %}"><i class="fas fa-calendar"></i> {% trans 'Meal-Plan' %}
|
|
</a>
|
|
</li>
|
|
<li class="nav-item {% if request.resolver_match.url_name == "view_shopping" %}active{% endif %}">
|
|
<a class="nav-link" href="{% url 'view_shopping' %}"><i class="fas fa-shopping-cart"></i> {% trans 'Shopping' %}
|
|
</a>
|
|
</li>
|
|
<li class="nav-item dropdown">
|
|
<a class="nav-link dropdown-toggle" href="#" id="navbarDropdownMenuLink" data-toggle="dropdown"
|
|
aria-haspopup="true" aria-expanded="false">
|
|
<i class="fas fa-tags"></i> {% trans 'Tags' %}
|
|
</a>
|
|
<div class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink">
|
|
<a class="dropdown-item" href="{% url 'list_keyword' %}"><i
|
|
class="fas fa-tags"></i> {% trans 'Keyword' %}</a>
|
|
<a class="dropdown-item" href="{% url 'data_batch_edit' %}"><i
|
|
class="fas fa-edit"></i> {% trans 'Batch Edit' %}</a>
|
|
</div>
|
|
</li>
|
|
<li class="nav-item dropdown">
|
|
<a class="nav-link dropdown-toggle" href="#" id="navbarDropdownMenuLink" data-toggle="dropdown"
|
|
aria-haspopup="true" aria-expanded="false"><i class="fas fa-database"></i> {% trans 'Storage Data' %}
|
|
</a>
|
|
<div class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink">
|
|
<a class="dropdown-item" href="{% url 'list_storage' %}"><i
|
|
class="fas fa-database"></i> {% trans 'Storage Backends' %}</a>
|
|
<a class="dropdown-item" href="{% url 'data_sync' %}"><i
|
|
class="fas fa-sync-alt"></i> {% trans 'Configure Sync' %}</a>
|
|
<a class="dropdown-item" href="{% url 'list_recipe_import' %}"><i
|
|
class="far fa-file-alt"></i> {% trans 'Import Recipes' %}</a>
|
|
<a class="dropdown-item" href="{% url 'list_sync_log' %}"><i
|
|
class="fas fa-history"></i> {% trans 'Import Log' %}</a>
|
|
<a class="dropdown-item" href="{% url 'data_stats' %}"><i
|
|
class="fas fa-chart-line"></i> {% trans 'Statistics' %}</a>
|
|
<a class="dropdown-item" href="{% url 'edit_ingredient' %}"><i
|
|
class="fas fa-balance-scale"></i> {% trans 'Units & Ingredients' %}</a>
|
|
|
|
</div>
|
|
</li>
|
|
</ul>
|
|
|
|
<ul class="navbar-nav ml-auto">
|
|
<li class="nav-item {% if request.resolver_match.url_name == "view_settings" %}active{% endif %}">
|
|
<a class="nav-link" href="{% url 'view_settings' %}"><i
|
|
class="fas fa-user-cog"></i> {% trans 'Settings' %}</a>
|
|
</li>
|
|
{% if user.is_superuser %}
|
|
<li class="nav-item">
|
|
<a class="nav-link" href="{% url 'admin:index' %}"><i
|
|
class="fas fa-user-shield"></i> {% trans 'Admin' %}</a>
|
|
</li>
|
|
{% endif %}
|
|
<li class="nav-item">
|
|
{% if user.is_authenticated %}
|
|
<a class="nav-link" href="{% url 'logout' %}">{% trans 'Logout' %} {{ user.get_username }} <i
|
|
class="fas fa-sign-out-alt"></i></a>
|
|
{% else %}
|
|
<a class="nav-link" href="{% url 'login' %}">{% trans 'Login' %} <i class="fas fa-sign-in-alt"></i></a>
|
|
{% endif %}
|
|
</li>
|
|
</ul>
|
|
|
|
</div>
|
|
</nav>
|
|
<br/>
|
|
<br/>
|
|
|
|
<div class="container">
|
|
|
|
{% for message in messages %}
|
|
<div class="alert alert-{{ message.tags }} alert-dismissible fade show" role="alert">
|
|
{{ message }}
|
|
<button type="button" class="close" data-dismiss="alert" aria-label="Close">
|
|
<span aria-hidden="true">×</span>
|
|
</button>
|
|
</div>
|
|
{% endfor %}
|
|
|
|
{% block content %}
|
|
{% endblock %}
|
|
</div>
|
|
|
|
{% block script %}
|
|
{% endblock script %}
|
|
|
|
</body>
|
|
</html> |