Files
stiftung-management-system/app/stiftung/urls.py
Jan Remmer Siebels 544284dd8b Remove obsolete dashboard functionality
- Remove dashboard view from urls.py and views.py
- Delete dashboard.html template
- Remove dashboard navigation link from base.html
- Replace all dashboard redirects with home redirects in views.py
- Update all breadcrumb links from 'Dashboard' to 'Home' in templates
- Update German text from 'Dashboard' to 'Startseite' in auth templates
- Update 'Zurück zum Dashboard' links to 'Zurück zur Startseite'

The dashboard was redundant with the home page functionality.
All navigation now directs users to the main home page instead.
System check passes without issues after removal.
2025-10-05 20:49:48 +02:00

403 lines
15 KiB
Python

from django.urls import path
from . import views
app_name = "stiftung"
urlpatterns = [
# Home - Main landing page after login
path("", views.home, name="home"),
# CSV Import URLs
path("import/", views.csv_import_list, name="csv_import_list"),
path("import/neu/", views.csv_import_create, name="csv_import_create"),
# Destinatär URLs (Förderungsempfänger)
path("destinataere/", views.destinataer_list, name="destinataer_list"),
path(
"destinataere/<uuid:pk>/", views.destinataer_detail, name="destinataer_detail"
),
path("destinataere/neu/", views.destinataer_create, name="destinataer_create"),
path(
"destinataere/<uuid:pk>/bearbeiten/",
views.destinataer_update,
name="destinataer_update",
),
path(
"destinataere/<uuid:pk>/loeschen/",
views.destinataer_delete,
name="destinataer_delete",
),
path(
"destinataere/<uuid:pk>/notiz/",
views.destinataer_notiz_create,
name="destinataer_notiz_create",
),
path(
"destinataere/<uuid:pk>/export/",
views.destinataer_export,
name="destinataer_export",
),
# Paechter URLs (Landpächter)
path("paechter/", views.paechter_list, name="paechter_list"),
path("paechter/<uuid:pk>/", views.paechter_detail, name="paechter_detail"),
path("paechter/neu/", views.paechter_create, name="paechter_create"),
path(
"paechter/<uuid:pk>/bearbeiten/", views.paechter_update, name="paechter_update"
),
path("paechter/<uuid:pk>/loeschen/", views.paechter_delete, name="paechter_delete"),
path("paechter/<uuid:pk>/export/", views.paechter_export, name="paechter_export"),
# Legacy Person URLs removed (Destinatäre ersetzen Personen)
# Land URLs
path("laendereien/", views.land_list, name="land_list"),
path("laendereien/<uuid:pk>/", views.land_detail, name="land_detail"),
path("laendereien/neu/", views.land_create, name="land_create"),
path("laendereien/<uuid:pk>/bearbeiten/", views.land_update, name="land_update"),
path("laendereien/<uuid:pk>/loeschen/", views.land_delete, name="land_delete"),
path("laendereien/<uuid:pk>/export/", views.land_export, name="land_export"),
# Landabrechnung URLs
path("landabrechnungen/", views.land_abrechnung_list, name="land_abrechnung_list"),
path(
"landabrechnungen/<uuid:pk>/",
views.land_abrechnung_detail,
name="land_abrechnung_detail",
),
path(
"landabrechnungen/neu/",
views.land_abrechnung_create,
name="land_abrechnung_create",
),
path(
"landabrechnungen/<uuid:pk>/bearbeiten/",
views.land_abrechnung_update,
name="land_abrechnung_update",
),
path(
"landabrechnungen/<uuid:pk>/loeschen/",
views.land_abrechnung_delete,
name="land_abrechnung_delete",
),
# Vereinheitlichte Verpachtung URLs (direkt im Land)
path(
"laendereien/<uuid:land_pk>/verpachtung/neu/",
views.land_verpachtung_create,
name="land_verpachtung_create",
),
path(
"laendereien/<uuid:land_pk>/verpachtung/bearbeiten/",
views.land_verpachtung_edit,
name="land_verpachtung_edit",
),
path(
"laendereien/<uuid:land_pk>/verpachtung/beenden/",
views.land_verpachtung_end,
name="land_verpachtung_end",
),
# LandVerpachtung URLs (neue Verpachtungen)
path(
"laendereien/verpachtungen/<uuid:pk>/",
views.land_verpachtung_detail,
name="land_verpachtung_detail",
),
path(
"laendereien/verpachtungen/<uuid:pk>/bearbeiten/",
views.land_verpachtung_update,
name="land_verpachtung_update",
),
path(
"laendereien/verpachtungen/<uuid:pk>/beenden/",
views.land_verpachtung_end_direct,
name="land_verpachtung_end_direct",
),
# Verpachtung URLs (Management Overview)
path("verpachtungen/", views.verpachtung_list, name="verpachtung_list"),
path("verpachtungen/<uuid:pk>/", views.verpachtung_detail, name="verpachtung_detail"),
path("verpachtungen/neu/", views.verpachtung_create, name="verpachtung_create"),
path(
"verpachtungen/<uuid:pk>/bearbeiten/",
views.verpachtung_update,
name="verpachtung_update",
),
path(
"verpachtungen/<uuid:pk>/loeschen/",
views.verpachtung_delete,
name="verpachtung_delete",
),
# Förderung URLs
path("foerderungen/", views.foerderung_list, name="foerderung_list"),
path("foerderungen/<uuid:pk>/", views.foerderung_detail, name="foerderung_detail"),
path("foerderungen/neu/", views.foerderung_create, name="foerderung_create"),
path(
"foerderungen/<uuid:pk>/bearbeiten/",
views.foerderung_update,
name="foerderung_update",
),
path(
"foerderungen/<uuid:pk>/loeschen/",
views.foerderung_delete,
name="foerderung_delete",
),
# Dokumente URLs
path("dokumente/", views.dokument_list, name="dokument_list"),
path("dokumente/<uuid:pk>/", views.dokument_detail, name="dokument_detail"),
path("dokumente/neu/", views.dokument_create, name="dokument_create"),
path(
"dokumente/<uuid:pk>/bearbeiten/", views.dokument_update, name="dokument_update"
),
path(
"dokumente/<uuid:pk>/loeschen/", views.dokument_delete, name="dokument_delete"
),
# Dokumentenverwaltung (Paperless-Integration, Verwaltung & Verknüpfung)
path(
"dokumente/verwaltung/", views.dokument_management, name="dokument_management"
),
# Legacy document URLs removed - use dokument_management instead
# Dokument-Verknüpfung
path(
"api/link-document/search/",
views.link_document_search,
name="link_document_search",
),
path(
"api/link-document/create/",
views.link_document_create,
name="link_document_create",
),
path(
"api/link-document/list/", views.link_document_list, name="link_document_list"
),
path(
"api/link-document/update/",
views.link_document_update,
name="link_document_update",
),
path(
"api/link-document/delete/<uuid:link_id>/",
views.link_document_delete,
name="link_document_delete",
),
# Legacy dokument_verknuepfung URL removed - use dokument_management instead
# Jahresbericht URLs
path("berichte/", views.bericht_list, name="bericht_list"),
path(
"berichte/jahresbericht/",
views.jahresbericht_generate_redirect,
name="jahresbericht_generate_redirect",
),
path(
"berichte/jahresbericht/<int:jahr>/",
views.jahresbericht_generate,
name="jahresbericht_generate",
),
path(
"berichte/jahresbericht/<int:jahr>/pdf/",
views.jahresbericht_pdf,
name="jahresbericht_pdf",
),
# Geschäftsführung URLs
path("geschaeftsfuehrung/", views.geschaeftsfuehrung, name="geschaeftsfuehrung"),
path("geschaeftsfuehrung/konten/", views.konto_list, name="konto_list"),
path("geschaeftsfuehrung/konten/neu/", views.konto_create, name="konto_create"),
path(
"geschaeftsfuehrung/konten/<uuid:pk>/", views.konto_detail, name="konto_detail"
),
path(
"geschaeftsfuehrung/konten/<uuid:pk>/bearbeiten/",
views.konto_edit,
name="konto_edit",
),
path(
"geschaeftsfuehrung/verwaltungskosten/",
views.verwaltungskosten_list,
name="verwaltungskosten_list",
),
path(
"geschaeftsfuehrung/verwaltungskosten/neu/",
views.verwaltungskosten_create,
name="verwaltungskosten_create",
),
path(
"geschaeftsfuehrung/verwaltungskosten/<uuid:pk>/bearbeiten/",
views.verwaltungskosten_edit,
name="verwaltungskosten_edit",
),
path(
"verwaltungskosten/mark-paid/",
views.mark_expense_paid,
name="mark_expense_paid",
),
path(
"geschaeftsfuehrung/rentmeister/",
views.rentmeister_list,
name="rentmeister_list",
),
path(
"geschaeftsfuehrung/rentmeister/neu/",
views.rentmeister_create,
name="rentmeister_create",
),
path(
"geschaeftsfuehrung/rentmeister/<uuid:pk>/",
views.rentmeister_detail,
name="rentmeister_detail",
),
path(
"geschaeftsfuehrung/rentmeister/<uuid:pk>/bearbeiten/",
views.rentmeister_edit,
name="rentmeister_edit",
),
path(
"geschaeftsfuehrung/rentmeister/<uuid:pk>/ausgaben/",
views.rentmeister_ausgaben,
name="rentmeister_ausgaben",
),
# Administration URLs
path("administration/", views.administration, name="administration"),
path("administration/settings/", views.app_settings, name="app_settings"),
path("administration/audit-log/", views.audit_log_list, name="audit_log_list"),
path("administration/backup/", views.backup_management, name="backup_management"),
path(
"administration/backup/<uuid:backup_id>/download/",
views.backup_download,
name="backup_download",
),
path("administration/backup/restore/", views.backup_restore, name="backup_restore"),
path(
"administration/backup/<uuid:backup_id>/cancel/",
views.backup_cancel,
name="backup_cancel",
),
path(
"administration/unterstuetzungen/",
views.unterstuetzungen_list,
name="unterstuetzungen_list",
),
path(
"administration/unterstuetzungen/<uuid:pk>/bearbeiten/",
views.unterstuetzung_edit,
name="unterstuetzung_edit",
),
path(
"administration/unterstuetzungen/<uuid:pk>/loeschen/",
views.unterstuetzung_delete,
name="unterstuetzung_delete",
),
# Unterstützungen URLs (direct access from Destinataer)
path("unterstuetzungen/", views.unterstuetzungen_all, name="unterstuetzungen_all"),
path(
"unterstuetzungen/neu/",
views.unterstuetzung_create,
name="unterstuetzung_create",
),
path(
"unterstuetzungen/<uuid:pk>/",
views.unterstuetzung_detail,
name="unterstuetzung_detail",
),
path(
"unterstuetzungen/<uuid:pk>/bezahlt/",
views.unterstuetzung_mark_paid,
name="unterstuetzung_mark_paid",
),
path(
"unterstuetzungen/wiederkehrend/",
views.wiederkehrende_unterstuetzungen,
name="wiederkehrende_unterstuetzungen",
),
# AJAX endpoints
path(
"api/destinataer/<uuid:destinataer_id>/info/",
views.get_destinataer_info,
name="get_destinataer_info",
),
# Authentication URLs
path("login/", views.user_login, name="login"),
path("logout/", views.user_logout, name="logout"),
# User Management URLs
path("administration/users/", views.user_management, name="user_management"),
path("administration/users/create/", views.user_create, name="user_create"),
path("administration/users/<int:pk>/", views.user_detail, name="user_detail"),
path("administration/users/<int:pk>/edit/", views.user_edit, name="user_edit"),
path(
"administration/users/<int:pk>/password/",
views.user_change_password,
name="user_change_password",
),
path(
"administration/users/<int:pk>/permissions/",
views.user_permissions,
name="user_permissions",
),
path(
"administration/users/<int:pk>/delete/", views.user_delete, name="user_delete"
),
# Two-Factor Authentication URLs
path("auth/2fa/setup/", views.two_factor_setup, name="two_factor_setup"),
path("auth/2fa/qr/", views.two_factor_qr, name="two_factor_qr"),
path("auth/2fa/verify/", views.two_factor_verify, name="two_factor_verify"),
path("auth/2fa/disable/", views.two_factor_disable, name="two_factor_disable"),
path("auth/2fa/backup-tokens/", views.backup_tokens, name="backup_tokens"),
# Hilfsbox URLs
path("help-box/edit/", views.edit_help_box, name="edit_help_box"),
path("help-box/admin/", views.edit_help_box, name="help_boxes_admin"),
# API URLs
path("api/land-stats/", views.land_stats_api, name="land_stats_api"),
path("api/health/", views.health_check, name="health_check"),
path("api/paperless/ping/", views.paperless_ping, name="paperless_ping"),
path(
"api/paperless/documents/",
views.paperless_documents,
name="paperless_documents",
),
path("api/paperless/tags/", views.paperless_tags_only, name="paperless_tags_only"),
path("api/paperless/debug/", views.paperless_debug, name="paperless_debug"),
path(
"api/paperless/documents/<int:doc_id>/",
views.paperless_document_redirect,
name="paperless_document_redirect",
),
# Gramps integration (probe)
path("api/gramps/search/", views.gramps_search_api, name="gramps_search_api"),
path("api/gramps/debug/", views.gramps_debug_api, name="gramps_debug_api"),
# Quarterly Confirmations
path(
"quarterly-confirmations/create/<uuid:destinataer_id>/",
views.quarterly_confirmation_create,
name="quarterly_confirmation_create",
),
path(
"quarterly-confirmations/<uuid:pk>/edit/",
views.quarterly_confirmation_edit,
name="quarterly_confirmation_edit",
),
path(
"quarterly-confirmations/<uuid:pk>/update/",
views.quarterly_confirmation_update,
name="quarterly_confirmation_update",
),
path(
"quarterly-confirmations/<uuid:pk>/approve/",
views.quarterly_confirmation_approve,
name="quarterly_confirmation_approve",
),
path(
"quarterly-confirmations/<uuid:pk>/reset/",
views.quarterly_confirmation_reset,
name="quarterly_confirmation_reset",
),
# Geschichte URLs
path("geschichte/", views.geschichte_list, name="geschichte_list"),
path("geschichte/neu/", views.geschichte_create, name="geschichte_create"),
path("geschichte/<slug:slug>/", views.geschichte_detail, name="geschichte_detail"),
path("geschichte/<slug:slug>/bearbeiten/", views.geschichte_edit, name="geschichte_edit"),
path("geschichte/<slug:slug>/bild-upload/", views.geschichte_bild_upload, name="geschichte_bild_upload"),
path("geschichte/<slug:slug>/bild/<uuid:bild_id>/loeschen/", views.geschichte_bild_delete, name="geschichte_bild_delete"),
# Kalender URLs
path("kalender/", views.kalender_view, name="kalender"),
path("kalender/admin/", views.kalender_admin, name="kalender_admin"),
path("kalender/neu/", views.kalender_create, name="kalender_create"),
path("kalender/<uuid:pk>/", views.kalender_detail, name="kalender_detail"),
path("kalender/<uuid:pk>/bearbeiten/", views.kalender_edit, name="kalender_edit"),
path("kalender/<uuid:pk>/loeschen/", views.kalender_delete, name="kalender_delete"),
path("kalender/api/events/", views.kalender_api_events, name="kalender_api_events"),
]