fix: configure CI database connection properly
- Add dotenv loading to Django settings - Update CI workflow to use correct environment variables - Set POSTGRES_* variables instead of DATABASE_URL - Add environment variables to all Django management commands - Fixes CI test failures due to database connection issues
This commit is contained in:
126
app/templates/stiftung/wiederkehrende_unterstuetzungen.html
Normal file
126
app/templates/stiftung/wiederkehrende_unterstuetzungen.html
Normal file
@@ -0,0 +1,126 @@
|
||||
{% extends 'base.html' %}
|
||||
{% block title %}{{ title }}{% endblock %}
|
||||
{% block content %}
|
||||
<nav aria-label="breadcrumb">
|
||||
<ol class="breadcrumb">
|
||||
<li class="breadcrumb-item"><a href="{% url 'stiftung:dashboard' %}">Dashboard</a></li>
|
||||
<li class="breadcrumb-item"><a href="{% url 'stiftung:unterstuetzungen_all' %}">Unterstützungen</a></li>
|
||||
<li class="breadcrumb-item active" aria-current="page">{{ title }}</li>
|
||||
</ol>
|
||||
</nav>
|
||||
|
||||
<div class="d-flex justify-content-between align-items-center mb-4">
|
||||
<h2>{{ title }}</h2>
|
||||
<div class="btn-group">
|
||||
<a href="{% url 'stiftung:unterstuetzungen_all' %}" class="btn btn-outline-primary">
|
||||
<i class="fas fa-list me-2"></i>Alle Unterstützungen
|
||||
</a>
|
||||
<a href="?cleanup=1" class="btn btn-outline-warning"
|
||||
onclick="return confirm('Möchten Sie wirklich alle verwaisten Zahlungsvorlagen löschen? Dies können Vorlagen sein, deren zugehörige Unterstützungen bereits gelöscht wurden.')">
|
||||
<i class="fas fa-broom me-2"></i>Verwaiste bereinigen
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
<div class="col-12">
|
||||
<div class="card shadow">
|
||||
<div class="card-header bg-info text-white">
|
||||
<h5 class="mb-0">
|
||||
<i class="fas fa-sync-alt me-2"></i>Wiederkehrende Zahlungsvorlagen
|
||||
</h5>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
{% if templates %}
|
||||
<div class="table-responsive">
|
||||
<table class="table table-hover">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>Destinatär</th>
|
||||
<th>Betrag</th>
|
||||
<th>Intervall</th>
|
||||
<th>Nächste Generierung</th>
|
||||
<th>Status</th>
|
||||
<th>Zahlungen</th>
|
||||
<th>Aktionen</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{% for template in templates %}
|
||||
<tr>
|
||||
<td>
|
||||
<strong>{{ template.destinataer.get_full_name }}</strong>
|
||||
{% if template.beschreibung %}
|
||||
<br><small class="text-muted">{{ template.beschreibung }}</small>
|
||||
{% endif %}
|
||||
</td>
|
||||
<td class="text-success fw-bold">€{{ template.betrag|floatformat:2 }}</td>
|
||||
<td>
|
||||
<span class="badge bg-secondary">{{ template.get_intervall_display }}</span>
|
||||
</td>
|
||||
<td>{{ template.naechste_generierung|date:"d.m.Y" }}</td>
|
||||
<td>
|
||||
{% if template.aktiv %}
|
||||
<span class="badge bg-success">Aktiv</span>
|
||||
{% else %}
|
||||
<span class="badge bg-danger">Inaktiv</span>
|
||||
{% endif %}
|
||||
</td>
|
||||
<td>
|
||||
{% if template.aktive_zahlungen > 0 %}
|
||||
<span class="badge bg-info">{{ template.aktive_zahlungen }}</span>
|
||||
{% else %}
|
||||
<span class="badge bg-warning text-dark">0</span>
|
||||
{% endif %}
|
||||
</td>
|
||||
<td>
|
||||
<div class="btn-group btn-group-sm">
|
||||
<a href="{% url 'stiftung:destinataer_detail' pk=template.destinataer.pk %}"
|
||||
class="btn btn-outline-primary" title="Destinatär anzeigen">
|
||||
<i class="fas fa-user"></i>
|
||||
</a>
|
||||
{% if template.empfaenger_iban %}
|
||||
<button class="btn btn-outline-info" title="IBAN kopieren"
|
||||
onclick="navigator.clipboard.writeText('{{ template.empfaenger_iban }}'); alert('IBAN kopiert!');">
|
||||
<i class="fas fa-copy"></i>
|
||||
</button>
|
||||
{% endif %}
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
{% endfor %}
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
{% else %}
|
||||
<div class="text-center py-5">
|
||||
<i class="fas fa-sync-alt fa-3x text-muted mb-3"></i>
|
||||
<h5 class="text-muted">Keine wiederkehrenden Zahlungen vorhanden</h5>
|
||||
<p class="text-muted">
|
||||
Erstellen Sie eine neue Unterstützung mit der Option "Wiederkehrende Zahlung"
|
||||
um automatische Zahlungen zu generieren.
|
||||
</p>
|
||||
<a href="{% url 'stiftung:unterstuetzung_create' %}" class="btn btn-primary">
|
||||
<i class="fas fa-plus me-2"></i>Neue Unterstützung erstellen
|
||||
</a>
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
{% if templates %}
|
||||
<div class="mt-4">
|
||||
<div class="alert alert-info">
|
||||
<h6><i class="fas fa-info-circle me-2"></i>Hinweise zu wiederkehrenden Zahlungen:</h6>
|
||||
<ul class="mb-0">
|
||||
<li>Wiederkehrende Zahlungen werden automatisch basierend auf dem eingestellten Intervall generiert</li>
|
||||
<li>Die nächste Generierung erfolgt am angegebenen Datum</li>
|
||||
<li>Deaktivierte Vorlagen generieren keine neuen Zahlungen</li>
|
||||
<li>Jede generierte Zahlung kann individual bearbeitet werden</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
{% endif %}
|
||||
{% endblock %}
|
||||
Reference in New Issue
Block a user