/** * Registration form submit (registration page version) * @param AjaxCheckbox $accept * @param AjaxCheckbox $redirect * @param AjaxString|null $email * @param AjaxString|null $password1 * @param AjaxString|null $password2 * @param AjaxString|null $login * @param AjaxString|null $capcha * @throws Exception */ public function submitAjaxAction(AjaxCheckbox $accept, AjaxCheckbox $redirect, AjaxString $email = null, AjaxString $password1 = null, AjaxString $password2 = null, AjaxString $login = null, AjaxString $capcha = null) { $register = new Users\Register(); $register->setEmail($email); $register->setLogin($login); $register->setPassword1($password1); $register->setPassword2($password2); $register->setCaptcha($capcha); if (!$register->validate()) { $register->callAjaxerEvents(); return; } // EULA if (!$accept->val() and \Difra\Config::getInstance()->getValue('auth', 'eula')) { $this->root->appendChild($this->xml->createElement('eula')); Ajaxer::display(View::render($this->xml, 'auth-ajax', true)); return; } $register->register(); $this->afterSuccess(); }