Start switch to Bootstrap 5

- drop jQuery and fontawesome dependencies
- add bootstrap5 and bootstrap-icons
- update fonts mfizz
- update base templates and the first set of other templates
- replace blocktrans and trans with blocktranslate and translate to
  prepare for Django 4
- move hostingpakcage templates to hostingpackages/templates
- update translations
This commit is contained in:
Jan Dittberner 2023-04-16 22:11:32 +02:00
parent 5cf7ef7a23
commit 8e42cb9c18
124 changed files with 10873 additions and 4490 deletions

View file

@ -2,34 +2,46 @@
{% load i18n crispy_forms_tags %}
{% block title %}{{ block.super }} - {% spaceless %}
{% if user == customer %}
{% blocktrans %}Delete SSH Public Key for Operating System User {{ osuser }}{% endblocktrans %}
{% else %}
{% blocktrans with full_name=customer.get_full_name %}Delete SSH Public Key for Operating System User {{ osuser }} of Customer {{ full_name }}{% endblocktrans %}
{% endif %}
{% if user == customer %}
{% blocktranslate %}Delete SSH Public Key for Operating System User {{ osuser }}{% endblocktranslate %}
{% else %}
{% blocktranslate with full_name=customer.get_full_name trimmed %}
Delete SSH Public Key for Operating System User {{ osuser }} of Customer {{ full_name }}
{% endblocktranslate %}
{% endif %}
{% endspaceless %}{% endblock title %}
{% block page_title %}{% spaceless %}
{% if user == customer %}
{% blocktrans %}Delete SSH Public Key <small>for Operating System User {{ osuser }}</small>{% endblocktrans %}
{% else %}
{% blocktrans with full_name=customer.get_full_name %}Delete SSH Public Key <small>for Operating System User {{ osuser }} of Customer {{ full_name }}</small>{% endblocktrans %}
{% endif %}
{% if user == customer %}
{% blocktranslate trimmed %}
Delete SSH Public Key <small>for Operating System User {{ osuser }}</small>
{% endblocktranslate %}
{% else %}
{% blocktranslate with full_name=customer.get_full_name trimmed %}
Delete SSH Public Key <small>for Operating System User {{ osuser }} of Customer {{ full_name }}</small>
{% endblocktranslate %}
{% endif %}
{% endspaceless %}{% endblock page_title %}
{% block content %}
<div class="panel panel-warning">
<div class="panel-heading">
{% blocktrans with algorithm=key.algorithm %}Do you really want to delete the {{ algorithm }} SSH public key?{% endblocktrans %}
</div>
<div class="panel-body form">
<p >{% blocktrans %}When you confirm the deletion of this key you will no longer be able to use the corresponding private key for authentication.{% endblocktrans %}</p>
<pre>{{ key }}</pre>
<form action="{% url 'delete_ssh_key' package=hostingpackage.id pk=key.id %}" method="post">
{% csrf_token %}
<input class="btn btn-warning" type="submit" value="{% trans "Yes, do it!" %}" />
<a class="btn btn-default" href="{% url 'list_ssh_keys' package=hostingpackage.id %}" title="{% trans "Cancel and go back to the SSH key list" %}">{% trans "Cancel" %}</a>
</form>
</div>
</div>
{% endblock content %}
<div class="panel panel-warning">
<div class="panel-heading">
{% blocktranslate with algorithm=key.algorithm trimmed %}
Do you really want to delete the {{ algorithm }} SSH public key?
{% endblocktranslate %}
</div>
<div class="panel-body form">
<p>{% blocktranslate trimmed %}
When you confirm the deletion of this key you will no longer be able to use the corresponding private
key for authentication.
{% endblocktranslate %}</p>
<pre>{{ key }}</pre>
<form action="{% url 'delete_ssh_key' package=hostingpackage.id pk=key.id %}" method="post">
{% csrf_token %}
<input class="btn btn-warning" type="submit" value="{% translate "Yes, do it!" %}"/>
<a class="btn btn-default" href="{% url 'list_ssh_keys' package=hostingpackage.id %}"
title="{% translate "Cancel and go back to the SSH key list" %}">{% translate "Cancel" %}</a>
</form>
</div>
</div>
{% endblock content %}

