Пример #1
0
 public function destroy($id)
 {
     Laralum::permissionToAccess('laralum.users.access');
     # Check permissions
     Laralum::permissionToAccess('laralum.users.delete');
     # Find The User
     $user = Laralum::user('id', $id);
     # Check if admin access
     Laralum::mustNotBeAdmin($user);
     # Check if it's su
     if ($user->su) {
         abort(403, trans('laralum.error_security_reasons'));
     }
     # Check before deleting
     if ($id == Laralum::loggedInUser()->id) {
         abort(403, trans('laralum.error_user_delete_yourself'));
     } else {
         # Delete Relationships
         $rels = Role_User::where('user_id', $user->id)->get();
         foreach ($rels as $rel) {
             $rel->delete();
         }
         # Delete User
         $user->delete();
         # Return the admin with a success message
         return redirect()->route('Laralum::users')->with('success', trans('laralum.msg_user_deleted'));
     }
 }
Пример #2
0
 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'));
 }