HEX
Server: Microsoft-IIS/8.5
System: Windows NT YDAWBH120 6.3 build 9600 (Windows Server 2012 R2 Standard Edition) AMD64
User: tentjecom_web (0)
PHP: 7.4.14
Disabled: NONE
Upload Files
File: D:/HostingSpaces/SBogers10/slenders.komma.pro/app/Komma/Shop/Checkout/CheckoutRequest.php
<?php

namespace App\Komma\Shop\Checkout;

use Illuminate\Foundation\Http\FormRequest;

/**
 * Class CheckoutRequest
 *
 * Validates a checkout request.
 *
 * @package App\Komma\Shop\Checkout
 */
class CheckoutRequest extends FormRequest
{
    /**
     * Determine if the user is authorized to make this request.
     *
     * @return bool
     */
    public function authorize()
    {
        return true;
    }

    /**
     * Get the validation rules that apply to the request.
     *
     * @return array
     */
    public function rules()
    {
        if(\Input::has('add_coupon') || \Input::has('delete_coupon')) { //Coupon code add or delete button pressed. No need to validate the other fields since these actions redirect us back to the same form.
            return [];
        } else {
            return [
                'terms_and_conditions' => 'required|accepted',
                'invoice_address' => 'required|integer', //When it is -1, it means a new address must be entered
                'invoice_street' => 'required_if:invoice_address,-1|string|min:3',
                'invoice_house_number' => 'required_if:invoice_address,-1|string|min:1',
                'invoice_postal_code' => 'required_if:invoice_address,-1|string|min:4',
                'invoice_city' => 'required_if:invoice_address,-1|string|min:2',
                'invoice_phone' => 'required_if:invoice_address,-1|string|min:2',
                'invoice_country' => 'required_if:invoice_address,-1|string|min:2',
                'shipping_address' => 'required|integer', //When it is -1, it means a new address must be entered
                'shipping_street' => 'required_if:shipping_address,-1|string|min:3',
                'shipping_house_number' => 'required_if:shipping_address,-1|string|min:1',
                'shipping_postal_code' => 'required_if:shipping_address,-1|string|min:4',
                'shipping_city' => 'required_if:shipping_address,-1|string|min:2',
                'shipping_phone' => 'required_if:shipping_address,-1|string|min:2',
                'shipping_country' => 'required_if:shipping_address,-1|string|min:2',
            ];
        }
    }
    
    

    /**
     * Get custom messages for validator error
     *
     * @return array
     */
    public function messages()
    {
        $messages = [
            'terms_and_conditions.accepted'             =>         __('shop/checkout.validation.terms_and_conditions.accepted'),
        ];

        foreach(['shipping', 'invoice'] as $type) {
            foreach ([$type.'_street', $type.'_house_number', $type.'_postal_code', $type.'_city', $type.'_phone', $type.'_country'] as $attribute) {
                $messages[$attribute.'.required_if'] = __('shop/checkout.validation.required_if', ['attribute' => __('validation.attributes.'.$attribute)]);
            }
        }

        return $messages;
    }
}