ProjektUser-Modal: Mehrfachauswahl, Filterung und Fehlermeldungs-Verbesserung
- Modal von Einzelauswahl (Select) auf Mehrfachauswahl mit Checkboxen umgestellt - Nutzerliste sortiert nach username, scrollbar (eine Zeile pro Nutzer) - SysAdmin und AppAdmin aus der Auswahlliste ausgeblendet (immer Zugriff) - Bereits zugeordnete Nutzer ausgeblendet - Fehleranzeige bei fehlender Rolle: closeModal im catch entfernt, sodass showServerError nicht sofort überschrieben wird - AutorisationError: Meldung "Erforderliche Rollen" nur bei nicht-leerer allowed_roles-Liste (entfällt bei @authorisation_required([])) Generated by Mistral Vibe. Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
This commit is contained in:
1 parent
4cb0084066
commit
505177b5e2
2 files changed
+119
-36
No files matched your search
@@ -22,10 +22,17 @@ class AutorisationError(ApplicationError):
|
||||
else:
|
||||
userrolestxt = ", ".join([role.name for role in self.user_roles])
|
||||
|
||||
ApplicationError.__init__(self,
|
||||
"Sie haben nicht die passende Rolle für diese Funktion",
|
||||
"Ihre Rollen sind: " + userrolestxt,
|
||||
"Erforderliche Rollen sind: " + ", ".join(self.allowed_roles), htmlstatus=HtmlStatusCode.Unauthorized)
|
||||
# Die Meldung über erforderliche Rollen nur aufnehmen, wenn
|
||||
# welche spezifiziert sind. Bei leerer allowed_roles-Liste
|
||||
# (z.B. Endpunkte, die nur AppAdmin/SysAdmin erlauben) entfällt
|
||||
# dieser Teil der Fehlermeldung komplett.
|
||||
messages = [
|
||||
"Sie haben nicht die passende Rolle für diese Funktion",
|
||||
"Ihre Rollen sind: " + userrolestxt,
|
||||
]
|
||||
if self.allowed_roles:
|
||||
messages.append("Erforderliche Rollen sind: " + ", ".join(self.allowed_roles))
|
||||
ApplicationError.__init__(self, *messages, htmlstatus=HtmlStatusCode.Unauthorized)
|
||||
|
||||
class HtmlStatusCode():
|
||||
Bad_Request = 400
|
||||
|
||||
Reference in new issue
Block a user