Exemplo n.º 1
0
 private function page_create()
 {
     global $config, $page;
     if (!$config->get_bool("login_signup_enabled")) {
         $this->theme->display_signups_disabled($page);
     } else {
         if (!isset($_POST['name'])) {
             $this->theme->display_signup_page($page);
         } else {
             if ($_POST['pass1'] != $_POST['pass2']) {
                 $this->theme->display_error(400, "Password Mismatch", "Passwords don't match");
             } else {
                 try {
                     if (!captcha_check()) {
                         throw new UserCreationException("Error in captcha");
                     }
                     $uce = new UserCreationEvent($_POST['name'], $_POST['pass1'], $_POST['email']);
                     send_event($uce);
                     $this->set_login_cookie($uce->username, $uce->password);
                     $page->set_mode("redirect");
                     $page->set_redirect(make_link("user"));
                 } catch (UserCreationException $ex) {
                     $this->theme->display_error(400, "User Creation Error", $ex->getMessage());
                 }
             }
         }
     }
 }