Example #1
0
 public function createAction()
 {
     if (!$this->request->isPost()) {
         return $this->dispatcher->forward(array("controller" => "user", "action" => "index"));
     }
     $user = new User();
     $user->id = $this->request->getPost("id");
     $user->username = $this->request->getPost("username");
     $user->fullname = $this->request->getPost("fullname");
     $user->email = $this->request->getPost("email", "email");
     $user->password = $this->request->getPost("password");
     $user->role = $this->request->getPost("role");
     $user->active = $this->request->getPost("active");
     $user->last_login_time = $this->request->getPost("last_login_time");
     $user->create_time = $this->request->getPost("create_time");
     $user->update_time = $this->request->getPost("update_time");
     if (!$user->save()) {
         foreach ($user->getMessages() as $message) {
             $this->flash->error((string) $message);
         }
         return $this->dispatcher->forward(array("controller" => "user", "action" => "new"));
     } else {
         $this->flash->success("user was created successfully");
         return $this->dispatcher->forward(array("controller" => "user", "action" => "index"));
     }
 }
Example #2
0
 /**
  * register
  *
  * @return \Phalcon\Http\ResponseInterface|string|void
  */
 public function registerAction()
 {
     if ($this->request->isPost() && $this->security->checkToken()) {
         $user = new User();
         $username = $this->request->getPost('username');
         $email = $this->request->getPost('email');
         $password = $this->request->getPost('password');
         $user->username = $username;
         $user->password_hash = $this->security->hash($password);
         $user->auth_key = Str::random(32);
         $user->password_reset_token = Str::random(32);
         $user->email = $email;
         $user->role = 1;
         $user->state = 1;
         if (!$user->save()) {
             foreach ($user->getMessages() as $message) {
                 $this->flashSession->error($message->getMessage());
             }
             return $this->response->redirect('user/register');
         }
         $this->session->set('user_id', $user->id);
         $this->session->set('username', $user->username);
         return $this->response->redirect('workflow/lists');
     }
     return $this->view->partial('user/register');
 }
Example #3
0
 public function createAction()
 {
     $password = password_hash($_POST['password'], PASSWORD_DEFAULT);
     if (!password_verify($_POST['repeatPassword'], $password)) {
         $this->flash->error('Passwords do not match');
         return $this->dispatcher->forward(array("controller" => "User", "action" => "new"));
     }
     $user = new User();
     $user->username = $_POST['username'];
     $user->password = $password;
     $user->first_name = $_POST['first_name'];
     $user->last_name = $_POST['last_name'];
     $user->email = $_POST['email'];
     $user->created_at = new Phalcon\Db\RawValue('now()');
     $uploaddir = 'C:\\xampp\\htdocs\\one\\public\\img\\.';
     $uploadfile = $uploaddir . basename($_FILES['photo']['name']);
     if (move_uploaded_file($_FILES['photo']['tmp_name'], $uploadfile)) {
         $user->avatar = $uploadfile;
     }
     if (!$user->save()) {
         foreach ($user->getMessages() as $message) {
             $this->flash->error($message);
             return $this->dispatcher->forward(array("controller" => "User", "action" => "new"));
         }
     } else {
         $this->flash->success('Thanks for registering, please proceed to log in');
         return $this->response->redirect('Session/index');
     }
 }
Example #4
0
function create_new_user()
{
    $u = new User();
    $u->setUsername($_POST['username']);
    $u->setPassword($_POST['password']);
    $u->setAdmin(isset($_POST['role']));
    $u->save();
    return $u->getMessages();
}
 public function createAction()
 {
     $user = new User();
     $user->email = "*****@*****.**";
     $user->password = "******";
     $result = $user->create();
     if (!$result) {
         print_r($user->getMessages());
     }
 }
 public function register()
 {
     $this->db->begin();
     $modelUser = new User();
     $res = $modelUser->createUser($this->request->getPost());
     if (false == $res) {
         $this->db->rollback();
         return parent::resWithErrMsg($modelUser->getMessages());
     }
     $this->db->commit();
     return parent::success();
 }
