multiuser/subscriptions/notifications

This commit is contained in:
2025-08-10 17:48:15 +02:00
parent d4b811dbad
commit fb0c7da252
49 changed files with 3676 additions and 1034 deletions

View File

@@ -0,0 +1,15 @@
{% extends "base.html" %}
{% block content %}
<div class="auth-container">
<h2>Anmelden</h2>
<form method="post" class="auth-form">
{% csrf_token %}
{{ form.as_p }}
<button type="submit" class="btn-primary">Anmelden</button>
</form>
<div class="auth-links">
<p>Noch kein Konto? <a href="{% url 'accounts:register' %}">Jetzt registrieren</a></p>
</div>
</div>
{% endblock %}

View File

@@ -0,0 +1,12 @@
{% extends "base.html" %}
{% block content %}
<div class="auth-container">
<h2>Passwort ändern</h2>
<form method="post" class="auth-form">
{% csrf_token %}
{{ form.as_p }}
<button type="submit" class="btn-primary">Passwort ändern</button>
</form>
</div>
{% endblock %}

View File

@@ -0,0 +1,9 @@
{% extends "base.html" %}
{% block content %}
<div class="auth-container">
<h2>Passwort geändert</h2>
<p>Ihr Passwort wurde erfolgreich geändert.</p>
<p><a href="{% url 'accounts:profile' %}">Zurück zum Profil</a></p>
</div>
{% endblock %}

View File

@@ -0,0 +1,97 @@
{% extends "base.html" %}
{% load static %}
{% block extra_style %}
<link rel="stylesheet" href="{% static 'css/profile.css' %}">
{% endblock %}
{% block content %}
<div class="profile-container">
<h2>Hallo, {{ user.username }}</h2>
{% if messages %}
<div class="messages">
{% for message in messages %}
<div class="message {{ message.tags }}">{{ message }}</div>
{% endfor %}
</div>
{% endif %}
<div class="profile-section">
<h3>E-Mail-Adresse</h3>
<form method="post" class="profile-form compact-form">
{% csrf_token %}
<div class="form-row">
<label for="id_email">E-Mail</label>
{{ form.email }}
</div>
<button type="submit" class="btn-primary">Speichern</button>
</form>
{% if user.jellyfin_server %}
<div class="jellyfin-info">
<h4>Jellyfin-Verbindung</h4>
<p>
Server: {{ user.jellyfin_server }}<br>
Status: {% if user.jellyfin_token %}Verbunden{% else %}Nicht verbunden{% endif %}<br>
{% if user.is_jellyfin_admin %}
<span class="badge badge-admin">Jellyfin Administrator</span>
{% endif %}
</p>
</div>
{% endif %}
</div>
<div class="profile-section">
<h3>Meine Abonnements</h3>
<h4>Serien</h4>
{% if series_subs %}
<div class="subscription-list">
{% for sub in series_subs %}
<div class="subscription-item">
{% if sub.series_poster %}
<img src="{{ sub.series_poster }}" alt="{{ sub.series_title }}" class="subscription-poster">
{% else %}
<img src="https://via.placeholder.com/80x120?text=Kein+Poster" alt="" class="subscription-poster">
{% endif %}
<div class="subscription-info">
<div class="subscription-title">{{ sub.series_title }}</div>
<div class="subscription-date">Abonniert am {{ sub.created_at|date:"d.m.Y" }}</div>
{% if sub.series_overview %}
<div class="subscription-overview">{{ sub.series_overview|truncatechars:100 }}</div>
{% endif %}
</div>
</div>
{% endfor %}
</div>
{% else %}
<p class="muted">Keine Serien abonniert.</p>
{% endif %}
<h4>Filme</h4>
{% if movie_subs %}
<div class="subscription-list">
{% for sub in movie_subs %}
<div class="subscription-item">
{% if sub.poster %}
<img src="{{ sub.poster }}" alt="{{ sub.title }}" class="subscription-poster">
{% else %}
<img src="https://via.placeholder.com/80x120?text=Kein+Poster" alt="" class="subscription-poster">
{% endif %}
<div class="subscription-info">
<div class="subscription-title">{{ sub.title }}</div>
<div class="subscription-date">Abonniert am {{ sub.created_at|date:"d.m.Y" }}</div>
{% if sub.overview %}
<div class="subscription-overview">{{ sub.overview|truncatechars:100 }}</div>
{% endif %}
</div>
</div>
{% endfor %}
</div>
{% else %}
<p class="muted">Keine Filme abonniert.</p>
{% endif %}
</div>
</div>
{% endblock %}

View File

@@ -0,0 +1,15 @@
{% extends "base.html" %}
{% block content %}
<div class="auth-container">
<h2>Registrieren</h2>
<form method="post" class="auth-form">
{% csrf_token %}
{{ form.as_p }}
<button type="submit" class="btn-primary">Registrieren</button>
</form>
<div class="auth-links">
<p>Bereits ein Konto? <a href="{% url 'accounts:login' %}">Jetzt anmelden</a></p>
</div>
</div>
{% endblock %}