<?php

namespace App\Http\Requests;

use Illuminate\Foundation\Http\FormRequest;

class StoreBookingRequest 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()
    {
        $rules = [];

        if($this->input('drive1')=='1'){
            $rules = array_merge($rules,['gear1' => 'required']);
            $rules = array_merge($rules,['date1' => 'required|date_format:d/m/Y']);
            $rules = array_merge($rules,['starttime1' => 'required']);
            $rules = array_merge($rules,['hour1' => 'required']);
            $rules = array_merge($rules,['vehicle1' => 'required']);
        }
        if($this->input('drive2')=='1'){
            $rules = array_merge($rules,['gear2' => 'required']);
            $rules = array_merge($rules,['date2' => 'required|date_format:d/m/Y']);
            $rules = array_merge($rules,['starttime2' => 'required']);
            $rules = array_merge($rules,['hour2' => 'required']);
            $rules = array_merge($rules,['vehicle2' => 'required']);
        }
        if($this->input('drive3')=='1'){
            $rules = array_merge($rules,['gear3' => 'required']);
            $rules = array_merge($rules,['date3' => 'required|date_format:d/m/Y']);
            $rules = array_merge($rules,['starttime3' => 'required']);
            $rules = array_merge($rules,['hour3' => 'required']);
            $rules = array_merge($rules,['vehicle3' => 'required']);
        }
        if($this->input('drive4')=='1'){
            $rules = array_merge($rules,['gear4' => 'required']);
            $rules = array_merge($rules,['date4' => 'required|date_format:d/m/Y']);
            $rules = array_merge($rules,['starttime4' => 'required']);
            $rules = array_merge($rules,['hour4' => 'required']);
            $rules = array_merge($rules,['vehicle4' => 'required']);
        }
        if($this->input('drive5')=='1'){
            $rules = array_merge($rules,['gear5' => 'required']);
            $rules = array_merge($rules,['date5' => 'required|date_format:d/m/Y']);
            $rules = array_merge($rules,['starttime5' => 'required']);
            $rules = array_merge($rules,['hour5' => 'required']);
            $rules = array_merge($rules,['vehicle5' => 'required']);
        }
        return $rules;
    }

    public function messages()
    {
        $msg = [];
        if($this->input('drive1')=='1'){
            $msg = array_merge($msg,['gear1.required' => 'กรุณาเลือกเกียร์']);
            $msg = array_merge($msg,['date1.required' => 'กรุณาเลือกวันที่']);
            $msg = array_merge($msg,['date1.date_format:m/d/Y' => 'กรุณากรอกรูปแบบวันที่ให้ถูกต้อง']);
            $msg = array_merge($msg,['starttime1.required' => 'กรุณาเลือกเวลาเริ่ม']);
            $msg = array_merge($msg,['hour1.required' => 'กรุณาเลือกจำนวน ชม.']);
            $msg = array_merge($msg,['vehicle1.required' => 'กรุณาเลือกรถ']);
        }
        if($this->input('drive2')=='1'){
            $msg = array_merge($msg,['gear2.required' => 'กรุณาเลือกเกียร์']);
            $msg = array_merge($msg,['date2.required' => 'กรุณาเลือกวันที่']);
            $msg = array_merge($msg,['date2.date_format:m/d/Y' => 'กรุณากรอกรูปแบบวันที่ให้ถูกต้อง']);
            $msg = array_merge($msg,['starttime2.required' => 'กรุณาเลือกเวลาเริ่ม']);
            $msg = array_merge($msg,['hour2.required' => 'กรุณาเลือกจำนวน ชม.']);
            $msg = array_merge($msg,['vehicle2.required' => 'กรุณาเลือกรถ']);
        }
        if($this->input('drive3')=='1'){
            $msg = array_merge($msg,['gear3.required' => 'กรุณาเลือกเกียร์']);
            $msg = array_merge($msg,['date3.required' => 'กรุณาเลือกวันที่']);
            $msg = array_merge($msg,['date3.date_format:m/d/Y' => 'กรุณากรอกรูปแบบวันที่ให้ถูกต้อง']);
            $msg = array_merge($msg,['starttime3.required' => 'กรุณาเลือกเวลาเริ่ม']);
            $msg = array_merge($msg,['hour3.required' => 'กรุณาเลือกจำนวน ชม.']);
            $msg = array_merge($msg,['vehicle3.required' => 'กรุณาเลือกรถ']);
        }
        if($this->input('drive4')=='1'){
            $msg = array_merge($msg,['gear4.required' => 'กรุณาเลือกเกียร์']);
            $msg = array_merge($msg,['date4.required' => 'กรุณาเลือกวันที่']);
            $msg = array_merge($msg,['date4.date_format:m/d/Y' => 'กรุณากรอกรูปแบบวันที่ให้ถูกต้อง']);
            $msg = array_merge($msg,['starttime4.required' => 'กรุณาเลือกเวลาเริ่ม']);
            $msg = array_merge($msg,['hour4.required' => 'กรุณาเลือกจำนวน ชม.']);
            $msg = array_merge($msg,['vehicle4.required' => 'กรุณาเลือกรถ']);
        }
        if($this->input('drive5')=='1'){
            $msg = array_merge($msg,['gear5.required' => 'กรุณาเลือกเกียร์']);
            $msg = array_merge($msg,['date5.required' => 'กรุณาเลือกวันที่']);
            $msg = array_merge($msg,['date5.date_format:m/d/Y' => 'กรุณากรอกรูปแบบวันที่ให้ถูกต้อง']);
            $msg = array_merge($msg,['starttime5.required' => 'กรุณาเลือกเวลาเริ่ม']);
            $msg = array_merge($msg,['hour5.required' => 'กรุณาเลือกจำนวน ชม.']);
            $msg = array_merge($msg,['vehicle5.required' => 'กรุณาเลือกรถ']);
        }

        return $msg;
    }
}
