Files
ppeasy_vg12/app/Http/Controllers/Web/Authorization/RolePermissionsController.php
T
2026-10-09 08:21:06 +02:00

33 lines
907 B
PHP

<?php
namespace App\Http\Controllers\Web\Authorization;
use App\Events\Role\PermissionsUpdated;
use App\Http\Controllers\Controller;
use App\Repositories\Role\RoleRepository;
use Illuminate\Http\RedirectResponse;
use Illuminate\Http\Request;
use Illuminate\Support\Arr;
class RolePermissionsController extends Controller
{
public function __construct(private readonly RoleRepository $roles) {}
public function update(Request $request): RedirectResponse
{
$roles = $request->get('roles');
$allRoles = $this->roles->lists('id');
foreach ($allRoles as $roleId) {
$permissions = Arr::get($roles, $roleId, []);
$this->roles->updatePermissions($roleId, $permissions);
}
event(new PermissionsUpdated);
return redirect()->route('permissions.index')
->withSuccess(__('Permissions saved successfully.'));
}
}