/** * Update the specified resource in storage. * * @param int $id * @return Response */ public function update($id, Request $request) { $permissions = Module::with('permissions')->get(); // find role by id $role = Sentinel::findRoleById($id); // inputs $data = $request->get('data'); $value = $request->get('value'); if (isset($role->permissions[$value])) { $role->updatePermission($value, $data == 'true' ? true : false); $role->save(); return "update"; } else { $role->addPermission($value, $data == 'true' ? true : false); $role->save(); return "add"; } }
/** * Update the specified resource in storage. * * @param int $id * @return Response */ public function update($id, Request $request) { /** * consulto el rol para actualizar */ $role = Sentinel::findRoleById($id); /** * Obtengo los valores correspondiente al formulario */ $name = $request->input('name'); $create = $request->input('user_create'); $delete = $request->input('user_delete'); $view = $request->input('user_view'); $update = $request->input('user_update'); /** * creo el formato correspondiente para los permiso segun lo seleccionado */ /*$permissions="{"; $permissions.= $create!=null?'"'.$create.'":true,':'"user.create":false,'; $permissions.= $delete!=null?'"'.$delete.'":true,':'"user.delete":false,'; $permissions.= $view !=null?'"'.$view. '":true,':'"user.view":false,'; $permissions.= $update!=null?'"'.$update.'":true' :'"user.update":false'; $permissions.="}";*/ $permissions = array('user.create' => $create != null ? true : false, 'user.delete' => $delete != null ? true : false, 'user.view' => $view != null ? true : false, 'user.update' => $update != null ? true : false); try { $role->name = $name; $role->permissions = $permissions; $role->save(); } catch (QueryException $e) { flash()->overlay("Ocurrió un error en el registro, consulte con el administrador <br/>Error:{$e}", 'Aviso'); return redirect()->back()->withInput($request->all()); } flash()->overlay('Tu registro ha sido modificado!', 'Aviso'); return redirect("admin/roles"); }
/** * Update the specified resource in storage. * * @param int $id * @return Response */ public function update($id, Request $request) { // $fields = $request->except('optionsRadios', 'email'); $fields['icon'] = "fa-envelope-o"; $user_id = $request->get('user_id'); $role_id = $request->get('role_id'); $notification = Notification::find($id); if ($request->has('user_id')) { $notification->addUser($request->get('user_id')); } if ($request->has('role_id')) { $notification->addRole($request->get('role_id')); } if ($request->get('email') == 1) { if (strcmp($request->get('optionsRadios'), "users") == 0) { $user = User::findOrFail($user_id); // send email $notification->smail($user, $fields); } else { $role = Sentinel::findRoleById($role_id); $users = $role->users()->with('roles')->get(); //send email foreach ($users as $user) { $notification->smail($user, $fields); } } } $notification->fill($fields); $notification->save(); flash()->success('La notificación ha sido actualizada.'); return redirect()->to('notifications'); }
/** * Remove the specified resource from storage. * * @param int $id * @return Response */ public function destroy($id) { if (Sentinel::hasAccess('role.delete')) { $affectedRows = DB::table('role_users')->where('role_id', '=', $id)->get(); if (empty($affectedRows)) { if ($role = Sentinel::findRoleById($id)) { $role->delete(); } return \Redirect::to('roles')->withErrors('No se pudo eliminar el rol.'); } } else { return response()->json(['error' => 'No tiene permisos para acceder a esta area.'], 401); } }
/** * Remove the specified resource from storage. * * @param int $id * @return Response */ public function destroy($id) { $affectedRows = DB::table('role_users')->where('role_id', '=', $id)->get(); if (empty($affectedRows)) { if ($role = Sentinel::findRoleById($id)) { $role->delete(); $affectedRows = 1; return $affectedRows; } return \Redirect::to('roles')->withErrors('No se pudo eliminar el rol.'); } else { $affectedRows = 0; return $affectedRows; } }
/** * Update the specified resource in storage. * * @param int $id * @return Response */ public function update($id, Request $request, NotificationRequest $notificationRequest) { // $fields = $request->except('optionsRadios', 'email'); $notification = Notification::find($id); if (!isset($fields['user_id'])) { $fields['user_id'] = NULL; } if (!isset($fields['role_id'])) { $fields['role_id'] = NULL; } if ($request->get('email') == 1) { if (strcmp($request->get('optionsRadios'), "users") == 0) { $user_id = $request->get('user_id'); $user = User::findOrFail($user_id); Mail::send('emails.notification', ['user' => $user, 'fields' => $fields], function ($m) use($user, $fields) { $m->to($user->email)->subject('Usted tiene una nueva notificación ' . $fields['title']); }); } else { $role_id = $request->get('role_id'); $role = Sentinel::findRoleById($role_id); $users = $role->users()->with('roles')->get(); foreach ($users as $user) { Mail::send('emails.notification', ['user' => $user, 'fields' => $fields], function ($m) use($user, $fields) { $m->to($user->email)->subject('Usted tiene una nueva notificación ' . $fields['title']); }); } } } $notification->fill($fields); $notification->save(); return \Redirect::to('notifications')->withSuccess('La notificación se ha sido actualizado.'); }