1f21dad39SAndreas Gohr<?php 2f21dad39SAndreas Gohr 3f21dad39SAndreas Gohrnamespace dokuwiki\Action; 4f21dad39SAndreas Gohr 56723156fSAndreas Gohruse dokuwiki\Ui\UserRegister; 6f21dad39SAndreas Gohruse dokuwiki\Action\Exception\ActionAbort; 7480336a3SAndreas Gohruse dokuwiki\Action\Exception\ActionDisabledException; 82b5a1390SSatoshi Saharause dokuwiki\Ui; 9f21dad39SAndreas Gohr 10ab583a1bSAndreas Gohr/** 11ab583a1bSAndreas Gohr * Class Register 12ab583a1bSAndreas Gohr * 13ab583a1bSAndreas Gohr * Self registering a new user 14ab583a1bSAndreas Gohr * 15ab583a1bSAndreas Gohr * @package dokuwiki\Action 16ab583a1bSAndreas Gohr */ 172b5a1390SSatoshi Saharaclass Register extends AbstractAclAction 182b5a1390SSatoshi Sahara{ 19f21dad39SAndreas Gohr /** @inheritdoc */ 202b5a1390SSatoshi Sahara public function minimumPermission() 212b5a1390SSatoshi Sahara { 22f21dad39SAndreas Gohr return AUTH_NONE; 23f21dad39SAndreas Gohr } 24f21dad39SAndreas Gohr 25ab583a1bSAndreas Gohr /** @inheritdoc */ 262b5a1390SSatoshi Sahara public function checkPreconditions() 272b5a1390SSatoshi Sahara { 28b2c9cd19SAndreas Gohr parent::checkPreconditions(); 29480336a3SAndreas Gohr 30*ed28f990SAndreas Gohr // actionOK() bundles the disableactions, legacy openregister and addUser capability checks 31*ed28f990SAndreas Gohr if (!actionOK('register')) throw new ActionDisabledException(); 32480336a3SAndreas Gohr } 33480336a3SAndreas Gohr 34480336a3SAndreas Gohr /** @inheritdoc */ 352b5a1390SSatoshi Sahara public function preProcess() 362b5a1390SSatoshi Sahara { 37f21dad39SAndreas Gohr if (register()) { // FIXME could be moved from auth to here 38f21dad39SAndreas Gohr throw new ActionAbort('login'); 39f21dad39SAndreas Gohr } 40f21dad39SAndreas Gohr } 41f21dad39SAndreas Gohr 42ab583a1bSAndreas Gohr /** @inheritdoc */ 432b5a1390SSatoshi Sahara public function tplContent() 442b5a1390SSatoshi Sahara { 4573022918SAndreas Gohr (new UserRegister())->show(); 46f21dad39SAndreas Gohr } 47f21dad39SAndreas Gohr} 48