View file

@ -2,29 +2,37 @@
{% load i18n crispy_forms_tags %}
{% block title %}{{ block.super }} - {% spaceless %}
{% if user == customer %}
{% blocktrans %}Add new SSH Public Key for Operating System User {{ osuser }}{% endblocktrans %}
{% else %}
{% blocktrans with full_name=customer.get_full_name %}Add a new SSH Public Key for Operating System User {{ osuser }} of Customer {{ full_name }}{% endblocktrans %}
{% endif %}
{% if user == customer %}
{% blocktranslate trimmed %}
Add new SSH Public Key for Operating System User {{ osuser }}
{% endblocktranslate %}
{% else %}
{% blocktranslate with full_name=customer.get_full_name trimmed %}
Add a new SSH Public Key for Operating System User {{ osuser }} of Customer {{ full_name }}
{% endblocktranslate %}
{% endif %}
{% endspaceless %}{% endblock title %}
{% block page_title %}{% spaceless %}
{% if user == customer %}
{% blocktrans %}Add new SSH Public Key <small>for Operating System User {{ osuser }}</small>{% endblocktrans %}
{% else %}
{% blocktrans with full_name=customer.get_full_name %}Add a new SSH Public Key <small>for Operating System User {{ osuser }} of Customer {{ full_name }}</small>{% endblocktrans %}
{% endif %}
{% if user == customer %}
{% blocktranslate trimmed %}
Add new SSH Public Key <small>for Operating System User {{ osuser }}</small>
{% endblocktranslate %}
{% else %}
{% blocktranslate with full_name=customer.get_full_name trimmed %}
Add a new SSH Public Key <small>for Operating System User {{ osuser }} of Customer {{ full_name }}</small>
{% endblocktranslate %}
{% endif %}
{% endspaceless %}{% endblock page_title %}
{% block content %}
{% crispy form %}
{% crispy form %}
{% endblock content %}
{% block extra_js %}
<script type="text/javascript">
$(document).ready(function() {
$('textarea').first().focus();
});
</script>
{% endblock extra_js %}
<script type="text/javascript">
document.addEventListener("DOMContentLoaded", function () {
document.getElementsByTagName("textarea")[0].focus();
});
</script>
{% endblock extra_js %}

View file

@ -2,29 +2,36 @@
{% load i18n crispy_forms_tags %}
{% block title %}{{ block.super }} - {% spaceless %}
{% if user == customer %}
{% blocktrans %}Edit Comment of SSH Public Key for Operating System User {{ osuser }}{% endblocktrans %}
{% else %}
{% blocktrans with full_name=customer.get_full_name %}Edit Comment of SSH Public Key for Operating System User {{ osuser }} of Customer {{ full_name }}{% endblocktrans %}
{% endif %}
{% if user == customer %}
{% blocktranslate %}Edit Comment of SSH Public Key for Operating System User {{ osuser }}{% endblocktranslate %}
{% else %}
{% blocktranslate with full_name=customer.get_full_name trimmed %}
Edit Comment of SSH Public Key for Operating System User {{ osuser }} of Customer {{ full_name }}
{% endblocktranslate %}
{% endif %}
{% endspaceless %}{% endblock title %}
{% block page_title %}{% spaceless %}
{% if user == customer %}
{% blocktrans %}Edit Comment of Public Key <small>for Operating System User {{ osuser }}</small>{% endblocktrans %}
{% else %}
{% blocktrans with full_name=customer.get_full_name %}Edit Comment of SSH Public Key <small>for Operating System User {{ osuser }} of Customer {{ full_name }}</small>{% endblocktrans %}
{% endif %}
{% if user == customer %}
{% blocktranslate trimmed %}
Edit Comment of Public Key <small>for Operating System User {{ osuser }}</small>
{% endblocktranslate %}
{% else %}
{% blocktranslate with full_name=customer.get_full_name trimmed %}
Edit Comment of SSH Public Key
<small>for Operating System User {{ osuser }} of Customer {{ full_name }}</small>
{% endblocktranslate %}
{% endif %}
{% endspaceless %}{% endblock page_title %}
{% block content %}
{% crispy form %}
{% crispy form %}
{% endblock content %}
{% block extra_js %}
<script type="text/javascript">
$(document).ready(function() {
$('input[type=text]').first().focus().select();
});
</script>
{% endblock extra_js %}
<script type="text/javascript">
document.addEventListener("DOMContentLoaded", function () {
document.querySelectorAll("input[type=text]")[0].focus().select();
});
</script>
{% endblock extra_js %}

