Create New Item
Item Type
File
Folder
Item Name
Search file in folder and subfolders...
Are you sure want to rename?
peripherad
/
app
/
Http
/
Requests
/
User
:
UpdateOrderRequest.php
Advanced Search
Upload
New Item
Settings
Back
Back Up
Advanced Editor
Save
<?php namespace App\Http\Requests\User; use App\Models\Order; use App\Rules\ValidateImage; use App\Rules\ValidateRange; use Illuminate\Foundation\Http\FormRequest; class UpdateOrderRequest extends FormRequest { public function rules() { return [ 'rush_order' => [ 'nullable', 'in:'. implode(',', Order::RUSH_ORDER_RADIO), ], 'delivery_date' => [ 'required', 'date', ], 'event_date' => [ 'required', 'date', 'after_or_equal:delivery_date', ], 'delivery_type' => [ 'required', 'in:'. implode(',', Order::DELIVERY_TYPE), ], 'description' => [ 'nullable', 'string', ], 'shipping_address_id' => [ 'exclude_if:delivery_type,Pickup', 'required_if:delivery_type,Shipping', 'integer', 'exists:address_books,id', ], 'billing_address_id' => [ 'exclude_if:delivery_type,Pickup', 'required_if:delivery_type,Shipping', 'integer', 'exists:address_books,id', ], 'pickup_location_id' => [ 'exclude_if:delivery_type,Shipping', 'required_if:delivery_type,Pickup', 'integer', 'exists:store_locations,id', ], 'products' => [ 'required', 'array', ], 'products.*.product_id' => [ 'required', 'integer', 'exists:products,id', ], 'products.*.price_id' => [ 'required', 'integer', 'exists:product_prices,id', ], 'products.*.quantity' => [ 'required', 'integer', 'min:1', new ValidateRange, ], 'products.*.customization' => [ 'nullable', 'json', ], 'products.*.template' => [ 'nullable', 'mimes:pdf,application/pdf', 'max:5120', ], 'products.*.image' => [ 'nullable', new ValidateImage, ], ]; } public function messages() { return [ 'products.*.product_id.required' => 'Product id for product #:position is required.', 'products.*.product_id.integer' => 'Product id for product #:position must be an integer.', 'products.*.product_id.exists' => 'Product id for product #:position is invalid.', 'products.*.price_id.required' => 'Price id for product #:position is required.', 'products.*.price_id.integer' => 'Price id for product #:position must be an integer.', 'products.*.price_id.exists' => 'Price id for product #:position is invalid.', 'products.*.quantity.required' => 'Quantity for product #:position is required.', 'products.*.quantity.integer' => 'Quantity for product #:position must be an integer.', 'products.*.quantity.min' => 'Quantity for product #:position must be greater than 0.', 'products.*.customization.json' => 'Customization for product #:position must be json.', 'products.*.template.mimes' => 'Template for product #:position must be of type pdf.', 'products.*.template.max' => 'Template size for product #:position can not exceed 5MB.', 'products.*.image.mimes' => 'Image for product #:position must be of type jpg, jpeg, png.', 'products.*.image.max' => 'Image size for product #:position can not exceed 5MB.', 'rush_order.in' => ':attribute can only be '. implode(',', Order::RUSH_ORDER_RADIO), ]; } }