ldc-boutique-cnc-sable/app/Http/Requests/Fo/UnsubscribeNewsletterRequest.php

34 lines
705 B
PHP
Raw Permalink Normal View History

2026-06-14 21:32:07 +02:00
<?php
declare(strict_types=1);
namespace App\Http\Requests\Fo;
use Illuminate\Foundation\Http\FormRequest;
use Ramsey\Uuid\Uuid;
use Shared\ValueObjects\CrmHashcode;
2026-06-14 21:32:07 +02:00
class UnsubscribeNewsletterRequest extends FormRequest
{
/** @return array<string,mixed> */
public function rules(): array
{
return [
'hashcode' => ['required', 'uuid'],
];
}
public function getHashcode(): ?CrmHashcode
2026-06-14 21:32:07 +02:00
{
$hashcode = null;
2026-06-14 21:32:07 +02:00
$this->string('hashcode')->whenIsUuid(
function (string $value) use (&$hashcode) {
$hashcode = new CrmHashcode(Uuid::fromString($value));
}
);
2026-06-14 21:32:07 +02:00
return $hashcode;
2026-06-14 21:32:07 +02:00
}
}