View file

@ -2,46 +2,60 @@
{% load i18n crispy_forms_tags %}
{% block title %}{{ block.super }} - {% spaceless %}
{% if user == customer %}
{% blocktrans %}SSH Public Keys for Operating System User {{ osuser }}{% endblocktrans %}
{% else %}
{% blocktrans with full_name=customer.get_full_name %}SSH Public Keys for Operating System User {{ osuser }} of Customer {{ full_name }}{% endblocktrans %}
{% endif %}
{% if user == customer %}
{% blocktranslate %}SSH Public Keys for Operating System User {{ osuser }}{% endblocktranslate %}
{% else %}
{% blocktranslate with full_name=customer.get_full_name trimmed %}
SSH Public Keys for Operating System User {{ osuser }} of Customer {{ full_name }}
{% endblocktranslate %}
{% endif %}
{% endspaceless %}{% endblock title %}
{% block page_title %}{% spaceless %}
{% if user == customer %}
{% blocktrans %}SSH Public Keys <small>for Operating System User {{ osuser }}</small>{% endblocktrans %}
{% else %}
{% blocktrans with full_name=customer.get_full_name %}SSH Public Keys <small>for Operating System User {{ osuser }} of Customer {{ full_name }}</small>{% endblocktrans %}
{% endif %}
{% if user == customer %}
{% blocktranslate trimmed %}
SSH Public Keys <small>for Operating System User {{ osuser }}</small>
{% endblocktranslate %}
{% else %}
{% blocktranslate with full_name=customer.get_full_name trimmed %}
SSH Public Keys <small>for Operating System User {{ osuser }} of Customer {{ full_name }}</small>
{% endblocktranslate %}
{% endif %}
{% endspaceless %}{% endblock page_title %}
{% block content %}
{% if keys %}
<table class="table">
<thead>
<tr>
<th class="name-column">{% trans "Algorithm" %}</th>
<th>{% trans "Comment" %}</th>
<th title="{% trans "SSH public key actions" %}" class="actions-column"><span class="sr-only">{% trans "Actions" %}</span></th>
</tr>
</thead>
<tbody>
{% for key in keys %}
<tr>
<td>{{ key.algorithm }}</td>
<td>{{ key.comment }}</td>
<td>
<a href="{% url 'delete_ssh_key' package=hostingpackage.id pk=key.id %}" title="{% trans "Delete this SSH public key" %}"><i class="glyphicon glyphicon-trash"></i><span class="sr-only"> {% trans "Delete" %}</span></a>
<a href="{% url 'edit_ssh_key_comment' package=hostingpackage.id pk=key.id %}" title="{% trans "Edit this SSH public key's comment" %}"><i class="glyphicon glyphicon-pencil"></i><span class="sr-only"> {% trans "Edit Comment" %}</span></a>
</td>
</tr>
{% endfor %}
</tbody>
</table>
{% else %}
<p class="bg-warning">{% trans "There are now SSH public keys set for this operating system user yet." %}</p>
{% endif %}
<p><a href="{% url 'add_ssh_key' package=hostingpackage.id %}" class="btn btn-primary">{% trans "Add SSH public key" %}</a></p>
{% endblock content %}
{% if keys %}
<table class="table">
<thead>
<tr>
<th class="name-column">{% translate "Algorithm" %}</th>
<th>{% translate "Comment" %}</th>
<th title="{% translate "SSH public key actions" %}" class="actions-column"><span
class="visually-hidden">{% translate "Actions" %}</span></th>
</tr>
</thead>
<tbody>
{% for key in keys %}
<tr>
<td>{{ key.algorithm }}</td>
<td>{{ key.comment }}</td>
<td>
<a href="{% url 'delete_ssh_key' package=hostingpackage.id pk=key.id %}"
title="{% translate "Delete this SSH public key" %}"><i
class="glyphicon glyphicon-trash"></i><span
class="visually-hidden"> {% translate "Delete" %}</span></a>
<a href="{% url 'edit_ssh_key_comment' package=hostingpackage.id pk=key.id %}"
title="{% translate "Edit this SSH public key's comment" %}"><i
class="glyphicon glyphicon-pencil"></i><span
class="visually-hidden"> {% translate "Edit Comment" %}</span></a>
</td>
</tr>
{% endfor %}
</tbody>
</table>
{% else %}
<p class="bg-warning">{% translate "There are now SSH public keys set for this operating system user yet." %}</p>
{% endif %}
<p><a href="{% url 'add_ssh_key' package=hostingpackage.id %}"
class="btn btn-primary">{% translate "Add SSH public key" %}</a></p>
{% endblock content %}

