示例#1
0
 public function __construct()
 {
     $this->user_id = Auth::getUser()->id;
     $role_obj = new RoleUser();
     $this->role_id = $role_obj->getRoleById($this->user_id);
     $role_policy_ojb = new RolePolicy();
     $this->policy_id = $role_policy_ojb->getPolicyByRoleId($this->role_id->role_id);
 }
 /**
  * Maps a Role object contained in a recordset to an object representation
  *
  * @param $rs Recordset filled with the object data
  * @return objeto Mapped Role object
  */
 function &mapOne($rs)
 {
     if ($rs == null) {
         return null;
     }
     $object = new RoleUser();
     $object->setId($rs->fields["ID"]);
     $object->setUserId($rs->fields["userID"]);
     $object->setRoleId($rs->fields["roleID"]);
     return $object;
 }
示例#3
0
 /**
  * [numTrainCourse description]
  * @return [type] [description]
  */
 public static function numTrainCourse()
 {
     $userid = Auth::getUser()->id;
     $roleid = RoleUser::where('user_id', $userid)->get(array('role_id'));
     $numCourse = Training::where('target', 'LIKE', '%' . $roleid[0]->role_id . '%')->where('status', '!=', false)->count();
     // echo $numCourse;exit;
     return $numCourse;
 }
 public static function onFailure($exception, $job)
 {
     ResqueUtil::log('[OnFailure]Job ' . CJSON::encode($job->payload['args'][0]['email']) . ' failed with exception ' . $exception);
     $userId = $job->payload['args'][0]['id'];
     User::model()->deleteByPk($userId);
     RoleUser::model()->deleteAllByAttributes(array('user' => $userId));
     ProjectUser::model()->deleteAllByAttributes(array('user' => $userId));
     Validation::model()->deleteAllByAttributes(array('code' => $job->payload['args'][0]['code']));
 }
示例#5
0
 public function delRoleAction($id)
 {
     try {
         Roles::where('id', '=', $id)->delete();
         RolePolicy::where('role_id', '=', $id)->delete();
         RoleUser::where('role_id', '=', $id)->delete();
         return Redirect::to('role')->with('success', 'ลบทิ้งบทบาทรหัส = ' . $id . ' สำเร็จ.');
     } catch (Exception $e) {
         return Redirect::to('role')->with('warning', 'Error occur info:' . $e->getMessage());
         //throw new Exception( 'Something really gone wrong', 0, $e);
     }
 }
 /**
  * @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));
 }
 /**
  * @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');
     $modelUser = new User();
     $result = $modelUser->login($username, $password);
     if (false === $result) {
         return parent::response($modelUser->getMessages(), 406);
     }
     $roleUser = RoleUser::findFirst("user_id=" . $result->id);
     $token = parent::obtainToken($result->id, $roleUser->role_id);
     if (false === $token) {
         return parent::serverError();
     }
     return parent::success(array('token' => $token));
 }
 /**
  * @api {delete} /admin/user/{id} 删除某个用户
  * @apiUse header
  *
  * @apiName deleteUser
  * @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 deleteUser($id)
 {
     if (empty($id)) {
         return parent::required('id');
     }
     $where = 'id=' . $id . ' and isdeleted=0';
     $user = User::findFirst($where);
     if (empty($user)) {
         return parent::invalid('id', $id);
     }
     if (false == $user->delete()) {
         return parent::resWithErrMsg($user->getMessages(), 406);
     }
     $roleUser = new RoleUser();
     $roleUser->user_id = $id;
     if (false == $roleUser->delete()) {
         return parent::resWithErrMsg($roleUser->getMessages());
     }
     return parent::success();
 }
示例#9
0
 /**
  * Exclude object from result
  *
  * @param     RoleUser $roleUser Object to remove from the list of results
  *
  * @return    RoleUserQuery The current query, for fluid interface
  */
 public function prune($roleUser = null)
 {
     if ($roleUser) {
         $this->addUsingAlias(RoleUserPeer::ID, $roleUser->getId(), Criteria::NOT_EQUAL);
     }
     return $this;
 }