Example #7
0
 public function regAction()
 {
     $user = new User();
     //Store and check for errors
     $success = $user->save($this->request->getPost(), array('username', 'password'));
     if ($success) {
         echo $user->id;
         //输出用户id
     } else {
         foreach ($user->getMessages() as $message) {
             echo $message->getMessage(), "<br/>";
         }
     }
 }
 public function registerAction()
 {
     $user = new User();
     // Store and check for errors
     $success = $user->save($this->request->getPost(), array('name', 'email'));
     if ($success) {
         echo "Thanks for registering!";
     } else {
         echo "Sorry, the following problems were generated: ";
         foreach ($user->getMessages() as $message) {
             echo $message->getMessage(), "<br/>";
         }
     }
     $this->view->disable();
 }
 /**
  * @api {post} /token 登录获得token
  * @apiHeader {String} Accept=api-version=1.0 api版本
  * @apiHeaderExample {String} Header-Example:
  *     {
  *       "Accept": "api-version=1.0"
  *     }
  * @apiName login
  * @apiGroup Token
  * @apiVersion 1.0.0
  *
  * @apiParam {String} username 用户名
  * @apiParam {String} password 密码
  *
  * @apiSuccess {String} token 该用户的token,两小时后失效
  *
  * @apiSuccessExample Success-Response:
  *     HTTP/1.1 200 OK
  *     {
  *       "token": "xxx"
  *     }
  *
  * @apiUse errorExample
  */
 public function login()
 {
     $username = $this->request->getPost('username');
     $password = $this->request->getPost('password');
     $userModel = new User();
     $result = $userModel->login($username, $password);
     if (false === $result) {
         return parent::response($userModel->getMessages(), 406);
     }
     $roleUser = RoleUser::findFirst("user_id=" . $result->id);
     $token = parent::obtainToken($result->id, $roleUser->role_id);
     if (false === $token) {
         return parent::response(array('errors' => array(array('code' => 500, 'field' => null, 'message' => 'unkown error'))), 500);
     }
     return parent::success(array('token' => $token));
 }
Example #10
0
 /**
  * Creates a new user
  */
 public function createAction()
 {
     if (!$this->request->isPost()) {
         return $this->dispatcher->forward(array("controller" => "user", "action" => "index"));
     }
     $user = new User();
     $user->name = $this->request->getPost("name");
     $user->email = $this->request->getPost("email", "email");
     if (!$user->save()) {
         foreach ($user->getMessages() as $message) {
             $this->flash->error($message);
         }
         return $this->dispatcher->forward(array("controller" => "user", "action" => "new"));
     }
     $this->flash->success("user was created successfully");
     return $this->dispatcher->forward(array("controller" => "user", "action" => "index"));
 }
Example #11
0
 /**
  * execute the signup ation, face to an existent user.
  */
 public function signupAction()
 {
     $form = new SignUpForm();
     if ($this->request->isPost()) {
         if ($form->isValid($this->request->getPost()) != false) {
             $user = new User();
             $user->assign(array('username' => $this->request->getPost('name', 'striptags'), 'password' => $this->security->hash($this->request->getPost('password')), 'email' => $this->request->getPost('email'), 'active' => 0, 'token' => "false"));
             if ($user->save()) {
                 return $this->dispatcher->forward(array('controller' => 'index', 'action' => 'index'));
             } else {
                 echo "<h5>Upps! Data couldn't be saved :(... Try again...</h5>";
             }
             $this->flash->error($user->getMessages());
         }
     }
     $this->view->form = $form;
 }
 /**
  * @api {put} /user 更新当前登录用户信息
  * @apiUse header
  *
  * @apiName updateUser
  * @apiGroup User
  * @apiVersion 1.0.0
  *
  * @apiParam {String} username 该子会议的ID
  * @apiParam {String} name 该子会议名称 必选
  * @apiParam {String} organization 子会议的开始时间
  * @apiParam {Integer} title 子会议的结束时间
  * @apiParam {String} email 子会议举行场地
  * @apiParam {String} password 该子会议可接纳的人数
  *
  * @apiSuccess {Array} empty_array 空数组
  */
 public function updateUser()
 {
     $token = $this->session->get('token');
     // username name organization title email password
     $data = $this->request->get();
     $dbUser = User::findFirst('id=' . $token->user_id);
     if (!empty($data['password'])) {
         $data['password'] = password_hash($data['password'], PASSWORD_DEFAULT);
     }
     $dbUser = $dbUser->toArray();
     $userModel = new User();
     if (false == $userModel->save(array_merge($dbUser, $data))) {
         // 使用修改的数据覆盖原始的数据来达到部分更新效果
         return parent::resWithErrMsg($userModel->getMessages());
     }
     return parent::success();
 }
