diff options
Diffstat (limited to 'platform/www/inc/Action/Profile.php')
-rw-r--r-- | platform/www/inc/Action/Profile.php | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/platform/www/inc/Action/Profile.php b/platform/www/inc/Action/Profile.php new file mode 100644 index 0000000..654a238 --- /dev/null +++ b/platform/www/inc/Action/Profile.php @@ -0,0 +1,45 @@ +<?php + +namespace dokuwiki\Action; + +use dokuwiki\Action\Exception\ActionAbort; +use dokuwiki\Action\Exception\ActionDisabledException; + +/** + * Class Profile + * + * Handle the profile form + * + * @package dokuwiki\Action + */ +class Profile extends AbstractUserAction { + + /** @inheritdoc */ + public function minimumPermission() { + return AUTH_NONE; + } + + /** @inheritdoc */ + public function checkPreconditions() { + parent::checkPreconditions(); + + /** @var \dokuwiki\Extension\AuthPlugin $auth */ + global $auth; + if(!$auth->canDo('Profile')) throw new ActionDisabledException(); + } + + /** @inheritdoc */ + public function preProcess() { + global $lang; + if(updateprofile()) { + msg($lang['profchanged'], 1); + throw new ActionAbort('show'); + } + } + + /** @inheritdoc */ + public function tplContent() { + html_updateprofile(); + } + +} |