<?php
return [
    'attributes' => [
      //* Basic Data
        // Of Creation
        'fe_reserva' => 'Registration Date',
        'receptionist_id' => 'User',

        // Of Registration
        'client_id' => 'Client',
        'client_reference' => 'Client Name',
        'fe_in' => 'Check-in Date',
        'ho_in' => 'Check-in Time',
        'fe_out' => 'Check-out Date',
        'ho_out' => 'Check-out Time',
        'reserva_noches' => 'Number of Nights',
        'reserva_horas' => 'Number of Hours',
        'reserva_adultos' => 'Number of Adults',
        'reserva_ninos' => 'Number of Children',
        'comentarios' => 'Notes',

        // Of Stay
        'room_id' => 'Room',
        'typeroom_id' => 'Room Type',
        'regimen_id' => 'Regimen',

        // Of Contact
        'agencia_id' => 'Agency',
        'fuentes_id' => 'Booking Source',

        // Of Payment
        'discount' => 'Discount (%)',
        'precio_original_sugerido' => 'Base Suggested Price',
        'precio_sugerido' => 'Suggested Price',
        'precio_final' => 'Final Price',
        'total' => 'Total',
        'lodgingContract' => 'Lodging Contract',

      //* Control Data
        'hidden_id' => 'Folio',
        'estatus_id' => 'Confirmation Status',
        'guest_estatus_id' => 'Progress Status',
    ],

    'messages' => [
      //* Basic Data
        // Of Creation
        'fe_reserva' => [
            'required' => 'The :attribute is required.',
            'date'     => 'The :attribute is not a valid date.',
        ],
        'receptionist_id' => [
            'required' => 'It is required to indicate the :attribute performing the action.',
            'exists'   => 'The selected :attribute does not exist.',
        ],

        // Of Registration
        'client_id' => [
            'exists' => 'The referenced :attribute does not exist.',
        ],
        'client_reference' => [
            'required' => 'The :attribute is required.',
            'max'      => 'The :attribute may not be greater than :max characters.',
        ],
        'fe_in' => [
            'required' => 'The :attribute is required.',
            'date'     => 'The :attribute is not a valid date.',
        ],
        'ho_in' => [
            'required' => 'The :attribute is required.',
            'regex'    => 'The :attribute must be in the format HH:mm or HH:mm:ss.',
        ],
        'fe_out' => [
            'required' => 'The :attribute is required.',
            'date'     => 'The :attribute is not a valid date.',
            'after'    => 'The :attribute must be after :date.',
        ],
        'ho_out' => [
            'required' => 'The :attribute is required.',
            'regex'    => 'The :attribute must be in the format HH:mm or HH:mm:ss.',
        ],
        'reserva_noches' => [
            'required' => 'The :attribute is required.',
            'integer'  => 'The :attribute must be an integer.',
            'min'      => 'The :attribute must be at least :min.',
        ],
        'reserva_horas' => [
            'required' => 'The :attribute is required.',
            'integer'  => 'The :attribute must be an integer.',
            'min'      => 'The :attribute must be at least :min.',
        ],
        'reserva_adultos' => [
            'required' => 'The :attribute is required.',
            'integer'  => 'The :attribute must be an integer.',
            'min'      => 'The :attribute must be at least :min.',
        ],
        'reserva_ninos' => [
            'required' => 'The :attribute is required.',
            'integer'  => 'The :attribute must be an integer.',
            'min'      => 'The :attribute must be at least :min.',
        ],
        'comentarios' => [
            'max' => 'The :attribute may not be greater than :max characters.',
        ],

        // Of Stay
        'room_id' => [
            'required' => 'The :attribute is required.',
            'exists'   => 'The selected :attribute does not exist.',
        ],
        'typeroom_id' => [
            'required' => 'The :attribute is required.',
            'exists'   => 'The selected :attribute does not exist.',
        ],
        'regimen_id' => [
            'required' => 'The :attribute is required.',
            'exists'   => 'The selected :attribute does not exist.',
        ],

        // Of Contact
        'agencia_id' => [
            'required' => 'The :attribute is required.',
            'exists'   => 'The selected :attribute does not exist.',
        ],
        'fuentes_id' => [
            'required' => 'The :attribute is required.',
            'exists'   => 'The selected :attribute does not exist.',
        ],

        // Of Payment
        'discount' => [
            'required' => 'The :attribute is required.',
            'numeric'  => 'The :attribute must be a valid percentage.',
            'min'      => 'The :attribute must be at least :min%.',
            'max'      => 'The :attribute may not be greater than :max%.',
        ],
        'precio_original_sugerido' => [
            'required' => 'The :attribute is required.',
            'numeric'  => 'The :attribute must be a valid monetary amount.',
            'min'      => 'The :attribute must be at least :min.',
        ],
        'precio_sugerido' => [
            'required' => 'The :attribute is required.',
            'numeric'  => 'The :attribute must be a valid monetary amount.',
            'min'      => 'The :attribute must be at least :min.',
        ],
        'precio_final' => [
            'required' => 'The :attribute is required.',
            'numeric'  => 'The :attribute must be a valid monetary amount.',
            'min'      => 'The :attribute must be at least :min.',
        ],
        'total' => [
            'required' => 'The :attribute is required.',
            'numeric'  => 'The :attribute must be a valid monetary amount.',
            'min'      => 'The :attribute must be at least :min.',
        ],
        'lodgingContract' => [
            'required' => 'The :attribute is required.',
            'in'       => 'The :attribute must be one of: :values.',
        ],

      //* Control Data
        'hidden_id' => [
            'exists' => 'No reservation was found with the provided :attribute.',
        ],
        'estatus_id' => [
            'required' => 'The :attribute is required.',
            'exists'   => 'The selected :attribute is invalid.',
        ],
        'guest_estatus_id' => [
            'required' => 'The :attribute is required.',
            'exists'   => 'The selected :attribute is invalid.',
        ],
    ],
];