Example #13
0
 public function registrationAction()
 {
     $this->view->disable();
     if ($this->request->isPost()) {
         $email = $this->request->getPost('email', 'striptags');
         $user = User::findFirst(array('conditions' => 'mail = ?1', 'bind' => array(1 => $email)));
         if ($user) {
             message($this, "d", "Такой пользователь уже есть");
             return $this->response->redirect();
         } else {
             $user = new User();
             $user->mail = $email;
             $user->password = $this->security->hash($this->request->getPost('password'));
             $user->surname = $this->request->getPost('surname', 'striptags');
             $user->name = $this->request->getPost('name', 'striptags');
             $user->patronymic = $this->request->getPost('patronymic', 'striptags');
             $user->phone = $this->request->getPost('phone', 'striptags');
             $user->role = 'user';
             $user->confirmed = false;
             if ($user->save()) {
                 $conf = new Confirmation();
                 $conf->user = $user->id;
                 $conf->code = $this->security->getSaltBytes();
                 if ($conf->save()) {
                     $this->getDI()->getMail()->send(array($user->mail => $user->name), "Пожалуйста, подтвердите почту", 'confirmation', array('confirmUrl' => '/confirm/' . $user->mail . '/' . $conf->code, 'publicUrl' => 'carrepair.eu1.frbit.net'));
                     message($this, "i", "На почту " . $user->mail . " направлено письмо для подтверждения аккаунта");
                     return $this->response->redirect();
                 } else {
                     foreach ($conf->getMessages() as $message) {
                         message($this, "d", "Ошибка: " . $message->getMessage() . " в поле " . $message->getField() . ". Тип: " . $message->getType());
                     }
                     return $this->response->redirect();
                 }
             } else {
                 foreach ($user->getMessages() as $message) {
                     message($this, "d", "Ошибка: " . $message->getMessage() . " в поле " . $message->getField() . ". Тип: " . $message->getType());
                 }
                 return $this->response->redirect();
             }
         }
     }
 }
    public function doRegisterAction(){
        if($this->security->checkToken()==false) {
            $this->flash->error('Invalid CSRF Token');
            $this->response->redirect('signin/register');
            return;
        }

        $this->view->disable();

        $email=$this->request->getPost('email');
        $password=$this->request->getPost('password');
        $confirm_password=$this->request->getPost('confirm_password');

        if($password != $confirm_password){
            $this->flash->error("The Password Does not Match !");
            $this->response->redirect('signin/register');
            return;
        }

        $user= new User();
        $user->role='user';
        $user->email=$email;
        $user->password=$password;
        $result=$user->save();

        if(!$result){
            $output=[];
            foreach($user->getMessages() as $message){
                $output[]=$message;
            }
            $output=implode(',',$output);
            $this->flash->error($output);
            $this->response->redirect('signin/register');
            return;
        }
        $this->component->user->createSession($user);
        $this->response->redirect('dashboard/index');
        return;
    }
