fix unittests issues
API CI/CD / Validate (composer + pint) (push) Successful in 3m6s
API CI/CD / Test (PHPUnit) (push) Failing after 4m53s
API CI/CD / Build frontend assets (push) Successful in 1m2s
API CI/CD / Security audit (push) Failing after 59s
API CI/CD / Deploy to shared hosting (PHP) (push) Has been skipped
API CI/CD / Validate (composer + pint) (push) Successful in 3m6s
API CI/CD / Test (PHPUnit) (push) Failing after 4m53s
API CI/CD / Build frontend assets (push) Successful in 1m2s
API CI/CD / Security audit (push) Failing after 59s
API CI/CD / Deploy to shared hosting (PHP) (push) Has been skipped
This commit is contained in:
@@ -245,8 +245,23 @@ class RolePermissionController extends BaseApiController
|
||||
|
||||
public function updateRolePermissions(RolePermissionUpdateRequest $request, int $roleId): JsonResponse
|
||||
{
|
||||
$payload = $request->validated();
|
||||
$permissions = $payload['permissions'] ?? null;
|
||||
if ($permissions === null && isset($payload['permission_ids'])) {
|
||||
$permissions = [];
|
||||
foreach ((array) $payload['permission_ids'] as $permissionId) {
|
||||
$permissions[(int) $permissionId] = [
|
||||
'create' => true,
|
||||
'read' => true,
|
||||
'update' => true,
|
||||
'delete' => true,
|
||||
'manage' => true,
|
||||
];
|
||||
}
|
||||
}
|
||||
|
||||
try {
|
||||
$this->permissionService->saveRolePermissions($roleId, $request->validated()['permissions'] ?? []);
|
||||
$this->permissionService->saveRolePermissions($roleId, $permissions ?? []);
|
||||
} catch (\Throwable $e) {
|
||||
Log::error('Role permissions update failed: '.$e->getMessage());
|
||||
|
||||
|
||||
@@ -91,7 +91,7 @@ class PreferencesController extends BaseApiController
|
||||
|
||||
return $this->success([
|
||||
'preferences' => new PreferencesResource($payload['preferences']),
|
||||
], 'Preferences saved.', $saved->wasRecentlyCreated ? Response::HTTP_CREATED : Response::HTTP_OK);
|
||||
], 'Preferences saved.');
|
||||
}
|
||||
|
||||
public function updateForUser(PreferencesUpsertRequest $request, int $userId): JsonResponse
|
||||
@@ -113,18 +113,18 @@ class PreferencesController extends BaseApiController
|
||||
|
||||
return $this->success([
|
||||
'preferences' => new PreferencesResource($payload['preferences']),
|
||||
], 'Preferences saved.', $saved->wasRecentlyCreated ? Response::HTTP_CREATED : Response::HTTP_OK);
|
||||
], 'Preferences saved.');
|
||||
}
|
||||
|
||||
public function destroy(int $userId): JsonResponse
|
||||
{
|
||||
$row = Preferences::query()->where('user_id', $userId)->first();
|
||||
$this->authorize('delete', $row ?? new Preferences(['user_id' => $userId]));
|
||||
|
||||
if (! $row) {
|
||||
return $this->error('Preferences not found.', Response::HTTP_NOT_FOUND);
|
||||
}
|
||||
|
||||
$this->authorize('delete', $row);
|
||||
|
||||
try {
|
||||
$deleted = $this->commandService->delete($row);
|
||||
} catch (\Throwable $e) {
|
||||
|
||||
@@ -79,7 +79,15 @@ class NavBuilderController extends BaseApiController
|
||||
$this->authorize('manage', NavItem::class);
|
||||
|
||||
try {
|
||||
$this->builderService->reorder($request->validated()['orders']);
|
||||
$payload = $request->validated();
|
||||
$orders = $payload['orders'] ?? [];
|
||||
if ($orders === [] && isset($payload['items'])) {
|
||||
foreach ((array) $payload['items'] as $item) {
|
||||
$orders[(int) $item['id']] = (int) $item['sort_order'];
|
||||
}
|
||||
}
|
||||
|
||||
$this->builderService->reorder($orders);
|
||||
} catch (\Throwable $e) {
|
||||
Log::error('Nav reorder failed: '.$e->getMessage());
|
||||
|
||||
|
||||
Reference in New Issue
Block a user