示例#10
0
 /**
  * [userApprovalSave save method of user information after approval]
  * @param  [integer] $id [user id]
  * @return [none]     [redirect to user list]
  */
 public function userApprovalSave($id)
 {
     $data = Input::all();
     //var_dump($data);exit;
     $rules = array('user_approve' => 'required');
     $messages = array('user_approve.required' => 'กรุณาระบุสถานะการใช้งาน');
     $validator = Validator::make($data, $rules, $messages);
     //var_dump($validator->messages());exit;
     if ($validator->passes()) {
         $usernhc = Usernhc::find($id);
         $usernhc->status = $data['user_approve'];
         //approve user
         $usernhc->grp_id = $data['user_grp'];
         //promote user
         $usernhc->save();
         //set role to user
         // //DB::table('role_user')
         // 		->where('user_id','=',$id)
         // 		->update(array('role_id' => $data['role_approve']));
         $roleuser = new RoleUser();
         $_roleuser = $roleuser->getRoleById($id);
         if (isset($_roleuser)) {
             //if it exist
             RoleUser::where('user_id', '=', $id)->update(array('role_id' => $data['role_approve']));
         } else {
             $roleuser->role_id = $data['role_approve'];
             //role id
             $roleuser->user_id = $id;
             //user id
             $roleuser->save();
         }
         // $rolepolicy = new RolePolicy;
         // $rolepolicy->role_id = $data['role_approve'];//role id
         // $rolepolicy->policy_id = $id;//user id
         // $roleuser->save();
         if ($data['user_approve'] == 'yes') {
             //Send email when status is allow to user.
             self::emailToUser($usernhc->email, $usernhc->fname . ' ' . $usernhc->lname, $data['user_approve'], $data['user_grp'], $data['role_approve']);
         }
         return Redirect::route('userlist');
     } else {
         return Redirect::to('/userlist/approval/' . $id)->withErrors($validator);
     }
 }
示例#11
0
 /**
  * Adds an object to the instance pool.
  *
  * Propel keeps cached copies of objects in an instance pool when they are retrieved
  * from the database.  In some cases -- especially when you override doSelect*()
  * methods in your stub classes -- you may need to explicitly add objects
  * to the cache in order to ensure that the same objects are always returned by doSelect*()
  * and retrieveByPK*() calls.
  *
  * @param      RoleUser $value A RoleUser object.
  * @param      string $key (optional) key to use for instance map (for performance boost if key was already calculated externally).
  */
 public static function addInstanceToPool(RoleUser $obj, $key = null)
 {
     if (Propel::isInstancePoolingEnabled()) {
         if ($key === null) {
             $key = (string) $obj->getId();
         }
         // if key === null
         self::$instances[$key] = $obj;
     }
 }
