Ejemplo n.º 1
0
 /**
  * 
  * @param String $role_id ID of role to delete
  * @throws KnockCascadeDeleteAttemptException
  */
 public function deleteRole($role_id)
 {
     $role = Role::findOrFail($role_id);
     if (!$role == null) {
         if ($role->actions->count() == 0) {
             $role->delete();
         } else {
             throw new KnockCascadeDeleteAttemptException("Sorry, you cannot delete Role [" . $role->name . "] because there are actions associated with it.\n\t\t\t\t\t\tYou must first delete all related actions before it can be deleted.");
         }
     }
 }
Ejemplo n.º 2
0
 /**
  * Store a newly created resource in storage.
  *
  * @param  \Illuminate\Http\Request  $request
  * @return \Illuminate\Http\Response
  */
 public function store(Request $request, $tag_id, $role_id)
 {
     $role = Role::findOrFail($role_id);
     $action = Knock::createAction($role->tag->name, $role->name, Str::slug($request->get('name')), $role->tag->description, $role->description, str_replace('"', "'", $request->input('description')));
     return redirect('/knock/tags/' . $role->tag->id . '/roles/' . $role->id)->with('flash_message', 'Action ' . Str::slug($request->get('name')) . ' created');
 }
Ejemplo n.º 3
0
 /**
  * Remove the specified resource from storage.
  *
  * @param  int  $id
  * @return \Illuminate\Http\Response
  */
 public function destroy($tag_id, $role_id)
 {
     $role = Role::find($role_id);
     try {
         if ($role != null) {
             Knock::deleteRole($role_id);
             return redirect('/knock/tags/' . $tag_id)->with('flash_message', 'Role ' . $role->name . ' has been deleted');
         }
     } catch (KnockCascadeDeleteAttemptException $e) {
         return redirect('/knock/tags/' . $tag_id . '/roles/' . $role_id)->with('flash_message', $e->getMessage());
     }
 }