Code Coverage |
||||||||||
Classes and Traits |
Functions and Methods |
Lines |
||||||||
| Total | |
0.00% |
0 / 1 |
|
0.00% |
0 / 8 |
CRAP | |
0.00% |
0 / 88 |
| RoleController | |
0.00% |
0 / 1 |
|
0.00% |
0 / 8 |
380 | |
0.00% |
0 / 88 |
| index | |
0.00% |
0 / 1 |
2 | |
0.00% |
0 / 7 |
|||
| rolelistdata | |
0.00% |
0 / 1 |
132 | |
0.00% |
0 / 42 |
|||
| create | |
0.00% |
0 / 1 |
2 | |
0.00% |
0 / 8 |
|||
| store | |
0.00% |
0 / 1 |
2 | |
0.00% |
0 / 5 |
|||
| show | |
0.00% |
0 / 1 |
2 | |
0.00% |
0 / 1 |
|||
| edit | |
0.00% |
0 / 1 |
6 | |
0.00% |
0 / 14 |
|||
| update | |
0.00% |
0 / 1 |
2 | |
0.00% |
0 / 7 |
|||
| destroy | |
0.00% |
0 / 1 |
2 | |
0.00% |
0 / 4 |
|||
| <?php | |
| namespace App\Http\Controllers\Admin; | |
| use Illuminate\Http\Request; | |
| use App\Http\Controllers\Controller; | |
| use App\Authorizable; | |
| use Spatie\Permission\Models\Role; | |
| use Spatie\Permission\Models\Permission; | |
| use Illuminate\Support\Facades\Validator; | |
| use App\Http\Controllers\Admin\flash; | |
| use App\Models\Admin\UserDetail; | |
| use Session; | |
| use App\Helpers\AttendanceHelper; | |
| class RoleController extends Controller | |
| { | |
| /** | |
| * Display a listing of the resource. | |
| * | |
| * @return \Illuminate\Http\Response | |
| */ | |
| public function index(Request $request) | |
| { | |
| $home= 'Home'; | |
| $title = '/Setup/Roles'; | |
| $backurl = route('home'); | |
| // For Attendance Marking | |
| $val = AttendanceHelper::getAttendanceMarkValue(); | |
| $valTeam = AttendanceHelper::getAttendanceTeam($request); | |
| $valUser = AttendanceHelper::getAttendanceUser($request); | |
| return view('administrationForms.Role.RoleTable', compact('home','title','backurl','val','valTeam','valUser')); | |
| } | |
| public function rolelistdata(Request $request) | |
| { | |
| $column_key = array("0"=>"name","1"=>"","2" =>""); | |
| $where_condition = "1 = 1"; | |
| $order_key = $request->input('order')[0]['column']; | |
| $order = $column_key[$order_key]; | |
| $dir = $request->input('order')[0]['dir']; | |
| if(trim($dir)==''){ | |
| $dir = 'desc'; | |
| } | |
| if ($order != '') { | |
| $orderBy = " ORDER BY ".$order." ".$dir; | |
| } | |
| if(null !==($request->input('search.value')) && trim($request->input('search.value'))!=''){ | |
| $search = $request->input('search.value'); | |
| $where_condition .= " AND (name Like '%$search%')"; | |
| } | |
| $count_model = Role::whereRaw($where_condition)->count(); | |
| $total_app_count = $count_model; | |
| $totalFiltered = $count_model; | |
| $data_model = Role::whereRaw($where_condition) | |
| ->orderBy($order , $dir) | |
| ->offset( intval($request->input('start')))->limit(intval($request->input('length'))) | |
| ->get(); | |
| $data = array(); | |
| if(count($data_model)>0){ | |
| foreach($data_model as $database_model){ | |
| $nestedData['name'] = $database_model->name; | |
| $nestedData['action'] = '-'; | |
| $edit_link = ''; | |
| if(auth()->user()->can('Edit Roles module')) | |
| { | |
| $edit_route = route('role.edit',$database_model->id); | |
| $edit_link = '<a href="'.$edit_route.'" data-original-title="Edit"> <i class="icon-pencil7" title="edit" style="color:#3699FF !important;"></i> </a>'; | |
| $nestedData['action'] = $edit_link; | |
| } | |
| if(auth()->user()->can('Delete Roles module')) | |
| { | |
| $userRole = UserDetail::where('role_id','=',$database_model->id)->whereNull('deleted_at')->count(); | |
| $isused = '0'; | |
| if(isset($userRole) && !empty($userRole)) | |
| { | |
| $isused = '1'; | |
| } | |
| $delete_link = '<a href="#" title="Delete" data-original-title="Delete" style="padding-left: 5px"; onclick="deleteRoles('.$database_model->id.','.$isused.');"><i class="icon-bin" style="color:#dc3545 !important;"></i></a>'; | |
| $nestedData['action'] = $edit_link.' '.$delete_link; | |
| } | |
| $data[] = $nestedData; | |
| } | |
| } | |
| $json_data = array( | |
| "draw" => intval( $request->input('draw')), | |
| "recordsTotal" => intval( $total_app_count ), | |
| "recordsFiltered" => intval($total_app_count ), | |
| "data" => $data, // total data array | |
| ); | |
| echo json_encode($json_data);exit; | |
| } | |
| /** | |
| * Show the form for creating a new resource. | |
| * | |
| * @return \Illuminate\Http\Response | |
| */ | |
| public function create(Request $request) | |
| { | |
| $home= 'Home'; | |
| $title = '/Setup/Create-Roles'; | |
| $backurl = route('role.index'); | |
| $createpermissions = Permission::get()->groupBy(['module_name','sub_heading_name']); | |
| // For Attendance Marking | |
| $val = AttendanceHelper::getAttendanceMarkValue(); | |
| $valTeam = AttendanceHelper::getAttendanceTeam($request); | |
| $valUser = AttendanceHelper::getAttendanceUser($request); | |
| return view('administrationForms.Role.RoleForm', compact( 'createpermissions','home','title','backurl','val','valTeam','valUser')); | |
| } | |
| /** | |
| * Store a newly created resource in storage. | |
| * | |
| * @param \Illuminate\Http\Request $request | |
| * @return \Illuminate\Http\Response | |
| */ | |
| public function store(Request $request) | |
| { | |
| $this->validate($request, ['name' => 'required|unique:roles']); | |
| $role = Role::create($request->only('name')); | |
| $role->givePermissionTo($request->input(['permissions'])); | |
| Session::flash('success', 'Role Added Successfully!'); | |
| return redirect()->route('role.index'); | |
| } | |
| /** | |
| * Display the specified resource. | |
| * | |
| * @param int $id | |
| * @return \Illuminate\Http\Response | |
| */ | |
| public function show($id) | |
| { | |
| // | |
| } | |
| /** | |
| * Show the form for editing the specified resource. | |
| * | |
| * @param int $id | |
| * @return \Illuminate\Http\Response | |
| */ | |
| public function edit(Request $request, $id) | |
| { | |
| $home= 'Home'; | |
| $title = '/Setup/Edit/Role'; | |
| $backurl = route('role.index'); | |
| $role = Role::where('id', $id)->with('permissions')->first(); | |
| $permissions= Permission::get()->groupBy(['module_name','sub_heading_name']); | |
| // get already assigned permission | |
| $assignedPermissions = []; | |
| foreach ($role->permissions as $value) | |
| { | |
| $assignedPermissions[] = $value->name; | |
| } | |
| Session::flash('warning', 'Edit Role'); | |
| // For Attendance Marking | |
| $val = AttendanceHelper::getAttendanceMarkValue(); | |
| $valTeam = AttendanceHelper::getAttendanceTeam($request); | |
| $valUser = AttendanceHelper::getAttendanceUser($request); | |
| return view('administrationForms.Role.RoleForm', compact('role', 'permissions','home', | |
| 'title','assignedPermissions','backurl','val','valTeam','valUser'))->with('role',Role::find($id)); | |
| } | |
| /** | |
| * Update the specified resource in storage. | |
| * | |
| * @param \Illuminate\Http\Request $request | |
| * @param int $id | |
| * @return \Illuminate\Http\Response | |
| */ | |
| public function update(Request $request, $id) | |
| { | |
| Role::where('id',$id)->update($request->only('name')); | |
| $role = Role::findByName($request->input('name')); | |
| $permissionsList = ($request['permissions']); | |
| $role->syncPermissions($permissionsList); | |
| $role->givePermissionTo($permissionsList); | |
| Session::flash('success', 'Roles Updated Successfully!'); | |
| return redirect()->route('role.index'); | |
| } | |
| /** | |
| * Remove the specified resource from storage. | |
| * | |
| * @param int $id | |
| * @return \Illuminate\Http\Response | |
| */ | |
| public function destroy(Request $request) | |
| { | |
| $id = $request->id; | |
| $role = Role::find($id); | |
| $role->delete(); | |
| return response()->json(['success_flag'=>1,'success_message'=>'Role Deleted Successfully']); | |
| } | |
| } |