API Fixes || Missing: Update Role

This commit is contained in:
1day2die 2023-05-08 10:45:47 +02:00
parent 3d8a1cf53f
commit 6ef0b63c36
3 changed files with 18 additions and 7 deletions

View file

@ -52,7 +52,7 @@ class RoleController extends Controller
public function store(Request $request)
{
$request->validate([
'name' => 'nullable|string|max:191',
'name' => 'required|string|max:191',
'color' => [
'required',
'regex:/^#([a-f0-9]{6}|[a-f0-9]{3})$/i'
@ -67,7 +67,10 @@ class RoleController extends Controller
]);
if ($request->permissions) {
$role->givePermissionTo($request->permissions);
$permissions = explode(",",$request->permissions);
foreach($permissions as $permission){
$role->givePermissionTo($permission);
}
}
return $role;
@ -111,7 +114,7 @@ class RoleController extends Controller
$role = Role::findOrFail($id);
$request->validate([
'name' => 'nullable|string|max:191',
'name' => 'required|string|max:191',
'color' => [
'required',
'regex:/^#([a-f0-9]{6}|[a-f0-9]{3})$/i'
@ -120,11 +123,13 @@ class RoleController extends Controller
]);
if ($request->permissions) {
$role->givePermissionTo($request->permissions);
$permissions = explode(",",$request->permissions);
$role->syncPermissions($permissions);
}
$role->update($request->all());
//TODO PERMISSIONS?
$role->update($request->except('permissions'));
return $role;
}

View file

@ -104,7 +104,10 @@ class UserController extends Controller
'pterodactyl_error_status' => $response->toException()->getCode(),
]);
}
$user->update($request->all());
if($request->has("role")){
$user->syncRoles($request->role);
}
$user->update($request->except('role'));
return $user;
}

View file

@ -1,6 +1,7 @@
<?php
use App\Http\Controllers\Api\NotificationController;
use App\Http\Controllers\Api\RoleController;
use App\Http\Controllers\Api\ServerController;
use App\Http\Controllers\Api\UserController;
use App\Http\Controllers\Api\VoucherController;
@ -31,6 +32,8 @@ Route::middleware('api.token')->group(function () {
// Route::get('/vouchers/{voucher}/users' , [VoucherController::class , 'users']);
Route::resource('vouchers', VoucherController::class)->except('create', 'edit');
Route::resource('roles', RoleController::class);
Route::get('/notifications/{user}', [NotificationController::class, 'index']);
Route::get('/notifications/{user}/{notification}', [NotificationController::class, 'view']);
Route::post('/notifications', [NotificationController::class, 'send']);