public function destroy($id) { Laralum::permissionToAccess('laralum.permissions.access'); # Check permissions Laralum::permissionToAccess('laralum.permissions.delete'); # Get the permission $perm = Laralum::permission('id', $id); # Check if it's su if ($perm->su) { abort(403, trans('laralum.error_security_reasons')); } # Delete relationships $rels = Permission_Role::where('permission_id', $perm->id)->get(); foreach ($rels as $rel) { $rel->delete(); } # Delete Permission $perm->delete(); # Return a redirect return redirect()->route('Laralum::permissions')->with('success', trans('laralum.msg_permission_deleted')); }
public function destroy($id) { Laralum::permissionToAccess('laralum.roles.access'); # Check permissions Laralum::permissionToAccess('laralum.roles.delete'); # Select Role $role = Laralum::role('id', $id); if (!$role->allow_editing and !Laralum::loggedInuser()->su) { abort(403, trans('laralum.error_editing_disabled')); } # Check if it's su if ($role->su) { return abort(403, trans('laralum.error_security_reasons')); } # Check if it's the default role if ($role->id == Laralum::defaultRole()->id) { abort(403, trans('laralum.error_security_reasons_default_role')); } # Delete all relationships # Permission Relation $rels = Permission_Role::where('role_id', $id)->get(); foreach ($rels as $rel) { $rel->delete(); } # Users Relation $rels = Role_User::where('role_id', $id)->get(); foreach ($rels as $rel) { $rel->delete(); } # Delete Role $role->delete(); # Redirect the admin return redirect()->route('Laralum::roles')->with('success', trans('laralum.msg_role_deleted')); }