forked from enviPath/enviPy
139 lines
5.3 KiB
HTML
139 lines
5.3 KiB
HTML
<!DOCTYPE html>
|
|
<html data-theme="envipath" lang="en">
|
|
{% load static %}
|
|
<head>
|
|
<title>{{ title }}</title>
|
|
<meta charset="UTF-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
<meta name="csrf-token" content="{{ csrf_token }}">
|
|
|
|
{# Favicon #}
|
|
<link rel="shortcut icon" type="image/png" href="{% static 'images/favicon.ico' %}"/>
|
|
|
|
{# Tailwind CSS + DaisyUI Output #}
|
|
<link href="{% static 'css/output.css' %}" rel="stylesheet" type="text/css"/>
|
|
|
|
{# jQuery - Keep for compatibility with existing JS #}
|
|
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
|
|
|
|
{# Font Awesome #}
|
|
<link href="https://netdna.bootstrapcdn.com/font-awesome/4.0.3/css/font-awesome.css" rel="stylesheet">
|
|
|
|
{# Discourse embed for community #}
|
|
<script src="https://community.envipath.org/javascripts/embed-topics.js"></script>
|
|
|
|
<script>
|
|
const csrftoken = document.querySelector('[name=csrf-token]').content;
|
|
|
|
// Setup CSRF header for all jQuery AJAX requests
|
|
$.ajaxSetup({
|
|
beforeSend: function(xhr, settings) {
|
|
if (!/^(GET|HEAD|OPTIONS|TRACE)$/i.test(settings.type)) {
|
|
xhr.setRequestHeader("X-CSRFToken", csrftoken);
|
|
}
|
|
}
|
|
});
|
|
</script>
|
|
|
|
{# General EP JS #}
|
|
<script src="{% static 'js/pps.js' %}"></script>
|
|
{# Modal Steps for Stepwise Modal Wizards #}
|
|
<script src="{% static 'js/jquery-bootstrap-modal-steps.js' %}"></script>
|
|
|
|
{% if not debug %}
|
|
<!-- Matomo -->
|
|
<script>
|
|
var _paq = window._paq = window._paq || [];
|
|
_paq.push(['trackPageView']);
|
|
_paq.push(['enableLinkTracking']);
|
|
(function () {
|
|
var u = "//matomo.envipath.com/";
|
|
_paq.push(['setTrackerUrl', u + 'matomo.php']);
|
|
_paq.push(['setSiteId', '10']);
|
|
var d = document, g = d.createElement('script'), s = d.getElementsByTagName('script')[0];
|
|
g.async = true;
|
|
g.src = u + 'matomo.js';
|
|
s.parentNode.insertBefore(g, s);
|
|
})();
|
|
</script>
|
|
<!-- End Matomo Code -->
|
|
{% endif %}
|
|
</head>
|
|
<body class="min-h-screen bg-base-300">
|
|
{% include "includes/navbar.html" %}
|
|
|
|
{# Main Content Area #}
|
|
<main class="w-full">
|
|
{% block main_content %}
|
|
{# Breadcrumbs - outside main content, optional #}
|
|
{% if breadcrumbs %}
|
|
<div id="bread" class="max-w-7xl mx-auto px-4 py-4">
|
|
<div class="text-sm breadcrumbs">
|
|
<ul>
|
|
{% for elem in breadcrumbs %}
|
|
{% for name, url in elem.items %}
|
|
{% if forloop.parentloop.last %}
|
|
<li>{{ name }}</li>
|
|
{% else %}
|
|
<li><a href="{{ url }}">{{ name }}</a></li>
|
|
{% endif %}
|
|
{% endfor %}
|
|
{% endfor %}
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
{% endif %}
|
|
|
|
{# Main content container - paper effect on medium+ screens #}
|
|
<div id="docContent" class="w-full xl:w-xl md:mx-auto md:my-8 bg-base-100 md:shadow-2xl md:rounded-lg border-2">
|
|
{# Messages - inside paper #}
|
|
{% if message %}
|
|
<div id="message" class="alert alert-info m-4">
|
|
{{ message }}
|
|
</div>
|
|
{% endif %}
|
|
|
|
{# Page content - no enforced styles #}
|
|
{% block content %}
|
|
{% endblock content %}
|
|
|
|
{# License - inside paper if present #}
|
|
{% if meta.url_contains_package and meta.current_package.license %}
|
|
<div class="collapse collapse-arrow bg-base-200 m-8">
|
|
<input type="checkbox" checked />
|
|
<div class="collapse-title text-xl font-medium">
|
|
License
|
|
</div>
|
|
<div class="collapse-content">
|
|
<a target="_blank" href="{{ meta.current_package.license.link }}">
|
|
<img src="{{ meta.current_package.license.image_link }}" alt="License">
|
|
</a>
|
|
</div>
|
|
</div>
|
|
{% endif %}
|
|
</div>
|
|
{% endblock main_content %}
|
|
</main>
|
|
|
|
{% include "includes/footer.html" %}
|
|
|
|
{# Modals - TODO: Convert these to DaisyUI modals #}
|
|
{% block modals %}
|
|
{# Note: These modals still use Bootstrap markup and will need conversion #}
|
|
{% include "modals/cite_modal.html" %}
|
|
{% include "modals/signup_modal.html" %}
|
|
{% include "modals/predict_modal.html" %}
|
|
{% include "modals/batch_predict_modal.html" %}
|
|
{% endblock %}
|
|
|
|
<script>
|
|
$(function () {
|
|
// Hide actionsbutton if there's no action defined
|
|
if ($('#actionsButton ul').children().length > 0) {
|
|
$('#actionsButton').show();
|
|
}
|
|
});
|
|
</script>
|
|
</body>
|
|
</html>
|