public function edit($id) { $user = User::findOrFail($id); $groups = UserGroup::lists('name_en', 'id'); $workspaces = Workspace::lists('name', 'id'); return view('users.edit', compact('user', 'groups', 'workspaces')); }
public function run() { DB::table('user_groups')->delete(); $names = ['游客', '新注册会员', '邮件认证会员', '中级会员', '高级会员', '禁止访问', '买家', '卖家', '买家&卖家']; foreach ($names as $name) { UserGroup::create(['name' => $name]); } }
/** * Run the database seeds. * * @return void */ public function run() { \App\Models\UserGroup::create(['name' => 'Super Admin']); \App\Models\UserGroup::create(['name' => 'Admin']); \App\Models\UserGroup::create(['name' => 'Clinic Manager']); \App\Models\UserGroup::create(['name' => 'Doctor']); \App\Models\UserGroup::create(['name' => 'User']); }
public function create() { $user = Auth::user(); $userGroups = UserGroup::where('level', '>', $user->user_group_id)->lists('name_en', 'id'); $designations = Designation::lists('name', 'id'); $workspaces = Workspace::lists('name', 'id'); return view('employees.create', compact('designations', 'workspaces', 'userGroups')); }
/** * Run the database seeds. * * @return void */ public function run() { DB::table('user_groups')->truncate(); $userGroups = [['name' => 'admin'], ['name' => 'cashier'], ['name' => 'waiter'], ['name' => 'kitchen']]; foreach ($userGroups as $group) { \App\Models\UserGroup::create($group); } }
public function actionDelete() { $models = UserGroup::findAllByPk($_POST['UserGroup']); $no = 0; foreach ($models as $model) { $no += (int) $model->delete(); } if ($no !== 1) { Messages::get()->success("{$no} groups deleted!"); } else { Messages::get()->success("Group deleted!"); } $this->getRequest()->goBack(); }
public function getForEdit($id) { $data = []; $e = $this->empDto->findById($id); if ($e) { $ug = UserGroup::where('user_id', $e->user->id)->first(); $data['empId'] = $e->id; $data['id_number'] = substr($e->id_number, 4); $data['first_name'] = $e->first_name; $data['middle_name'] = $e->middle_name; $data['last_name'] = $e->last_name; $data['sex'] = $e->sex; $data['birthday'] = $e->birthday; $data['email'] = $e->user->email; $data['shift'] = ['id' => $e->shift->id]; $data['group'] = ['id' => $ug->group->id]; } return $data; }
public function sumRetentionData(UserGroup $userGroup, $sequence) { $retentionData = RetentionData::where('user_group_id', $userGroup->id)->where('sequence', $sequence)->first(); if ($retentionData && $retentionData->fixed_flg) { return; } $date = $userGroup->user_grouping_date; $userDefinition = $this->item->project->userDefinition; $userTable = $userDefinition->table_name; $activityTable = $this->item->table_name; $value = DB::connection($this->item->project->db)->table($userTable)->join($activityTable, "{$userTable}.{$userDefinition->user_id_column}", '=', "{$activityTable}.{$this->item->user_id_column}")->whereRaw($this->item->other_criteria ? $this->item->other_criteria : 'TRUE')->where("{$userTable}.{$userDefinition->date_column}", '>=', $date)->where("{$userTable}.{$userDefinition->date_column}", '<', $this->getNextUserGroupDate($date))->whereRaw("{$activityTable}.{$this->item->date_column} >= {$userTable}.{$userDefinition->date_column} + INTERVAL {$this->item->getRetentionSpanOffset($sequence)}")->whereRaw("{$activityTable}.{$this->item->date_column} < {$userTable}.{$userDefinition->date_column} + INTERVAL {$this->item->getRetentionSpanOffset($sequence + 1)}")->count(DB::raw("DISTINCT {$activityTable}.{$this->item->user_id_column}")); $ret = DB::connection($this->item->project->db)->table($userTable)->where("{$userTable}.{$userDefinition->date_column}", '>=', $date)->where("{$userTable}.{$userDefinition->date_column}", '<', $this->getNextUserGroupDate($date))->selectRaw("MAX({$userTable}.{$userDefinition->date_column} + INTERVAL {$this->item->getRetentionSpanOffset($sequence + 1)}) < NOW() AS fixed_flg")->first(); if (!$retentionData) { $retentionData = new RetentionData(); $retentionData->sequence = $sequence; $retentionData->fixed_flg = $ret->fixed_flg; } $retentionData->value = $value; $userGroup->retentionDatas()->save($retentionData); //->get(); //->getQueryLog(); //print_r(DB::connection($this->item->project->db)->getQueryLog()); //print_r( $value); }
function save(array $params) { $response = new ResponseEntity(); DB::transaction(function () use(&$response, $params) { $empId = isset($params['empId']) ? intval($params['empId']) : 0; $idNumber = Config::get('hris_system.employee_id_prefix') . $params['id_number']; $existingEmp = Employee::with('user')->find($empId); // check for duplicate id_number $tempEmp = Employee::where('id_number', '=', $idNumber)->first(); if ($tempEmp) { if (!$existingEmp) { // new $response->setMessages(['id_number' => ['Id number is already taken']]); return $response; } else { if ($existingEmp && $existingEmp->id != $tempEmp->id) { // update $response->setMessages(['id_number' => ['Id number is already taken']]); return $response; } } } if ($empId > 0 && !$existingEmp) { // check when updating $response->setMessages(['Employee is not available!']); return $response; } else { // employee user account $user = $existingEmp ? $existingEmp->user : new User(); $user->email = $params['email']; if (!$existingEmp) { // for new employee user account $user->password = Hash::make($idNumber); //default password is the ID Number of the employee $user->active = '1'; } $user->save(); // clear user group UserGroup::where('user_id', $user->id)->delete(); // assign group $ug = new UserGroup(); $ug->user_id = $user->id; $ug->group_id = $params['group_id']; $ug->save(); // employee records $employee = $existingEmp ? $existingEmp : new Employee(); $employee->user_id = $user->id; $employee->id_number = $idNumber; $employee->first_name = $params['first_name']; $employee->last_name = $params['last_name']; if (isset($params['middle_name'])) { $employee->middle_name = $params['middle_name']; } if (isset($params['supervisor_id'])) { $employee->supervisor_id = $params['supervisor_id']; } $employee->sex = $params['sex']; $employee->birthday = Carbon::createFromFormat('m/d/Y', $params['birthday']); $employee->shift_id = $params['shift_id']; $employee->active = $existingEmp ? $existingEmp->active : '1'; $ok = $employee->save(); if ($ok) { $response->setSuccess(true); $response->setData(['empId' => $employee->id]); $response->setMessages(['Employee successfully ' . ($existingEmp ? 'saved' : 'created')]); } else { $response->setMessages(['Failed to ' . ($existingEmp ? 'save' : 'create') . ' employee!']); } } }); return $response; }
public function create() { $groups = UserGroup::lists('name_en', 'id'); return view('users.create', compact('groups')); }
/** * 关联用户组 * @return [type] [description] */ public function getGroup() { return UserGroup::findOne($this->groupid); }
/** * @param $userId * @return 1 if User is Administrator * @return 2 if User is Student * @return 3 if User is Teacher */ public static function checkUserTypeByUserId($userId) { $userGroup = UserGroup::where('user_id', $userId)->get()->first(); return $userGroup->group_id; }
<?php use App\Models\UserGroup; use App\Models\UserDetails; use App\Models\Groups; $user_id = Auth::user()->id; $user_group = UserGroup::where('user_id', '=', $user_id)->get()->first(); $userDetails = UserDetails::where('user_id', '=', $user_id)->get()->first(); $admin_group_id = Groups::Administrator_Group_ID; $teacher_group_id = Groups::Teacher_Group_Id; $student_group_id = Groups::Student_Group_Id; ?> @section('upper-dropdown') <a data-toggle="dropdown" data-hover="dropdown" class="dropdown-toggle" data-close-others="true" href="#"> @if($userDetails->pic == null) <img src="{{ URL::asset('assets/images/anonymous.jpg') }}" class="img-circle" alt="" width="30px" height="30px" id="upper_dropdown_menu_profile_image"> @else <img src="{{ URL::asset('school/images/user/profile_images/'.$userDetails->pic) }}" class="img-circle" alt="" width="30px" height="30px" id="upper_dropdown_menu_profile_image"> @endif <span class="username hidden-xs">{{ $userDetails->first_name }} {{ $userDetails->last_name }}</span> <i class="fa fa-caret-down "></i> </a> @stop @section('left-user-profile') <div class="inline-block"> @if($userDetails->pic == null) <img src="{{ URL::asset('assets/images/anonymous.jpg') }}" class="img-circle" alt="" width="50px" height="50px" id="left_menu_profile_image"> @else
public function run() { $handle = fopen($this->baseDir . 'users_groups_permissions.tsv', 'r'); $headers = fgetcsv($handle, 1024, ' '); $entityPermissions = array_fill_keys($headers, ''); while (($data = fgetcsv($handle, 2048, ' ')) != false) { reset($headers); foreach ($data as $val) { $entityPermissions[$headers[key($headers)]][] = $val; next($headers); } } fclose($handle); $groupList = Models\Group::getConstants(); $permissionCategories = array(); $permissionCategoryList = array(); $permissionCategoryID = 1; $permissionEntities = array(); $permissionEntityList = array(); $permissionEntityID = 1; $permissionActions = array(); $permissionActionList = array(); $permissionActionID = 1; $permissionManagementActions = array(); $permissionManagementActionList = array(); $permissionManagementActionID = 1; $handle = fopen($this->baseDir . 'permission_entities_actions.tsv', 'r'); fgetcsv($handle, 1024, ' '); while (($data = fgetcsv($handle, 1024, ' ')) != false) { if (!empty($data[3])) { if (!isset($permissionCategoryList[$data[3]])) { $permissionCategoryList[$data[3]] = $permissionCategoryID++; $permissionCategories[] = ['name' => $data[3]]; } } $permissionEntities[] = ['name' => $data[0], 'permission_category_id' => $permissionCategoryList[$data[3]]]; $permissionEntityList[$data[0]] = $permissionEntityID; $tmp = explode(';', $data[1]); foreach ($tmp as $item) { $permissionActions[] = array('name' => $item, 'permission_entity_id' => $permissionEntityID); $permissionActionList[$data[0]][$item] = $permissionActionID++; } $tmp = explode(';', $data[2]); foreach ($tmp as $item) { $permissionManagementActions[] = array('name' => $item, 'permission_entity_id' => $permissionEntityID); $permissionManagementActionList[$data[0]][$item] = $permissionManagementActionID++; } $permissionEntityID++; } fclose($handle); $permissionGroup = array(); $permissionManagementGroup = array(); $permissionManagementID = 1; $permissionManagement = array(); $permissionID = 1; $permission = array(); $permissionListForUserInGroup = array(); $permissionManagementListForUserInGroup = array(); reset($entityPermissions); $permissionGroupList = $entityPermissions[key($entityPermissions)]; next($entityPermissions); while (list($entity, $val) = each($entityPermissions)) { if (strpos($entity, '_management') !== false) { foreach ($val as $groupKey => $actions) { $tmp = explode(';', $actions); foreach ($tmp as $item) { if (!empty($item)) { $permissionManagement[] = array('permission_management_action_id' => $permissionManagementActionList[str_replace('_management', '', $entity)][$item], 'permission_recipient_type_id' => Models\PermissionRecipientType::group); $permissionManagementGroup[] = array('type_id' => $groupList[$permissionGroupList[$groupKey]], 'permission_management_id' => $permissionManagementID++); $permissionManagementListForUserInGroup[$groupList[$permissionGroupList[$groupKey]]][] = array('permission_management_action_id' => $permissionManagementActionList[str_replace('_management', '', $entity)][$item], 'permission_recipient_type_id' => Models\PermissionRecipientType::user); } } } } else { foreach ($val as $groupKey => $actions) { $tmp = explode(';', $actions); foreach ($tmp as $item) { if (!empty($item)) { $permission[] = array('permission_action_id' => $permissionActionList[$entity][$item], 'permission_recipient_type_id' => Models\PermissionRecipientType::group); $permissionGroup[] = array('type_id' => $groupList[$permissionGroupList[$groupKey]], 'permission_id' => $permissionID++); $permissionListForUserInGroup[$groupList[$permissionGroupList[$groupKey]]][] = array('permission_action_id' => $permissionActionList[$entity][$item], 'permission_recipient_type_id' => Models\PermissionRecipientType::user); } } } } } $permissionUser = array(); $permissionManagementUser = array(); $alreadyGivenPermissions = $alreadyGivenManagementPermissions = []; $userGroups = Models\UserGroup::all(); foreach ($userGroups as $userGroup) { if (isset($permissionListForUserInGroup[$userGroup->group_id])) { foreach ($permissionListForUserInGroup[$userGroup->group_id] as $p) { if (!isset($alreadyGivenPermissions[$userGroup->user_id][$p['permission_action_id']])) { $alreadyGivenPermissions[$userGroup->user_id][$p['permission_action_id']] = true; $permission[] = $p; $permissionUser[] = ['type_id' => $userGroup->user_id, 'permission_id' => $permissionID++]; } } } if (isset($permissionManagementListForUserInGroup[$userGroup->group_id])) { foreach ($permissionManagementListForUserInGroup[$userGroup->group_id] as $p) { if (!isset($alreadyGivenManagementPermissions[$userGroup->user_id][$p['permission_management_action_id']])) { $alreadyGivenManagementPermissions[$userGroup->user_id][$p['permission_management_action_id']] = true; $permissionManagement[] = $p; $permissionManagementUser[] = ['type_id' => $userGroup->user_id, 'permission_management_id' => $permissionManagementID++]; } } } } DB::table('permission_recipient_types')->insert([['name' => 'group'], ['name' => 'user']]); DB::table('permission_categories')->insert($permissionCategories); DB::table('permission_entities')->insert($permissionEntities); DB::table('permission_actions')->insert($permissionActions); DB::table('permission_management_actions')->insert($permissionManagementActions); DB::table('permission_management')->insert($permissionManagement); DB::table('permission_management_groups')->insert($permissionManagementGroup); DB::table('permission_management_users')->insert($permissionManagementUser); DB::table('permissions')->insert($permission); DB::table('permission_groups')->insert($permissionGroup); DB::table('permission_users')->insert($permissionUser); $this->command->info('Permissions seeded'); /** * Entitites for which permissions don't need to be checked have a permission_entity_id of 0. * */ $dashboard = ['name' => 'entities.dashboard', 'icon' => 'fa fa-dashboard fa-fw', 'route' => 'admin.dashboard']; $sentinel = ['name' => 'entities.sentinel', 'icon' => 'fa fa-key fa-fw', 'children' => [['name' => 'entities.users', 'permission_entity_id' => isset($permissionEntityList['user']) ? $permissionEntityList['user'] : 0, 'route' => 'admin.user.index'], ['name' => 'entities.groups', 'permission_entity_id' => isset($permissionEntityList['group']) ? $permissionEntityList['group'] : 0, 'route' => 'admin.group.index']]]; $spirit = ['name' => 'entities.spirit', 'icon' => 'fa fa-bullhorn fa-fw', 'children' => [['name' => 'entities.people', 'permission_entity_id' => isset($permissionEntityList['person']) ? $permissionEntityList['person'] : 0, 'route' => 'admin.person.index']]]; Models\System\BackendMainMenu::create($dashboard); Models\System\BackendMainMenu::create($sentinel); Models\System\BackendMainMenu::create($spirit); $this->command->info('Menu items seeded'); }
<?php $actions = array('index' => 'View All', 'create' => 'New User'); $menu = array(); foreach ($actions as $action => $label) { $menu[] = array('url' => array('users', $action), 'label' => $label, 'htmlOptions' => $action == $this->getActiveAction() ? array('class' => 'selected') : array()); } echo \app\components\htmltools\Page::title('Users - Edit', $menu); echo \mpf\widgets\form\Form::get(array('name' => 'save', 'model' => $model, 'theme' => 'default-wide', 'fields' => array('name', 'email', array('name' => 'title_id', 'type' => 'select', 'options' => \mpf\helpers\ArrayHelper::get()->transform(\app\models\UserTitle::findAll(), array('id' => 'title'))), array('name' => 'status', 'type' => 'radio', 'options' => array(\app\models\User::STATUS_ACTIVE => 'Active', \app\models\User::STATUS_BLOCKED => 'Blocked')), array('name' => 'groupIDs', 'type' => 'checkbox', 'options' => \mpf\helpers\ArrayHelper::get()->transform(\app\models\UserGroup::findAll(), array('id' => 'label'))))))->display();
public function getUserGroup() { return UserGroup::where('UserID', $this->UserID)->where('Default', 'Y'); }
public function postCreateMobileApp(Request $request) { $email = $request->input('email'); $password = $request->input('password'); $password_again = $request->input('password_again'); $group_to_register_in = $request->input('group_to_register_in'); $inputs = ['email' => $email, 'password' => $password, 'password_again' => $password_again, 'group_to_register_in' => $group_to_register_in]; $validator = validator::make($request->all(), ['email' => 'required|unique:users|email', 'password' => 'required|max:16|min:6', 'password_again' => 'required|same:password', 'group_to_register_in' => 'required|in:1,2,3']); if ($validator->fails()) { return ApiResponseClass::errorResponse('You Have Some Input Errors', $inputs, $validator->errors()); } $group_id = null; if ($group_to_register_in == Groups::Student_Group_Id) { $group_id = Groups::Student_Group_Id; } elseif ($group_to_register_in == Groups::Administrator_Group_ID) { $group_id = Groups::Administrator_Group_ID; } elseif ($group_to_register_in == Groups::Teacher_Group_Id) { $group_id = Groups::Teacher_Group_Id; } DB::beginTransaction(); try { Groups::findorFail($group_id); $user = new User(); $user->email = $email; $user->password = Hash::make($password); $user->activated = 0; $user->email_updated_at = date("Y-m-d h:i:s"); $user->password_updated_at = date("Y-m-d h:i:s"); $user->activation_code = str_random(64); if (!$user->save()) { throw new \ErrorException(); } $user_group = new UserGroup(); $user_group->user_id = $user->id; $user_group->group_id = $group_id; if (!$user_group->save()) { throw new \ErrorException(); } DB::commit(); } catch (ModelNotFoundException $e) { DB::rollback(); return ApiResponseClass::errorResponse('ModelNotFoundException', $inputs); } catch (\ErrorException $e) { DB::rollback(); return ApiResponseClass::errorResponse('ModelNotSavedException', $inputs); } // Send mail to the user if not the test Shop Id. return ApiResponseClass::successResponse($user, $inputs); }
/** * Update db connection to selected groups * @return $this */ public function saveGroups() { $old = ArrayHelper::get()->transform($this->groups, 'name'); WebApp::get()->sql()->table('users2groups')->where("user_id = :id")->setParam(':id', $this->id)->delete(); $connectionTable = WebApp::get()->sql()->table('users2groups'); foreach ($this->groupIDs as $id) { $connectionTable->insert(array('user_id' => $this->id, 'group_id' => $id)); } $new = ArrayHelper::get()->transform(UserGroup::findAllByPk($this->groupIDs), 'name'); $this->logAction(UserHistory::ACTION_GROUPS, "Old: " . implode(", ", $old) . "\nNew: " . implode(", ", $new)); return $this; }