feat(WP-0012): Querschnitt — Freigaben, Felder, Feedback, Suche, Tests
Implements all 8 tasks of the final cross-cutting workplan: - T01: Generisches Freigabe-Modal (freigabe_modal, freigabe_erteilen views + templates) - T02: Freigaben-Übersicht pro Ausschreibung (freigaben_uebersicht view + template) - T03: EntityFieldConfig Admin-Interface (/felder/<entity_type>/ with HTMX toggle) - T04: CustomAttribute-Panel (full CRUD with sort, lazy HTMX load) - T05: Feedback-Backlog mit Statusverwaltung + feedback_success.html template - T06: End-to-End-Tests in vergabe_teilnahme/tests/test_e2e.py (8 tests) - T07: Globale Suche erweitert (Dokumente, Nachweise, Referenzen, Marktbegleiter) - T08: Alle Migrationen sauber, 68/68 Tests grün, Ruff-Fehler in neuem Code behoben Bugfix: URL-Namespace-Fehler in Abgabe-Templates (ausschreibungen:nachbetrachtung:abgabe → ausschreibungen:abgabe) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
parent
c5ccbd665d
commit
5a231223c0
23 changed files with 828 additions and 37 deletions
31
vergabe_teilnahme/templates/partials/freigabe_modal.html
Normal file
31
vergabe_teilnahme/templates/partials/freigabe_modal.html
Normal file
|
|
@ -0,0 +1,31 @@
|
|||
<div x-data="{ open: true }" x-show="open" x-cloak
|
||||
class="fixed inset-0 bg-black/30 z-50 flex items-center justify-center">
|
||||
<div class="bg-white rounded-xl shadow-xl p-6 w-full max-w-md mx-4"
|
||||
@click.outside="open = false">
|
||||
<h2 class="page-title text-xl mb-4">Freigabe erteilen</h2>
|
||||
<form hx-post="/freigaben/erteilen/" hx-target="#modal-container" hx-swap="innerHTML">
|
||||
{% csrf_token %}
|
||||
<input type="hidden" name="content_type_id" value="{{ content_type_id }}">
|
||||
<input type="hidden" name="object_id" value="{{ object_id }}">
|
||||
<div class="space-y-3">
|
||||
<div>
|
||||
<label class="form-label">Freigabe-Typ</label>
|
||||
<select name="freigabe_typ" class="form-input">
|
||||
{% for value, label in freigabe_typ_choices %}
|
||||
<option value="{{ value }}" {% if value == freigabe_typ %}selected{% endif %}>{{ label }}</option>
|
||||
{% endfor %}
|
||||
</select>
|
||||
</div>
|
||||
<div>
|
||||
<label class="form-label">Kommentar (optional)</label>
|
||||
<textarea name="kommentar" rows="3" class="form-input"
|
||||
placeholder="Begründung oder Anmerkungen..."></textarea>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex justify-end gap-2 mt-4">
|
||||
<button type="button" @click="open = false" class="btn-secondary">Abbrechen</button>
|
||||
<button type="submit" class="btn-primary">Freigabe erteilen</button>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
Loading…
Add table
Add a link
Reference in a new issue