middleware('auth:admin'); } /** * Display a listing of the resource. * * @return \Illuminate\Http\Response */ public function index() { $languages = DB::table('languages') ->orderBy('serial_no', 'asc') ->get(); $roles = Role::orderBy('id', 'desc')->get(); return view('admin.roles.index', compact('roles', 'languages')); } /** * Show the form for creating a new resource. * * @return \Illuminate\Http\Response */ public function create() { $languages = DB::table('languages') ->orderBy('serial_no', 'asc') ->get(); return view('admin.roles.create', compact('languages')); } /** * Store a newly created resource in storage. * * @param \Illuminate\Http\Request $request * @return \Illuminate\Http\Response */ public function store(Request $request) { $languages = DB::table('languages') ->orderBy('serial_no', 'asc') ->get(); $request->session()->put('old_data', $request->all()); $name=[]; $error_array=[]; if(!empty($languages)): foreach($languages as $language): if(isset($request['name_'.$language->short_name])): if($request['name_'.$language->short_name]== ''): Session::flash('error_message', 'Role name for '.$language->name.' ( '.strtoupper($language->short_name).' ) is required.'); return redirect()->back(); else: $exists_check = Role::where('name', 'LIKE', '%"'.$language->short_name.'":"'.$request['name_'.$language->short_name].'"%')->first(); if(isset($exists_check) && !empty($exists_check)): Session::flash('error_message', 'Role name for '.$language->name.' ( '.strtoupper($language->short_name).' ) is already exists.'); return redirect()->back(); else: $name[$language->short_name]= $request['name_'.$language->short_name]; endif; endif; endif; endforeach; endif; $request['name'] = json_encode($name); $input = $request->all(); $saved_data=Role::create($input); if($saved_data) { $request->session()->forget('old_data'); Session::flash('success_message', 'Role has been added successfully'); return redirect()->route('roles'); } else { Session::flash('error_message', 'We are having some problem. Please try later.'); return redirect()->route('add-role'); } } /** * 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($id) { $id=base64_decode($id); $role = Role::where('id', '=', $id)->first(); if($role): $languages = DB::table('languages') ->orderBy('serial_no', 'asc') ->get(); return view('admin.roles.edit', compact('role', 'languages')); else: Session::flash('error_message', 'Invalid role id.'); return redirect()->route('roles'); endif; } /** * Update the specified resource in storage. * * @param \Illuminate\Http\Request $request * @param int $id * @return \Illuminate\Http\Response */ public function update(Request $request, $id) { $id=base64_decode($id); $role = Role::findOrFail($id); $languages = DB::table('languages') ->orderBy('serial_no', 'asc') ->get(); $request->session()->put('old_data', $request->all()); $name=[]; $error_array=[]; if(!empty($languages)): foreach($languages as $language): if(isset($request['name_'.$language->short_name])): if($request['name_'.$language->short_name]== ''): Session::flash('error_message', 'Role name for '.$language->name.' ( '.strtoupper($language->short_name).' ) is required.'); return redirect()->back(); else: $exists_check = Role::where('name', 'LIKE', '%"'.$language->short_name.'":"'.$request['name_'.$language->short_name].'"%')->where('id', '<>', $id)->first(); if(isset($exists_check) && !empty($exists_check)): Session::flash('error_message', 'Role name for '.$language->name.' ( '.strtoupper($language->short_name).' ) is already exists.'); return redirect()->back(); else: $name[$language->short_name]= $request['name_'.$language->short_name]; endif; endif; endif; endforeach; endif; $request['name'] = json_encode($name); $input = $request->all(); $saved_data=$role->fill($input)->save(); if($saved_data): $request->session()->forget('old_data'); Session::flash('success_message', 'Role has been updated successfully'); return redirect()->route('roles'); else: Session::flash('error_message', 'We are having some problem. Please try later.'); return redirect()->route('edit-role'); endif; } /** * Remove the specified resource from storage. * * @param int $id * @return \Illuminate\Http\Response */ public function destroy($id) { $id=base64_decode($id); $delete_role = Role::where('id', $id)->delete(); if($delete_role): Session::flash('success_message', 'Role has been deleted successfully'); return redirect()->route('roles'); else: Session::flash('error_message', 'We are having some problem. Please try later.'); return redirect()->route('roles'); endif; } public function statusupdate($id) { $id=base64_decode($id); $find_role = Role::findOrFail($id); if($find_role->status==1) $status=0; else $status=1; $input=[ 'status'=>$status ]; $saved_data=$find_role->fill($input)->save(); if($saved_data): Session::flash('success_message', 'Role has been updated successfully'); return redirect()->route('roles'); else: Session::flash('error_message', 'We are having some problem. Please try later.'); return redirect()->route('roles'); endif; } }