. */ declare(strict_types=1); namespace FireflyIII\Api\V1\Requests\Models\RuleGroup; use FireflyIII\Rules\IsBoolean; use FireflyIII\Support\Request\ChecksLogin; use FireflyIII\Support\Request\ConvertsDataTypes; use Illuminate\Foundation\Http\FormRequest; /** * Class StoreRequest */ class StoreRequest extends FormRequest { use ChecksLogin; use ConvertsDataTypes; protected array $acceptedRoles = []; /** * Get all data from the request. */ public function getAll(): array { $active = true; $order = 31_337; if (null !== $this->get('active')) { $active = $this->boolean('active'); } if (null !== $this->get('order')) { $order = $this->convertInteger('order'); } return [ 'title' => $this->convertString('title'), 'description' => $this->convertString('description'), 'active' => $active, 'order' => $order, ]; } /** * The rules that the incoming request must be matched against. */ public function rules(): array { return [ 'title' => ['required', 'min:1', 'max:100', 'uniqueObjectForUser:rule_groups,title'], 'description' => ['min:1', 'max:32768', 'nullable'], 'active' => [new IsBoolean()], ]; } }