<?php

namespace App\Http\Requests\Admin;

use Illuminate\Foundation\Http\FormRequest;

class ContractSectionUpdateRequest extends FormRequest
{
    public function authorize(): bool
    {
        return true;
    }

    public function rules(): array
    {
        return [
            'title' => 'required|string|max:255',
            'content' => 'required|string',
            'rules' => 'nullable|array',
            'rules.*' => 'nullable|string',
            'order' => 'required|integer|min:1',
            'omit_rules' => 'nullable|boolean',
        ];
    }

    public function messages(): array
    {
        return [
            'title.required' => 'El título es obligatorio.',
            'title.string' => 'El título debe ser un texto válido.',
            'title.max' => 'El título no debe exceder los 255 caracteres.',

            'content.required' => 'El contenido es obligatorio.',
            'content.string' => 'El contenido debe ser un texto válido.',

            'order.required' => 'El campo orden es obligatorio.',
            'order.integer' => 'El campo orden debe ser un número entero.',
            'order.min' => 'El campo orden debe ser al menos 1.',

            'rules.array' => 'Las reglas deben enviarse como un arreglo.',
            'rules.*.string' => 'Cada regla debe ser un texto válido.',

            'omit_rules.boolean' => 'El campo omitir reglas debe ser verdadero o falso.',
        ];
    }
}