feat: upgrade Bootstrap to v5.3

This commit is contained in:
relikd
2023-06-18 19:04:46 +02:00
parent 28b8c08580
commit 47daa1171a
18 changed files with 72 additions and 93 deletions

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -3,9 +3,8 @@
src: url(/static/fonts/Dosis.ttf);
}
.font-dosis {
font-family: 'Dosis', sans-serif;
}
a:not(:hover) {text-decoration: none;}
.font-dosis {font-family: 'Dosis', sans-serif;}
/*
* Colors
@@ -21,15 +20,9 @@
--fg-subtle: #495057;
}
.bg-subtle {
background-color: var(--bg-subtle);
}
.bg-subtle:hover {
background-color: var(--bg-subtle-hover);
}
.bg-dim {
background-color: var(--bg-dim);
}
.bg-subtle {background-color: var(--bg-subtle);}
.bg-subtle:hover {background-color: var(--bg-subtle-hover);}
.bg-dim {background-color: var(--bg-dim);}
.btn.bg-dim:hover, .list-group-item-action.bg-dim:hover {
background-color: var(--bg-dim-hover);
}
@@ -59,10 +52,6 @@ header {
z-index: 99;
}
#main-nav {
display: flex;
}
#navbar-toggler {
display: none;
margin-right: 1em;
@@ -130,7 +119,7 @@ header {
table th {
font-size: .8em;
background-color: var(--bg-dim);
background-color: var(--bg-dim) !important;
}
thead>tr, tr.thead {
@@ -189,13 +178,14 @@ td.table-actions a:hover {
} */
.table-sm tbody>tr {
border: unset !important;
border-left: 0;
border-right: 0;
}
table.clickable tbody>tr {
cursor: pointer;
}
table.clickable tbody>tr:hover {
table.clickable tbody>tr:hover>td {
background-color: var(--bg-subtle-hover);
}
@@ -204,10 +194,10 @@ table.clickable tbody>tr:hover {
gap: .3em;
align-items: baseline;
color: var(--fg-subtle);
font-size: 2.5rem;
font-size: 2.3rem;
}
.h1-w-icon+.h1-w-icon {
font-size: 2rem;
font-size: 1.8rem;
}
.h1-w-icon>h1 {
font-size: unset;
@@ -264,13 +254,13 @@ table.clickable tbody>tr:hover {
}
.text-red {
color: #df2752;
color: #df2752 !important;
}
.text-green {
color: #23be58;
color: #23be58 !important;
}
.text-gray {
color: #aaa;
color: #aaa !important;
}
#by_month_history td:first-of-type {

View File

@@ -8,42 +8,44 @@
<head>
<meta charset="UTF-8">
<link rel="shortcut icon" href="{% static 'img/favicon.ico' %}">
<link rel="stylesheet" type="text/css" href="{% static 'bootstrap4.6.2/css/bootstrap.min.css' %}">
<link rel="stylesheet" type="text/css" href="{% static 'bootstrap5.3/css/bootstrap.min.css' %}">
<link rel="stylesheet" type="text/css" href="{% static 'fontawesome6.4.0/css/all.min.css' %}">
<link rel="stylesheet" type="text/css" href="{% static 'css/style.css' %}">
{% comment %} <script src="{% static 'jquery3.6.4/js/jquery.min.js' %}"></script> {% endcomment %}
{% comment %} <script src="{% static 'bootstrap4.6.2/js/bootstrap.min.js' %}"></script> {% endcomment %}
{% comment %} <script src="{% static 'bootstrap5.3/js/bootstrap.min.js' %}"></script> {% endcomment %}
<script src="{% static 'js/main.js' %}"></script>
<script src="{% static 'js/onload.js' %}" defer></script>
<title>{% block title %}{{ title }}{% endblock title %}</title>
</head>
<body>
<header>
<nav id="main-nav" class="navbar navbar-expand-lg navbar-light">
<a id="navbar-toggler" onclick="toggleMenu('sidebar-wrapper')">
<span class="navbar-toggler-icon"></span>
</a>
<a class="navbar-brand d-none d-md-block" href="{% url 'index' %}">
<img id="logo" src="{% static 'img/logo.png' %}" alt="Werkstattmanagement">
</a>
<form id="global-search" action="{% url 'person:list' %}" method="get">
<input name="q" value="{{ request.GET.q }}">
<button type="submit" class="btn bg-owba"><i class="fas fa-search"></i></button>
</form>
<div class="avatar">
<button type="button" data-toggle="dropdown" onclick="toggleMenu('profileMenu')">
<i class="far fa-user fa-lg"></i>
</button>
<div id="profileMenu" class="dropdown-menu dropdown-menu-right icon-list">
<a class="dropdown-item" href="{% url 'dashboard' %}"><i class="fas fa-chart-line"></i> Dashboard</a>
<a class="dropdown-item" href="{% url 'settings' %}"><i class="fas fa-sliders-h"></i> Einstellungen</a>
<a class="dropdown-item" href="{% url 'logout' %}"><i class="fas fa-arrow-right-from-bracket"></i> Logout</a>
<nav class="navbar navbar-expand-lg">
<div class="container-fluid">
<a id="navbar-toggler" onclick="toggleMenu('sidebar-wrapper')">
<span class="navbar-toggler-icon"></span>
</a>
<a class="navbar-brand d-none d-md-block" href="{% url 'index' %}">
<img id="logo" src="{% static 'img/logo.png' %}" alt="Werkstattmanagement">
</a>
<form id="global-search" action="{% url 'person:list' %}" method="get">
<input name="q" value="{{ request.GET.q }}">
<button type="submit" class="btn bg-owba"><i class="fas fa-search"></i></button>
</form>
<div class="avatar">
<button type="button" data-toggle="dropdown" onclick="toggleMenu('profileMenu')">
<i class="far fa-user fa-lg"></i>
</button>
<div id="profileMenu" class="dropdown-menu dropdown-menu-right icon-list">
<a class="dropdown-item" href="{% url 'dashboard' %}"><i class="fas fa-chart-line"></i> Dashboard</a>
<a class="dropdown-item" href="{% url 'settings' %}"><i class="fas fa-sliders-h"></i> Einstellungen</a>
<a class="dropdown-item" href="{% url 'logout' %}"><i class="fas fa-arrow-right-from-bracket"></i> Logout</a>
</div>
</div>
</div>
</nav>
</header>
<div class="d-flex" id="wrapper">
<div id="sidebar-wrapper" class="border-right bg-dim">
<div id="sidebar-wrapper" class="border-end bg-dim">
<div class="icon-list list-group list-group-flush">
<a href="{% url 'booking:list' %}" class="list-group-item list-group-item-action bg-dim"><i class="fas fa-clock"></i> Zeitbuchungen</a>
<a href="{% url 'person:list' %}" class="list-group-item list-group-item-action bg-dim"><i class="fas fa-users"></i> Werkstattnutzer:innen</a>
@@ -53,7 +55,7 @@
</div>
{% if BUILD_DATE %}
<i class="flex-fill"></i>
<p class="small text-center font-weight-lighter">
<p class="small text-center fw-lighter">
v{{ BUILD_DATE|date:'Y-m-d H:i' }}
</p>
{% endif %}

View File

@@ -44,8 +44,8 @@ und <b>{{person.by_count.long_not_seen}}</b> waren seit über einem Jahr nicht m
<tr>
<th>{{ booking.labels|get_item:stat.type }}</th>
<td class="text-center">{{ stat.count }}</td>
<td class="text-right">{{ stat.sum|divide:stat.count|floatformat:1 }} Min.</td>
<td class="text-right">{{ stat.sum }} Min.</td>
<td class="text-end">{{ stat.sum|divide:stat.count|floatformat:1 }} Min.</td>
<td class="text-end">{{ stat.sum }} Min.</td>
</tr>
{% endfor %}
</table>

View File

@@ -16,9 +16,9 @@
<div class="mb-3">
<h6 class="d-inline-block">Attribute:</h6>
{% for attr in object.attributes|dictsort:2 %}
<a class="badge border1" href="{% url 'trait-mapping:detail' attr.0 %}">{{ attr.2 }}</a>
<a class="badge text-primary border1" href="{% url 'trait-mapping:detail' attr.0 %}">{{ attr.2 }}</a>
{% endfor %}
<a class="badge badge-secondary" href="{% url 'trait-mapping:create' %}{{ back_query }}&user={{ object.pk }}" title="Attribut hinzufügen"><i class="fas fa-plus"></i></a>
<a class="badge bg-secondary" href="{% url 'trait-mapping:create' %}{{ back_query }}&user={{ object.pk }}" title="Attribut hinzufügen"><i class="fas fa-plus"></i></a>
</div>
{% include 'widgets/alerts.html' %}
@@ -57,13 +57,11 @@
</div>
<form method="get" action="{% url 'transaction:create' %}" onsubmit>
<div class="input-group">
<input name="amount" class="form-control text-right" type="number" min="0" step="0.5" value="{{ object.account.balance|invert|min:object.account.balance|default:10|floatformat:'2u' }}">
<div class="input-group-append">
<span class="input-group-text"></span>
</div>
<input name="amount" class="form-control text-end" type="number" min="0" step="0.5" value="{{ object.account.balance|invert|min:object.account.balance|default:10|floatformat:'2u' }}">
<span class="input-group-text"></span>
</div>
<input type="hidden" name="account" value="{{ object.account.pk }}">
<div class="btn-group btn-block mt-2">
<div class="btn-group mt-2 w-100">
<button name="_type" class="btn btn-outline-success" value="deposit-plus">Einzahlen</button>
<button name="_type" class="btn btn-outline-danger" value="deposit-minus">Auszahlen</button>
</div>

View File

@@ -1,7 +1,7 @@
{% if object.note %}
<div class="alert alert-warning d-flex">
<span><i class="far fa-message"></i></span>
<span class="raw-text ml-2">{{ object.note }}</span>
<span class="raw-text ms-2">{{ object.note }}</span>
</div>
{% endif %}
{% if object.agreed_to_terms_of_service is False %}

View File

@@ -4,19 +4,17 @@
{% if user.current_checkin %}
<div id="checkin-timer" class="text-green mb-3" data-since="{{ user.current_checkin.begin_time|date:'r' }}">0h 0min 0s</div>
<div class="checkin-title mb-3"><i class="fas fa-circle text-green"></i> {{ user.first_name }} ist in der Werkstatt.</div>
<a class="btn btn-primary btn-block" href="{% url 'toggle-checkin' user.id %}?next={{ request.path }}">{{ user.first_name }} auschecken</a>
<a class="btn btn-primary w-100" href="{% url 'toggle-checkin' user.id %}?next={{ request.path }}">{{ user.first_name }} auschecken</a>
{% else %}
<div class="checkin-title mb-3"><i class="fas fa-circle text-red"></i> {{ user.first_name }} ist zuhause.</div>
<form method="GET" action="{% url 'toggle-checkin' user.id %}">
<div class="form-group">
<label for="plan-select">Tarif:</label>
<select class="custom-select mb-2" id="plan-select" name="plan">
<option value="basic" selected>BASIC</option>
<option value="plus">PLUS</option>
</select>
<input type="hidden" name="next" value="{{ request.path }}">
</div>
<button type="submit" class="btn btn-primary btn-block">{{ user.first_name }} einchecken</button>
<label for="plan-select" class="form-label">Tarif:</label>
<select class="form-select mt-2 mb-4" id="plan-select" name="plan">
<option value="basic" selected>BASIC</option>
<option value="plus">PLUS</option>
</select>
<input type="hidden" name="next" value="{{ request.path }}">
<button type="submit" class="btn btn-primary w-100">{{ user.first_name }} einchecken</button>
</form>
{% endif %}
</div>

View File

@@ -129,7 +129,7 @@ class PersonDetailView(PersonOptions, ModelDetailView):
},
'amount': {
'is_price': True,
'class': 'text-right',
'class': 'text-end',
},
},
}

View File

@@ -27,7 +27,7 @@ class TransactionOptions(ViewOptions[Transaction], LoginRequired):
},
'amount': {
'is_price': True,
'class': 'text-right',
'class': 'text-end',
'width': '6rem',
},
'account': {