public function createAction()
 {
     $this->_errorStack = Noobh_ErrorStackSingleton::getInstance();
     $request = $this->getRequest();
     $params = $request->getParams();
     $firstName = htmlspecialchars($params['firstName']);
     $lastName = htmlspecialchars($params['lastName']);
     $username = htmlspecialchars($params['userName']);
     $password = htmlspecialchars($params['password']);
     $email = htmlspecialchars($params['email']);
     $password = md5($password);
     $response = array();
     try {
         $user = new Models_User();
         $user->setFirstName($firstName);
         $user->setLastName($lastName);
         $user->setEmail($email);
         $user->setUsername($username);
         $user->setPassword($password);
         if (!empty($this->_errorStack)) {
             $user->save();
             $response['error_code'] = 0;
             $response['user'] = $user->getHash();
         } else {
             $response['errors'] = $this->_errorStack->getErrorList();
         }
     } catch (Exception $ex) {
         $response['error_code'] = $ex->getCode();
         $response['error_message'] = $ex->getMessage();
     }
     echo json_encode($response);
     exit;
 }
 public function activateAction()
 {
     $response = array();
     try {
         $request = $this->getRequest();
         $params = $request->getParams();
         if ($request->isPOST()) {
             if (!isset($params['email'])) {
                 $response['error_code'] = 803;
                 $response['error_message'] = $this->_errorList[803];
             } else {
                 $email = htmlspecialchars($params['email']);
                 $user = new Models_User($email);
                 if ($user->activate($user->getHash())) {
                     $response['status'] = 'OK';
                     $response['error_code'] = 0;
                 } else {
                     $response['error_code'] = 820;
                     $response['error_message'] = $this->_errorList[820];
                 }
             }
         } else {
             $response['error_code'] = 400;
             $response['error_message'] = 'Bad Request';
         }
     } catch (Exception $ex) {
         $response['error_code'] = 820;
         $response['error_message'] = $this->_errorList[820];
     }
     echo json_encode($response);
     exit;
 }