Example #15
0
 public function signupAction()
 {
     // print_r($_POST);
     $ans = [];
     try {
         if ($this->request->isPost() == true) {
             $validation = new AuthValidation();
             $messages = $validation->validate($_POST);
             if (count($messages)) {
                 foreach ($messages as $message) {
                     throw new Exception($message, 102);
                 }
             }
             $user = new User();
             $password = $this->request->getPost("password");
             $user->username = $this->request->getPost("username");
             $user->password = $password;
             // $user->password =  $this->security->hash($password);
             $user->showname = $user->username;
             $success = $user->save();
             if ($success) {
                 $ans['id'] = $user->id;
             } else {
                 foreach ($user->getMessages() as $message) {
                     throw new Exception($message, 100);
                 }
             }
         }
     } catch (Exception $e) {
         $ans['id'] = -1;
         Utils::makeError($e, $ans);
     } finally {
         echo json_encode($ans);
     }
     return 0;
 }
 /**
  * @api {post} /user 注册接口
  * @apiHeader {String} Accept=api-version=1.0 api版本
  * @apiHeaderExample {String} Header-Example:
  *     {
  *       "Accept": "api-version=1.0"
  *     }
  * @apiName register
  * @apiGroup User
  * @apiVersion 1.0.0
  *
  * @apiSuccess {Array} empty_array 空数组
  *
  * @apiUse errorExample
  */
 public function register()
 {
     $this->db->begin();
     $data = $this->request->getPost();
     $userValidator = new UserValidator();
     $messages = $userValidator->validate($data);
     if (0 != count($messages)) {
         return parent::resWithErrMsg($messages, 406);
     }
     $modelUser = new User();
     $duplicate = $modelUser->findFirst("lower(username)='" . strtolower($data['username']) . "'");
     if (!empty($duplicate)) {
         return parent::valueDuplicate('username');
     }
     $data['password'] = password_hash($data['password'], PASSWORD_DEFAULT);
     $res = $modelUser->create($data);
     if (false == $res) {
         $this->db->rollback();
         return parent::resWithErrMsg($modelUser->getMessages());
     }
     $config = $this->di->get('config');
     $userRole['role_id'] = $config->role->User;
     $userRole['user_id'] = $modelUser->id;
     $roleUserModel = new RoleUser();
     $res = $roleUserModel->create($userRole);
     if (false == $res) {
         $this->db->rollback();
         return parent::resWithErrMsg($roleUserModel->getMessages());
     }
     $this->db->commit();
     return parent::success();
 }
 public static function sendPushMessageNewMessage(Message $message, User $userFrom, User $userTo)
 {
     // GCM SENDER
     $client = new Client(__API_KEY__);
     // REGISTRATION IDS IN ARRAY
     $registrationIds = [];
     $registrationIds[] = $userFrom->registrationId;
     //$registrationIds[] = $userTo->registrationId;
     $data = array('type' => 1, 'id' => $message->id, 'title' => 'Mensagem de: ' . $userFrom->nickname, 'message' => $message->message, 'regTime' => $message->regTime * 1000, 'userFrom_id' => $userFrom->id, 'userFrom_nickname' => $userFrom->nickname, 'userTo_id' => $userTo->id, 'userTo_nickname' => $userTo->nickname, 'userTo_notification_status' => $userTo->notificationConf->status, 'userTo_notification_time' => $userTo->notificationConf->time * 1000, 'userTo_new_messages' => json_encode(["messages" => $userTo->getMessages()]), 'userTo_amount_new_messages' => count($userTo->messages));
     $options = ['collapse_key' => 'newMessage', 'delay_while_idle' => false, 'time_to_live' => 4 * 7 * 24 * 60 * 60, 'restricted_package_name' => 'br.com.thiengo.gcmexample', 'dry_run' => false];
     $client->send($data, $registrationIds, $options);
     // ENVIA A PUSH MESSAGE
     $responses = $client->getResponses();
     // ACESSA A ÚNICA POSIÇÃO POSSÍVEL, PRIMEIRA POSIÇÃO
     foreach ($responses as $response) {
         $response = json_decode($response->getContent());
         // VERIFICA SE HÁ ALGUM CANONICAL_ID, QUE INDICA QUE AO MENOS UM REGISTRATION_ID DEVE SER ATUALIZADO
         if ($response->canonical_ids > 0 || $response->failure > 0) {
             // PERCORRE TODOS OS RESULTADOS VERIFICANDO SE HÁ UM REGISTRATION_ID PARA SER ALTERADO
             for ($i = 0, $tamI = count($response->results); $i < $tamI; $i++) {
                 if (!empty($response->results[$i]->canonical_id)) {
                     // SE HÁ UM NOVO REGISTRATION_ID, ENTÃO ALTERANO BD
                     if ($i == 0) {
                         $userFrom->registrationId = $response->results[$i]->canonical_id;
                         CgdUser::updateRegistrationId($userFrom);
                     } else {
                         $userTo->registrationId = $response->results[$i]->canonical_id;
                         CgdUser::updateRegistrationId($userTo);
                     }
                 } else {
                     if (strcasecmp($response->results[$i]->error, "NotRegistered") == 0) {
                         // DELETE REGISTRO DO BD
                         if ($i == 0) {
                             CgdUser::deleteUser($userFrom);
                         } else {
                             CgdUser::deleteUser($userTo);
                         }
                     }
                 }
             }
         }
     }
 }
Example #18
0
 /**
  * 新增用户,客户端提供用户数据;不验证直接insert,返回user_id
  */
 public function addUserAction($key)
 {
     $param = $this->__getParam($key);
     $new_user = $param['user'];
     $user = new User();
     $user->assign($new_user);
     if ($user->save()) {
         $ret = array("result" => "SUCCESS", "user_id" => $user->user_id);
     } else {
         $ret = array("result" => "FAIL", "msg" => $user->getMessages());
     }
     unset($user);
     $this->table->del($key);
     return $ret;
 }