diff --git a/messages/uniworx/de.msg b/messages/uniworx/de.msg index c1b8fcca7..1bd1ddd42 100644 --- a/messages/uniworx/de.msg +++ b/messages/uniworx/de.msg @@ -5,6 +5,7 @@ BtnRegister: Anmelden BtnDeregister: Abmelden BtnHijack: Sitzung übernehmen +Aborted: Abgebrochen Registered: Angemeldet RegisterFrom: Anmeldungen von RegisterTo: Anmeldungen bis diff --git a/src/Handler/Profile.hs b/src/Handler/Profile.hs index 29918fe82..1eec221fe 100644 --- a/src/Handler/Profile.hs +++ b/src/Handler/Profile.hs @@ -142,14 +142,23 @@ postProfileR = do postProfileDataR :: Handler Html postProfileDataR = do - (uid, User{..}) <- requireAuthPair ((btnResult,_), _) <- runFormPost $ buttonForm case btnResult of - (FormSuccess BtnDelete) -> addMessage Warning "Delete-Knopf gedrückt" - (FormSuccess BtnAbort ) -> addMessage Warning "Knopf Abort erkannt" - _other -> addMessage Warning "KEIN Knopf erkannt" - addMessage Error "Löschen der Daten wurde noch nicht implementiert." - getProfileDataR + (FormSuccess BtnDelete) -> do + (uid, User{..}) <- requireAuthPair + addMessage Warning "Delete-Knopf gedrückt" + addMessage Error "Löschen der Daten wurde noch nicht implementiert." + -- first determine all submission that solely depend on this user: + -- SubmissionGroup / SubmissionGroupUser + -- Submission / SubmissionUser + + -- runDB $ deleteCascade uid + (FormSuccess BtnAbort ) -> do + addMessageI Info MsgAborted + getProfileDataR + _other -> do + getProfileDataR + getProfileDataR :: Handler Html getProfileDataR = do @@ -176,13 +185,30 @@ getProfileDataR = do -- TODO: move this into a Message and/or Widget-File let delWdgt = [whamlet|