View file

@ -1,30 +1,39 @@
{% extends "osusers/base.html" %}
{% load i18n crispy_forms_tags %}
{% block title %}{{ block.super }} - {% spaceless %}
{% if customer == user %}
{% blocktrans with osuser=osuser.username %}Set new password for user {{ osuser }}{% endblocktrans %}
{% else %}
{% blocktrans with osuser=osuser.username full_name=customer.get_full_name %}Set new password for user {{ osuser }} of customer {{ full_name }}{% endblocktrans %}
{% endif %}
{% if customer == user %}
{% blocktranslate with osuser=osuser.username %}Set new password for user {{ osuser }}{% endblocktranslate %}
{% else %}
{% blocktranslate with osuser=osuser.username full_name=customer.get_full_name trimmed %}
Set new password for user {{ osuser }} of customer {{ full_name }}
{% endblocktranslate %}
{% endif %}
{% endspaceless %}{% endblock title %}
{% block page_title %}{% spaceless %}
{% if customer == user %}
{% blocktrans with osuser=osuser.username %}Set new password for user {{ osuser }}{% endblocktrans %}
{% else %}
{% blocktrans with osuser=osuser.username full_name=customer.get_full_name %}Set new password for user {{ osuser }} of customer {{ full_name }}{% endblocktrans %}
{% endif %}
{% if customer == user %}
{% blocktranslate with osuser=osuser.username %}Set new password for user {{ osuser }}{% endblocktranslate %}
{% else %}
{% blocktranslate with osuser=osuser.username full_name=customer.get_full_name trimmed %}
Set new password for user {{ osuser }} of customer {{ full_name }}
{% endblocktranslate %}
{% endif %}
{% endspaceless %}{% endblock page_title %}
{% block content %}
{% crispy form %}
{% crispy form %}
{% endblock content %}
{% block extra_js %}
<script type="text/javascript">
$(document).ready(function() {
$('input[type=password]').val('');
$('input[type=password]').first().focus();
});
</script>
{% endblock extra_js %}
<script type="text/javascript">
document.addEventListener("DOMContentLoaded", function () {
let passwordFields = document.querySelectorAll('input[type=password]');
for (const passwordFieldsKey in passwordFields) {
passwordFields[passwordFieldsKey].val('');
}
passwordFields[0].focus();
});
</script>
{% endblock extra_js %}