Initial commit: Notes Manager App (notes.braetter-int.de)

- Python/Flask Backend
- SQLAlchemy Models (notes, tasks, templates, users)
- Gunicorn + Nginx Deploy-Konfiguration
- Static Assets (CSS/JS)
- Jinja2 Templates
This commit is contained in:
2026-04-15 09:28:33 +02:00
commit 5c7ce5d0ca
24 changed files with 1666 additions and 0 deletions

59
app/templates/users.html Executable file
View File

@@ -0,0 +1,59 @@
{% extends 'base.html' %}
{% block title %}Benutzer - NotesManager{% endblock %}
{% block content %}
<div class="row g-4">
<div class="col-lg-5">
<div class="card shadow-sm">
<div class="card-body">
<h1 class="h4 mb-3">Benutzer anlegen</h1>
<form method="post">
<div class="mb-3">
<label class="form-label">Benutzername</label>
<input name="username" class="form-control" required>
</div>
<div class="mb-3">
<label class="form-label">Anzeigename</label>
<input name="display_name" class="form-control" required>
</div>
<div class="mb-3">
<label class="form-label">Passwort</label>
<input type="password" name="password" class="form-control" required>
</div>
<div class="mb-3">
<label class="form-label">Rolle</label>
<select name="role" class="form-select">
<option value="user">user</option>
<option value="admin">admin</option>
</select>
</div>
<button class="btn btn-primary">Benutzer speichern</button>
</form>
</div>
</div>
</div>
<div class="col-lg-7">
<div class="card shadow-sm">
<div class="card-body">
<h1 class="h4 mb-3">Vorhandene Benutzer</h1>
<div class="table-responsive">
<table class="table align-middle">
<thead><tr><th>Benutzername</th><th>Anzeigename</th><th>Rolle</th><th>Erstellt</th></tr></thead>
<tbody>
{% for item in items %}
<tr>
<td>{{ item.username }}</td>
<td>{{ item.display_name }}</td>
<td>{{ item.role }}</td>
<td>{{ item.created_at.strftime('%d.%m.%Y %H:%M') }}</td>
</tr>
{% else %}
<tr><td colspan="4" class="text-muted">Keine Benutzer vorhanden.</td></tr>
{% endfor %}
</tbody>
</table>
</div>
</div>
</div>
</div>
</div>
{% endblock %}