diff options
Diffstat (limited to 'modules/deleteuser.inc.php')
-rw-r--r-- | modules/deleteuser.inc.php | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/modules/deleteuser.inc.php b/modules/deleteuser.inc.php new file mode 100644 index 0000000..5341790 --- /dev/null +++ b/modules/deleteuser.inc.php @@ -0,0 +1,37 @@ +<?php + +class Page_DeleteUser extends Page +{ + + public function doPreprocess() + { + if (!User::load()) { + Message::addError('Sie sind nicht angemeldet'); + Util::redirect('?do=Main'); + } + if (!User::isInDatabase()) { + Message::addInfo('Sie haben sich nicht für den bwLehrpool-Dienst registriert, daher gibt es auch keine zu löschenden Daten'); + Util::redirect('?do=Main'); + } + // Dooo it + if (Request::post('confirm') === 'on') { + Image::deleteOwnedBy(User::getId()); + if (User::delete()) { + Message::addError('All Ihre Daten wurden vom Server gelöscht'); + } else { + Message::addError('Fehler beim Löschen Ihrer Daten'); + } + Util::redirect('?do=Main'); + } + if (Request::post('token') !== false) { + Message::addError('Bitte bestätigen Sie, dass Sie ihren Account löschen möchten'); + Util::redirect(); + } + } + + public function doRender() + { + Render::addTemplate('deleteuser/_page'); + } + +} |