2024-11-26 20:11:40 +00:00
{% load i18n static language_code %}
2024-07-01 10:19:21 +00:00
2024-07-05 13:32:07 +00:00
<!doctype html>
< html lang = "en" >
< head >
{% block head %}
{% block meta %}
< meta http-equiv = "Content-Type" content = "text/html; charset=utf-8" / >
< meta name = "robots" content = "NONE,NOARCHIVE" / >
2024-11-26 20:11:40 +00:00
< meta name = "viewp ort" content = "width=device-width, initial-scale=1.0" >
2024-07-05 13:32:07 +00:00
< meta name = "description" content = "" >
< meta name = "author" content = "Pangea" >
{% endblock %}
< title > {% block title %}{% if title %}{{ title }} – {% endif %}DeviceHub{% endblock %}< / title >
<!-- Bootstrap core CSS -->
{% block style %}
< link rel = "stylesheet" href = "https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.1/font/bootstrap-icons.css" >
< link rel = "stylesheet" href = "https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css" >
< link href = "{% static " / css / bootstrap . min . css " % } " rel = "stylesheet" >
< style >
.bd-placeholder-img {
font-size: 1.125rem;
text-anchor: middle;
-webkit-user-select: none;
-moz-user-select: none;
user-select: none;
}
@media (min-width: 768px) {
.bd-placeholder-img-lg {
font-size: 3.5rem;
}
}
html, body {
height: 100%;
}
body {
display: flex;
flex-direction: column;
}
.main-content {
flex-grow: 1;
}
footer {
width: 100%;
}
< / style >
<!-- Custom styles for this template -->
< link href = "{% static " / css / dashboard . css " % } " rel = "stylesheet" >
{% endblock %}
{% endblock %}
< / head >
< body >
< header class = "navbar navbar-dark sticky-top admin bg-green flex-md-nowrap p-0 shadow" >
2024-07-31 17:24:22 +00:00
< a class = "navbar-brand col-md-3 col-lg-2 me-0 px-3" href = "#" > DEVICEHUB< / a >
2024-07-05 13:32:07 +00:00
< div class = "navbar-nav navbar-sub-brand" >
2024-10-10 08:35:27 +00:00
{{ user.institution.name|upper }}
2024-07-05 13:32:07 +00:00
< / div >
< div class = "navbar-nav" >
< div class = "nav-item text-nowrap" >
< i id = "user-avatar" class = "bi bi-person-circle" > < / i >
2024-10-10 08:35:27 +00:00
< a class = "navbar-sub-brand px-3" href = "{% url 'user:panel' %}" > {{ user.email }}< / a >
2024-07-05 13:32:07 +00:00
< a class = "logout" href = "{% url 'login:logout' %}" >
< i class = "fa-solid fa-arrow-right-from-bracket" > < / i >
< / a >
< / div >
< / div >
< / header >
< div class = "container-fluid" >
< div class = "row" >
< nav id = "sidebarMenu" class = "col-md-3 col-lg-2 d-md-block bg-light sidebar collapse" >
< div class = "position-sticky pt-5" >
< ul class = "nav flex-column" >
2024-10-03 15:46:02 +00:00
{% if user.is_admin %}
< li class = "nav-item" >
< a class = "admin {% if path in 'panel users' %}active {% endif %}nav-link fw-bold" data-bs-toggle = "collapse" data-bs-target = "#ul_admin" aria-expanded = "false" aria-controls = "ul_admin" href = "javascript:void()" >
< i class = "bi bi-person-fill-gear icon_sidebar" > < / i >
{% trans 'Admin' %}
< / a >
< ul class = "flex-column mb-2 ul_sidebar accordion-collapse {% if path in 'panel users' %}expanded{% else %}collapse{% endif %}" id = "ul_admin" data-bs-parent = "#sidebarMenu" >
< li class = "nav-item" >
< a class = "nav-link{% if path == 'panel' %} active2{% endif %}" href = "{% url 'admin:panel' %}" >
{% trans 'Panel' %}
< / a >
< / li >
< li class = "nav-item" >
< a class = "nav-link{% if path == 'users' %} active2{% endif %}" href = "{% url 'admin:users' %}" >
{% trans 'Users' %}
< / a >
< / li >
< / ul >
< / li >
{% endif %}
2024-07-05 13:32:07 +00:00
< li class = "nav-item" >
2024-09-17 10:21:00 +00:00
< a class = "admin {% if path == 'unassigned_devices' %}active {% endif %}nav-link fw-bold" data-bs-toggle = "collapse" data-bs-target = "#ul_devices" aria-expanded = "false" aria-controls = "ul_devices" href = "javascript:void()" >
2024-07-05 13:32:07 +00:00
< i class = "bi bi-laptop icon_sidebar" > < / i >
{% trans 'Devices' %}
< / a >
2024-09-17 10:21:00 +00:00
< ul class = "flex-column mb-2 ul_sidebar accordion-collapse {% if path == 'unassigned_devices' %}expanded{% else %}collapse{% endif %}" id = "ul_devices" data-bs-parent = "#sidebarMenu" >
2024-07-05 13:32:07 +00:00
< li class = "nav-item" >
2024-09-17 10:21:00 +00:00
< a class = "nav-link{% if path == 'unassigned_devices' %} active2{% endif %}" href = "{% url 'dashboard:unassigned_devices' %}" >
2024-11-28 05:50:57 +00:00
{% trans 'Unassigned' %}
2024-07-05 13:32:07 +00:00
< / a >
< / li >
< / ul >
< / li >
< li class = "nav-item" >
2024-09-17 10:21:00 +00:00
< a class = "admin {% if path == 'tag' %}active {% endif %}nav-link fw-bold" data-bs-toggle = "collapse" data-bs-target = "#ul_lots" aria-expanded = "false" aria-controls = "ul_lots" href = "javascript:void()" >
2024-07-05 13:32:07 +00:00
< i class = "bi bi-database icon_sidebar" > < / i >
{% trans 'Lots' %}
< / a >
2024-09-17 10:21:00 +00:00
< ul class = "flex-column mb-2 ul_sidebar accordion-collapse {% if path == 'tag' %}expanded{% else %}collapse{% endif %}" id = "ul_lots" data-bs-parent = "#sidebarMenu" >
2024-07-18 15:21:22 +00:00
{% for tag in lot_tags %}
2024-07-05 13:32:07 +00:00
< li class = "nav-items" >
2024-09-17 10:21:00 +00:00
< a class = "nav-link{% if path == 'tag' %} active2{% endif %}" href = "{% url 'lot:tag' tag.id %}" >
2024-07-18 15:21:22 +00:00
{{ tag.name }}
2024-07-05 13:32:07 +00:00
< / a >
< / li >
2024-07-18 15:21:22 +00:00
{% endfor %}
2024-07-05 13:32:07 +00:00
< / ul >
< / li >
< li class = "nav-item" >
2024-09-17 10:21:00 +00:00
< a class = "admin {% if path in 'upload list' %}active {% endif %}nav-link fw-bold" data-bs-toggle = "collapse" data-bs-target = "#ul_evidences" aria-expanded = "false" aria-controls = "ul_evidences" href = "javascript:void()" >
2024-07-05 13:32:07 +00:00
< i class = "bi bi-usb-drive icon_sidebar" > < / i >
2024-09-17 10:21:00 +00:00
{% trans 'Evidences' %}
2024-07-05 13:32:07 +00:00
< / a >
2024-09-17 10:21:00 +00:00
< ul class = "flex-column mb-2 ul_sidebar accordion-collapse {% if path in 'upload list' %}expanded{% else %}collapse{% endif %}" id = "ul_evidences" data-bs-parent = "#sidebarMenu" >
2024-07-05 13:32:07 +00:00
< li class = "nav-item" >
2024-09-17 10:21:00 +00:00
< a class = "nav-link{% if path == 'upload' %} active2{% endif %}" href = "{% url 'evidence:upload' %}" >
2024-11-28 05:50:57 +00:00
{% trans 'Upload' %}
2024-07-05 13:32:07 +00:00
< / a >
< / li >
< li class = "nav-item" >
2024-09-17 10:21:00 +00:00
< a class = "nav-link{% if path == 'list' %} active2{% endif %}" href = "{% url 'evidence:list' %}" >
2024-07-26 15:59:34 +00:00
{% trans 'Old evidences' %}
2024-07-05 13:32:07 +00:00
< / a >
< / li >
< / ul >
< / li >
< li class = "nav-item" >
2024-09-17 10:21:00 +00:00
< a class = "admin {% if path in 'import add' %}active {% endif %}nav-link fw-bold" data-bs-toggle = "collapse" data-bs-target = "#ul_placeholders" aria-expanded = "false" aria-controls = "ul_placeholders" href = "javascript:void()" >
2024-07-05 13:32:07 +00:00
< i class = "bi-menu-button-wide icon_sidebar" > < / i >
{% trans 'Placeholders' %}
< / a >
2024-09-17 10:21:00 +00:00
< ul class = "flex-column mb-2 ul_sidebar accordion-collapse {% if path in 'import add' %}expanded{% else %}collapse{% endif %}" id = "ul_placeholders" data-bs-parent = "#sidebarMenu" >
2024-07-05 13:32:07 +00:00
< li class = "nav-item" >
2024-09-17 10:21:00 +00:00
< a class = "nav-link{% if path == 'import' %} active2{% endif %}" href = "{% url 'evidence:import' %}" >
2024-11-28 05:50:57 +00:00
{% trans 'Import from spreadsheet' %}
2024-07-05 13:32:07 +00:00
< / a >
< / li >
< li class = "nav-item" >
2024-09-17 10:21:00 +00:00
< a class = "nav-link{% if path == 'add' %} active2{% endif %}" href = "{% url 'device:add' %}" >
2024-11-28 05:50:57 +00:00
{% trans 'Add device' %}
2024-07-05 13:32:07 +00:00
< / a >
< / li >
< / ul >
< / li >
< / ul >
< / div >
< / nav >
< main class = "col-md-9 ms-sm-auto col-lg-10 px-md-4" >
{% block messages %}
{% for message in messages %}
< div class = "alert {{ message.tags|default:'info' }} alert-dismissible fade show mt-3" role = "alert" >
{{ message }}
< button type = "button" class = "btn-close" data-bs-dismiss = "alert" aria-label = "Close" >
< / button >
< / div >
{% endfor %}
{% endblock messages %}
< div class = "d-flex justify-content-between flex-wrap flex-md-nowrap align-items-center pt-3 pb-2" >
< h1 class = "h2" > {{ title }}< / h1 >
2024-10-09 10:18:09 +00:00
< form method = "post" action = "{% url 'dashboard:search' %}" >
{% csrf_token %}
< div class = "input-group rounded" >
2024-11-27 05:05:57 +00:00
< input type = "search" name = "search" class = "form-control rounded" placeholder = "{% trans 'Search your device' %}" aria-label = "Search" aria-describedby = "search-addon" / >
2024-10-09 10:18:09 +00:00
< span class = "input-group-text border-0" id = "search-addon" >
< i class = "fas fa-search" > < / i >
< / span >
< / div >
< / form >
2024-07-05 13:32:07 +00:00
< / div >
2024-10-10 10:28:03 +00:00
2024-07-05 13:32:07 +00:00
< div class = "row border-bottom mb-3" >
< div class = "col" >
< small style = "color:#899bbd" > < i > {{ breadcrumb }}< / i > < / small >
< / div >
< div class = "btn-toolbar mb-2 mb-md-0" >
< / div >
< / div >
{% block content %}
{% endblock content %}
< / main >
< / div >
< / div >
2024-11-26 20:11:40 +00:00
<!-- Footer -->
2024-07-05 13:32:07 +00:00
< footer class = "footer text-center mt-auto py-3" >
2024-11-26 20:11:40 +00:00
< div class = "container d-flex justify-content-center align-items-center" >
< span class = "text-muted mx-auto" > {{ commit_id }}< / span >
< div class = "dropdown ms-auto" >
2024-11-26 20:52:41 +00:00
< form action = "{% url 'set_language' %}" method = "post" >
{% csrf_token %}
2024-11-27 05:05:57 +00:00
< button class = "btn btn-tertiary dropdown-toggle" type = "button" id = "languageDropdown" data-bs-toggle = "dropdown" aria-expanded = "false" >
2024-11-26 20:52:41 +00:00
{% get_current_language as LANGUAGE_CODE %}
{% get_language_info_list for LANGUAGES as languages %}
{{ LANGUAGE_CODE|get_language_code:languages }}
< / button >
< ul class = "dropdown-menu dropdown-menu-end" aria-labelledby = "languageDropdown" >
{% for lang in languages %}
< li >
< button class = "dropdown-item" type = "submit" name = "language" value = "{{ lang.code }}" > {{ lang.name_local }}< / button >
< / li >
{% endfor %}
< / ul >
< / form >
< div >
2024-11-26 20:11:40 +00:00
2024-07-05 13:32:07 +00:00
< / div >
< / footer >
{% block script %}
< script src = "{% static " js / jquery-3 . 3 . 1 . slim . min . js " % } " > < / script >
< script src = "{% static " js / popper . min . js " % } " > < / script >
< script src = "{% static " js / bootstrap . min . js " % } " > < / script >
{% block extrascript %}{% endblock %}
{% endblock %}
< / body >
2024-07-01 10:19:21 +00:00
< / html >