first commit
Some checks failed
Build / run (push) Has been cancelled

This commit is contained in:
maher
2025-10-29 11:42:25 +01:00
commit 703f50a09d
4595 changed files with 385164 additions and 0 deletions

View File

@@ -0,0 +1,28 @@
<?php
namespace Common\Auth\Actions;
use App\Models\User;
use Common\Auth\Permissions\Traits\SyncsPermissions;
use Illuminate\Support\Arr;
class UpdateUser
{
use SyncsPermissions;
public function execute(User $user, array $params): User
{
$user->fill(Arr::except($params, ['roles', 'permissions']))->save();
// make sure roles and permission are not removed
// if they are not specified at all in params
if (array_key_exists('roles', $params)) {
$user->roles()->sync($params['roles']);
}
if (array_key_exists('permissions', $params)) {
$this->syncPermissions($user, Arr::get($params, 'permissions'));
}
return $user->load(['roles', 'permissions']);
}
}