Source of file RemoveAccountForm.php
Size: 1,260 Bytes - Last Modified: 2020-05-30T11:30:26+00:00
/var/www/docs.ssmods.com/process/src/code/forms/RemoveAccountForm.php
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556 | <?php class RemoveAccountForm extends Form { /** * RemoveAccountForm constructor. * @param Controller $controller */ public function __construct(Controller $controller) { //Form fields $fields = new FieldList(array( new PasswordField('Password', _t('RemoveAccountForm.PASSWORD', 'Password')) )); //Form actions $actions = new FieldList(array( FormAction::create('handle', _t('RemoveAccountForm.CONFIRM', 'Confirm')) )); //Validator $validator = new RequiredFields(array( 'Password' )); //Construct parent::__construct($controller, 'RemoveAccountForm', $fields, $actions, $validator); } /** * Handle form post * @param $data * @param Form $form * @return bool|SS_HTTPResponse */ public function handle($data, Form $form) { //Current member $member = Member::currentUser(); //Check password $validationResult = $member->checkPassword($data['Password']); if(!$validationResult->valid()){ $this->sessionMessage($validationResult->message(), 'bad'); return $this->controller->redirectBack(); } //Delete member $member->logOut(); $member->delete(); //Return return $this->controller->redirect(Director::baseURL()); } } |