$dotValidateUser = new Dot_Validate_User(array('who' => 'user', 'action' => 'update', 'values' => $values, 'userId' => $registry->session->user->id));
         if ($dotValidateUser->isValid()) {
             // no error - then update user
             $data = $dotValidateUser->getData();
             $data['id'] = $registry->session->user->id;
             $userModel->updateUser($data);
             $session->message['txt'] = $option->infoMessage->update;
             $session->message['type'] = 'info';
         } else {
             $data = $dotValidateUser->getData();
             $session->message['txt'] = $dotValidateUser->getError();
             $session->message['type'] = 'error';
         }
     }
     $data = $userModel->getUserInfo($registry->session->user->id);
     $userView->details('update', $data);
     break;
 case 'register':
     // display signup form and allow user to register
     $data = array();
     $error = array();
     if ($_SERVER['REQUEST_METHOD'] === "POST") {
         // POST values that will be validated
         $values = array('details' => array('firstName' => isset($_POST['firstName']) ? $_POST['firstName'] : '', 'lastName' => isset($_POST['lastName']) ? $_POST['lastName'] : ''), 'username' => array('username' => isset($_POST['username']) ? $_POST['username'] : ''), 'email' => array('email' => isset($_POST['email']) ? $_POST['email'] : ''), 'password' => array('password' => isset($_POST['password']) ? $_POST['password'] : '', 'password2' => isset($_POST['password2']) ? $_POST['password2'] : ''), 'captcha' => array('recaptcha_challenge_field' => isset($_POST['recaptcha_challenge_field']) ? $_POST['recaptcha_challenge_field'] : '', 'recaptcha_response_field' => isset($_POST['recaptcha_response_field']) ? $_POST['recaptcha_response_field'] : ''));
         $dotValidateUser = new Dot_Validate_User(array('who' => 'user', 'action' => 'add', 'values' => $values));
         if ($dotValidateUser->isValid()) {
             // no error - then add user
             $data = $dotValidateUser->getData();
             $userModel->addUser($data);
             $session->message['txt'] = $option->infoMessage->add;
             $session->message['type'] = 'info';
         $values = array('details' => array('firstName' => $_POST['firstName'], 'lastName' => $_POST['lastName']), 'username' => array('username' => $_POST['username']), 'email' => array('email' => $_POST['email']), 'enum' => array('0' => '0,1', 'isActive' => $_POST['isActive']), 'password' => array('password' => $_POST['password'], 'password2' => $_POST['password2']));
         $dotValidateUser = new Dot_Validate_User(array('who' => 'user', 'action' => 'add', 'values' => $values));
         if ($dotValidateUser->isValid()) {
             // no error - then add user
             $userModel->addUser($dotValidateUser->getData());
             $registry->session->message['txt'] = $option->infoMessage->accountAdd;
             $registry->session->message['type'] = 'info';
             header('Location: ' . $registry->configuration->website->params->url . '/' . $registry->requestModule . '/' . $registry->requestController . '/list/');
             exit;
         } else {
             $registry->session->message['txt'] = $dotValidateUser->getError();
             $registry->session->message['type'] = 'error';
         }
         $data = $dotValidateUser->getData();
     }
     $userView->details('add', $data);
     break;
 case 'update':
     // display form and update user
     $error = array();
     if ($_SERVER['REQUEST_METHOD'] === "POST") {
         // changes were made to checkUserToken
         // see: Dot_Auth::checkUserToken($userToken, $userType='admin')
         // see: IndexController.php : $userToken
         if (!Dot_Auth::checkUserToken($userToken)) {
             // remove the identity
             $dotAuth = Dot_Auth::getInstance();
             $dotAuth->clearIdentity('admin');
             // warn the user
             $session->message['txt'] = $option->warningMessage->tokenExpired;
             $session->message['type'] = 'warning';