Files
my2dos/core/templates/core/settings.html
T

56 lines
3.0 KiB
HTML

{% extends 'core/base.html' %}
{% block content %}
<a class="btn btn-sm btn-outline-secondary mb-3" href="/">← zurück</a>
<div class="row g-4">
<section class="col-lg-6">
<div class="card item-card shadow-sm"><div class="card-body">
<h1 class="h4 mb-3">Benutzereinstellungen</h1>
<form method="post" class="vstack gap-3">
{% csrf_token %}<input type="hidden" name="action" value="profile">
<div><label class="form-label">Vorname</label>{{ profile_form.first_name }}</div>
<div><label class="form-label">Name</label>{{ profile_form.last_name }}</div>
<div><label class="form-label">E-Mail</label>{{ profile_form.email }}</div>
<button class="btn btn-dark">Speichern</button>
</form>
</div></div>
</section>
<section class="col-lg-6">
<div class="card item-card shadow-sm mb-3"><div class="card-body">
<h2 class="h5 mb-3">Standardansicht</h2>
<form method="post" class="vstack gap-2">
{% csrf_token %}<input type="hidden" name="action" value="preferences">
{% for field in preference_form %}
{% if field.field.widget.input_type == 'checkbox' %}
<label class="form-check"><input class="form-check-input" type="checkbox" name="{{ field.name }}" {% if field.value %}checked{% endif %}> <span class="form-check-label">{{ field.label }}</span></label>
{% else %}
<div><label class="form-label">{{ field.label }}</label>{{ field }}</div>
{% endif %}
{% endfor %}
<button class="btn btn-dark mt-2">Standardansicht speichern</button>
</form>
</div></div>
<div class="card item-card shadow-sm mb-3"><div class="card-body">
<h2 class="h5 mb-3">API Key erzeugen</h2>
<form method="post" class="vstack gap-3">
{% csrf_token %}<input type="hidden" name="action" value="apikey">
<div><label class="form-label">Name</label>{{ key_form.name }}</div>
<div><label class="form-label">Auf Tags beschränken</label><div class="small text-muted mb-2">Keine Auswahl = Zugriff auf alle eigenen Einträge.</div>{{ key_form.tags }}</div>
<button class="btn btn-dark">API Key generieren</button>
</form>
</div></div>
<div class="card item-card shadow-sm"><div class="card-body">
<h2 class="h5 mb-3">API Keys</h2>
<div class="vstack gap-2">
{% for key in api_keys %}
<div class="border rounded p-2">
<div class="d-flex justify-content-between gap-2"><strong>{{ key.name }}</strong><form method="post" action="{% url 'delete_api_key' key.id %}">{% csrf_token %}<button class="btn btn-sm btn-outline-danger">Löschen</button></form></div>
<code class="small user-select-all">{{ key.token }}</code>
<div class="small text-muted">Tags: {% for tag in key.tags.all %}#{{ tag.name }} {% empty %}alle{% endfor %}</div>
</div>
{% empty %}<span class="text-muted">Noch keine API Keys.</span>{% endfor %}
</div>
</div></div>
</section>
</div>
{% endblock %}