Added the ability to save user settings.

This commit is contained in:
2023-07-10 21:42:55 +06:00
parent b1c9dac3cc
commit 907bac5586
17 changed files with 278 additions and 8 deletions

View File

@@ -4,6 +4,7 @@ namespace App\Services\Private;
use App\Dto\Request\Private\Profile\Update;
use App\Dto\Request\Private\Profile\UpdatePassword;
use App\Dto\Request\Private\Profile\UpdateSettings;
use App\Models\User;
use App\ServiceResults\ServiceResultError;
use App\ServiceResults\ServiceResultSuccess;
@@ -40,4 +41,19 @@ final class ProfileService extends Service
}
return $this->ok(__('The password has been changed'));
}
public function updateSettings(UpdateSettings $update, User $user): ServiceResultError | ServiceResultSuccess
{
try {
$data = [
'lang' => $update->getLang(),
'timezone' => $update->getTimezone(),
];
$this->userCommandHandler->handleUpdate($user, $data);
} catch (\Throwable $e) {
report($e->getMessage());
return $this->errService($e->getMessage());
}
return $this->ok(__('The settings have been saved'));
}
}