示例#12
0
 public function getRoleById($id)
 {
     $role = RoleUser::where('user_id', '=', $id)->first();
     return $role;
 }
 /**
  * @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();
 }
示例#14
0
 public function registerAction()
 {
     Input::flash();
     $data = Input::all();
     $nhc_config = Config::get('nhc/site.init_privacy');
     $rules = array('fname' => 'required', 'agency_id' => 'required', 'username' => 'required | alpha_dash', 'username' => 'required', 'password' => 'required | min:6 |same:password_confirmation', 'password_confirmation' => 'required', 'email' => 'required | email ');
     $messages = array('fname.required' => 'กรุณาระบุชื่อผู้ใช้งาน', 'agency_id.required' => 'กรุณาระหน่วยงานสังกัด', 'username.required' => 'กรุณาระบุชื่อผู้ใช้งาน', 'username.alpha_dash' => 'ชื่อผู้ใช้งานต้องประกอบด้วยตัวอักษร ตัวเลข หรืออันเดอร์สกอร์เท่านั้น', 'password.required' => 'กรุณาระบุรหัสผ่าน', 'password.min' => 'ความยามรหัสผ่านอย่างน้อย :min อักษร', 'password.same' => 'รหัสผ่านที่กรอกไม่ตรงกัน', 'password_confirmation.required' => 'กรุณาระบุรหัสผ่านอีกครั้ง', 'email.required' => 'กรุณาระบุอีเมล์', 'email.email' => 'รูปแบบอีเมล์ไม่ถูกต้อง');
     $validator = Validator::make($data, $rules, $messages);
     if ($validator->passes()) {
         $usernhc = new Usernhc();
         $ck_email = $usernhc->checkUserByEmail($data['email']);
         $ck_username = $usernhc->checkUsername($data['username']);
         if (!$ck_email && !$ck_username) {
             $usernhc->agency_id = $data['agency_id'];
             $usernhc->grp_id = $data['grp_id'];
             $usernhc->username = $data['username'];
             $usernhc->password = Hash::make($data['password']);
             $usernhc->email = $data['email'];
             $usernhc->fname = $data['fname'];
             $usernhc->lname = $data['lname'];
             $usernhc->telno = $data['telno'];
             $usernhc->status = $data['status'];
             $usernhc->save();
             //set basic privacy to new user
             $privacy = new Privacy();
             $privacy->userid = $usernhc->getUserIdByUserName($data['username']);
             // $privacy->fname = true;
             // $privacy->lname = false;
             // $privacy->email = false;
             // $privacy->telno = false;
             // $privacy->agency = false;
             // $privacy->ministry = false;
             // $privacy->role = false;
             $rs = PrivacyInit::all()->toArray();
             foreach ($rs as $key => $value) {
                 $result[$value['name_en']]['val'] = $value['init_value'];
                 $result[$value['name_en']]['th'] = $value['name_th'];
                 $result[$value['name_en']]['en'] = $value['name_en'];
             }
             $privacy->fname = $result['fname']['val'];
             $privacy->lname = $result['lname']['val'];
             $privacy->email = $result['email']['val'];
             $privacy->telno = $result['telno']['val'];
             $privacy->agency = $result['agency']['val'];
             $privacy->ministry = $result['ministry']['val'];
             $privacy->role = $result['role']['val'];
             $privacy->save();
             $role = new RoleUser();
             $role->role_id = 6;
             $role->user_id = $usernhc->getUserIdByUserName($data['username']);
             $role->save();
             return Redirect::route('login')->with('success', 'ระบบบันทึกการลงทะเบียนสำเร็จกรุณารอ 24 ชั่วโมงจึงจะสามารถเข้าใช้งานระบบได้');
         } else {
             return Redirect::route('regis')->withInput()->withErrors(array('message' => 'อีเมล์หรือชื่อผู้ใช้งานมีอยู่ในระบบแล้ว'));
         }
     } else {
         return Redirect::route('regis')->withErrors($validator);
     }
 }
 /**
  * Run the database seeds.
  *
  * @return void
  */
 public function run()
 {
     factory(App\Models\User::class, 5)->create()->each(function ($c) {
     });
     $createDep = new Department();
     $createDep->id = '2';
     $createDep->name = 'Nerds';
     $createDep->save();
     $createDep = new Department();
     $createDep->id = '3';
     $createDep->name = 'Genius';
     $createDep->save();
     $newrole = new RoleUser();
     $newrole->role_id = '1';
     $newrole->user_id = '2';
     $newrole->timestamps = false;
     $newrole->save();
     $newrole = new RoleUser();
     $newrole->role_id = '2';
     $newrole->user_id = '3';
     $newrole->timestamps = false;
     $newrole->save();
     $newrole = new RoleUser();
     $newrole->role_id = '3';
     $newrole->user_id = '4';
     $newrole->timestamps = false;
     $newrole->save();
     $newrole = new RoleUser();
     $newrole->role_id = '3';
     $newrole->user_id = '5';
     $newrole->timestamps = false;
     $newrole->save();
     $newrole = new RoleUser();
     $newrole->role_id = '3';
     $newrole->user_id = '6';
     $newrole->timestamps = false;
     $newrole->save();
     \DB::table('department_user')->insert([['department_id' => 1, 'user_id' => 2], ['department_id' => 2, 'user_id' => 3], ['department_id' => 3, 'user_id' => 4], ['department_id' => 3, 'user_id' => 5], ['department_id' => 2, 'user_id' => 6]]);
 }