Example #1
0
 function actionSave($currentUser)
 {
     $backUrl = $this->context->getFlowScopeAttr("backUrl");
     $pass = null;
     $user = new User();
     $userErrs = array();
     $user->setId($this->context->getRequestAttr("id"));
     $user->setUser($this->context->getRequestAttr("email"));
     if (!is_null($user->getUser())) {
         $user->setUser(trim($user->getUser()));
         if (strlen($user->getUser()) < 1) {
             $user->setUser(null);
         }
     }
     if (is_null($user->getUser())) {
         $userErrs["email"] = "field.error.empty";
     } else {
         if (is_null($user->getId())) {
             $field = $this->userDao->getQUserName();
             $criteria = new AndStatement();
             $criteria->addStatement($field . "='" . htmlspecialchars($user->getUser()) . "'");
             $exUsers = $this->userDao->find($criteria, null, 1000);
             if (is_array($exUsers) and count($exUsers) > 0) {
                 $userErrs["email"] = "field.error.userExists";
             }
         }
     }
     $active = $this->context->getRequestAttr("active");
     $user->setActive($active == 1 ? true : false);
     if (is_null($user->getId())) {
         $pass = $this->generatePass();
         $user->setPassword($pass);
     }
     $timeZone = new DateTimeZone("Europe/Vilnius");
     $time = new DateTime("now", $timeZone);
     $user->setR_date($time->format("Y-m-d H:i:s"));
     $user->setR_user($currentUser->getId());
     $this->context->setFlashScopeAttr("user", $user);
     $this->context->setFlashScopeAttr("userErrs", $userErrs);
     if (count($userErrs) >= 1) {
         if (!is_null($backUrl)) {
             header("Location: " . $backUrl);
             return true;
         }
         return false;
     }
     $store = $this->storeUser($user);
     if (!$store) {
         if (!is_null($backUrl)) {
             header("Location: " . $backUrl);
             return true;
         }
         return false;
     }
     if (!is_null($pass)) {
         $this->sendNotification($user);
     }
     $this->cancelEdit();
     if (!is_null($backUrl)) {
         header("Location: " . $backUrl);
         return true;
     }
     return false;
 }
Example #2
0
 function find($criteria = null, $order = null, $limit = 1000, $from = 0)
 {
     $result = $this->database->query($this->buildFindQuery($criteria, $order, $limit, $from));
     if (!is_null($result->getError())) {
         return $result->getError();
     }
     $users = array();
     while ($row = $result->fetchRow()) {
         $user = new User();
         $value = $row[0];
         $user->setId($value);
         $value = $row[1];
         $user->setUser($value);
         $value = $row[2];
         $user->setPassword($value);
         $value = $row[3];
         $value = $this->database->toBoolean($value);
         $user->setActive($value);
         $value = $row[4];
         $value = $this->database->toBoolean($value);
         $user->setAdmin($value);
         $value = $row[5];
         $user->setR_date($value);
         $value = $row[6];
         $user->setR_user($value);
         if ($order != null) {
             array_push($users, $user);
         } else {
             $users[$user->getId()] = $user;
         }
     }
     return $users;
 }