public function registerAction()
 {
     Request::ajax();
     $message = ErMessenger::getInstance();
     $request = new Request();
     $request->initRequest();
     $post = $request->getPost();
     if (isset($post)) {
         if (!empty($post['email']) && !empty($post['password']) && !empty($post['pass_confirm']) && !empty($post['captcha'])) {
             $userMapper = new UserMapper();
             $user = $userMapper->getUserByEmail($post["email"]);
             if (!$user) {
                 if (Captcha::verify()) {
                     $givenEmail = $this->clearStr($post['email']);
                     $givenPassword = $this->clearStr($post["password"]);
                     if (filter_var($givenEmail, FILTER_VALIDATE_EMAIL)) {
                         $user = new User();
                         $userMapper = new UserMapper();
                         $user->email = $givenEmail;
                         $user->crdate = date("Y-m-d");
                         $user->access = 'ps';
                         $user->userstatus = 1;
                         $user->userpassword = hash("md5", $givenPassword);
                         if ($userMapper->insertNewUser($user)) {
                             $message->setSucceedMessage('201', 'index/index');
                             ErSession::saveToSession('user', $user->email);
                             if ($user->username != null) {
                                 ErSession::saveToSession('username', $user->username);
                             }
                         } else {
                             $message->setErrMessage('101', 'user/signup');
                         }
                     } else {
                         $message->setErrMessage('103', 'user/signup');
                     }
                 } else {
                     $message->setErrMessage('104', 'user/signup');
                 }
             } else {
                 $message->setErrMessage('102', 'user/signup');
             }
         }
     }
 }