File "AddOrderPaymentRequest.php"
Full Path: /home/clickysoft/public_html/jmapi5.clickysoft.net/app/Http/Requests/User/AddOrderPaymentRequest.php
File size: 1.61 KB
MIME-type: text/x-php
Charset: utf-8
<?php
namespace App\Http\Requests\User;
use App\Models\Order;
use Illuminate\Foundation\Http\FormRequest;
class AddOrderPaymentRequest extends FormRequest
{
public function rules()
{
$order = Order::find(request()->route('order')->id);
if ($order->payment_status == 'Paid'){
$rules['payment_status'] = [
'required',
];
} else {
if ($this->input('vault_id')) {
$rules['vault_id'] = [
'exclude_if:payment_type,Purchase Order',
'gt:0',
];
} else if($this->input('card_number') && $this->input('expiry_year') && $this->input('expiry_month') && $this->input('ccv')) {
$rules['card_number'] = [
'required',
];
$rules['expiry_year'] = [
'date_format:Y',
];
$rules['expiry_month'] = [
'date_format:m',
];
$rules['ccv'] = [
'integer',
];
$rules['save_card'] = [
'boolean',
'nullable',
];
} else {
$rules['payment_method'] = [
'required',
];
}
}
return $rules;
}
public function messages(): array
{
return [
'payment_method.required' => 'Credit card details or vault id needed.',
'payment_status.required' => 'This order has already been paid',
];
}
}