public function all($params)
 {
     $params['order'] = isset($params['order']) ? $params['order'] : ['display_name|ASC'];
     $group_types = GroupType::select("group_types.*");
     $group_types = parent::execute($group_types, $params);
     return $group_types;
 }
 public function create()
 {
     if (Auth::user()->can('create-group')) {
         $data['title'] = "Create Group";
         $data['group_types'] = GroupType::orderBy("name")->get();
         return view('groups/create', $data);
     } else {
         return redirect()->back()->withErrors(['Access denied to groups create page']);
     }
 }
 public function create($id = null)
 {
     if (Auth::user()->can('create-contact')) {
         $data['contact'] = [];
         $data['contact']['company_id'] = $id;
         $data['titles'] = Title::orderBy("name")->get();
         $data['departments'] = Department::orderBy("name")->get();
         $data['companies'] = Company::orderBy("name")->get();
         $data['group_types'] = GroupType::orderBy("name")->get();
         $data['divisions'] = Division::orderBy("name")->get();
         $data['title'] = "Create Contact";
         return view('company_person/create', $data);
     } else {
         return redirect()->back()->withErrors(['Access denied to contacts create page']);
     }
 }
 public function store(CreateGroupTypeRequest $request)
 {
     $groupType = GroupType::create($request->all());
     return redirect()->route('group_types.index')->with('successes', ['Group Type created successfully']);
 }
 public function run()
 {
     ////////////////////////////////////////////////////////////////////////////////
     // creation group types ////////////////////////////////////////////////////////
     ////////////////////////////////////////////////////////////////////////////////
     $gt_employee = new GroupType();
     $gt_employee->name = "employee";
     $gt_employee->display_name = "Employee";
     $gt_employee->description = "this is the group type of all employees of E80";
     $gt_employee->save();
     $gt_customer = new GroupType();
     $gt_customer->name = "customer";
     $gt_customer->display_name = "Customer";
     $gt_customer->description = "this is the group type of all E80 customers";
     $gt_customer->save();
     ////////////////////////////////////////////////////////////////////////////////
     // creation groups /////////////////////////////////////////////////////////////
     ////////////////////////////////////////////////////////////////////////////////
     $helpdesk = new Group();
     $helpdesk->group_type_id = $gt_employee->id;
     $helpdesk->name = "e80-helpdesk";
     $helpdesk->display_name = "E80 Helpdesk";
     $helpdesk->description = "this is the group of all E80 helpdesk";
     $helpdesk->save();
     $basic_customer = new Group();
     $basic_customer->group_type_id = $gt_customer->id;
     $basic_customer->name = "basic-customer";
     $basic_customer->display_name = "Basic Customer";
     $basic_customer->description = "this is the group of E80 customers";
     $basic_customer->save();
     ////////////////////////////////////////////////////////////////////////////////
     // creation permissions ////////////////////////////////////////////////////////
     ////////////////////////////////////////////////////////////////////////////////
     $ticket_create = new Permission();
     $ticket_create->name = "create-tickets";
     $ticket_create->display_name = "Create Tickets";
     $ticket_create->description = "Create Tickets";
     $ticket_create->save();
     $ticket_read = new Permission();
     $ticket_read->name = "read-tickets";
     $ticket_read->display_name = "Read Tickets";
     $ticket_read->description = "Read Tickets";
     $ticket_read->save();
     $ticket_update = new Permission();
     $ticket_update->name = "update-tickets";
     $ticket_update->display_name = "Update Tickets";
     $ticket_update->description = "Update Tickets";
     $ticket_update->save();
     $ticket_delete = new Permission();
     $ticket_delete->name = "delete-tickets";
     $ticket_delete->display_name = "Delete Tickets";
     $ticket_delete->description = "Delete Tickets";
     $ticket_delete->save();
     ////////////////////////////////////////////////////////////////////////////////
     // creation roles //////////////////////////////////////////////////////////////
     ////////////////////////////////////////////////////////////////////////////////
     $ticket_manager = new Role();
     $ticket_manager->name = "ticket-manager";
     $ticket_manager->display_name = "Ticket Manager";
     $ticket_manager->description = "Ticket Manager";
     $ticket_manager->save();
     $ticket_viewer = new Role();
     $ticket_viewer->name = "ticket-viewer";
     $ticket_viewer->display_name = "Ticket Viewer";
     $ticket_viewer->description = "Ticket Viewer";
     $ticket_viewer->save();
     ////////////////////////////////////////////////////////////////////////////////
     // creation permission_role ////////////////////////////////////////////////////
     ////////////////////////////////////////////////////////////////////////////////
     DB::table('permission_role')->insert([['role_id' => $ticket_manager->id, 'permission_id' => $ticket_create->id], ['role_id' => $ticket_manager->id, 'permission_id' => $ticket_read->id], ['role_id' => $ticket_manager->id, 'permission_id' => $ticket_update->id], ['role_id' => $ticket_manager->id, 'permission_id' => $ticket_delete->id]]);
     DB::table('permission_role')->insert([['role_id' => $ticket_viewer->id, 'permission_id' => $ticket_read->id]]);
     ////////////////////////////////////////////////////////////////////////////////
     // creation group_role /////////////////////////////////////////////////////////
     ////////////////////////////////////////////////////////////////////////////////
     DB::table('group_role')->insert([['group_id' => $helpdesk->id, 'role_id' => $ticket_manager->id], ['group_id' => $basic_customer->id, 'role_id' => $ticket_viewer->id]]);
 }
 public function create()
 {
     if (Auth::user()->can('create-company')) {
         $data['titles'] = Title::orderBy("name")->get();
         $data['departments'] = Department::orderBy("name")->get();
         $data['support_types'] = SupportType::orderBy("name")->get();
         $data['connection_types'] = ConnectionType::orderBy("name")->get();
         $data['group_types'] = GroupType::orderBy("name")->get();
         $data['escalation_profiles'] = EscalationProfile::orderBy("name")->get();
         $data['account_managers'] = CompanyPersonController::API()->all(["where" => ["company_person.company_id|=|" . ELETTRIC80_COMPANY_ID, "company_person.title_id|=|" . ACCOUNT_MANAGER_TITLE_ID], "order" => ["people.last_name|ASC", "people.first_name|ASC"], "paginate" => "false"]);
         $data['title'] = "Create Company";
         return view('companies/create', $data);
     } else {
         return redirect()->back()->withErrors(['Access denied to companies create page']);
     }
 }