filled('booking_id')) { $booking_id = $this->booking_id; } else { $booking_id = null; } return [ 'dates' => [ 'required', new IsRoomAvailableRule($this->room_id, $booking_id) ], 'nights' => 'required', 'guests' => 'required|numeric|min:1', 'customer_name' => 'required', 'customer_phone' => 'required', 'customer_email' => 'required|email:rfc,dns', 'payment_method' => 'required', ]; } /** * Get the validation messages that apply to the request. * * @return array */ public function messages() { return [ 'guests.min' => 'The guests must be at least 1 person.' ]; } }