2020-08-27 14:12:39 +02:00
|
|
|
<?php
|
|
|
|
|
|
|
|
namespace App\Http\Requests\ClientPortal\Payments;
|
|
|
|
|
|
|
|
use App\Models\PaymentHash;
|
|
|
|
use Illuminate\Foundation\Http\FormRequest;
|
|
|
|
|
|
|
|
class PaymentResponseRequest 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()
|
|
|
|
{
|
|
|
|
return [
|
|
|
|
'company_gateway_id' => 'required',
|
|
|
|
'payment_hash' => 'required',
|
|
|
|
];
|
|
|
|
}
|
|
|
|
|
|
|
|
public function getPaymentHash()
|
|
|
|
{
|
|
|
|
$input = $this->all();
|
|
|
|
|
2022-02-26 08:48:22 +01:00
|
|
|
return PaymentHash::where('hash', $input['payment_hash'])->first();
|
2020-08-27 14:12:39 +02:00
|
|
|
}
|
2020-11-01 15:08:47 +01:00
|
|
|
|
2021-07-30 14:36:14 +02:00
|
|
|
public function shouldStoreToken(): bool
|
|
|
|
{
|
|
|
|
return (bool) $this->store_card;
|
|
|
|
}
|
|
|
|
|
2020-11-01 15:08:47 +01:00
|
|
|
public function prepareForValidation()
|
|
|
|
{
|
2020-11-01 15:56:17 +01:00
|
|
|
if ($this->has('store_card')) {
|
|
|
|
$this->merge([
|
2022-06-21 11:57:17 +02:00
|
|
|
'store_card' => ($this->store_card === 'true' || $this->store_card === true) ? true : false,
|
2020-11-01 15:56:17 +01:00
|
|
|
]);
|
2020-11-01 15:08:47 +01:00
|
|
|
}
|
|
|
|
|
2020-11-01 15:56:17 +01:00
|
|
|
if ($this->has('pay_with_token')) {
|
|
|
|
$this->merge([
|
2022-06-21 11:57:17 +02:00
|
|
|
'pay_with_token' => ($this->pay_with_token === 'true' || $this->pay_with_token === true) ? true : false,
|
2020-11-01 15:56:17 +01:00
|
|
|
]);
|
|
|
|
}
|
2023-12-07 03:59:36 +01:00
|
|
|
|
|
|
|
if($this->has('payment_method_id')) {
|
|
|
|
|
|
|
|
$this->merge([
|
|
|
|
'payment_method_id' => preg_replace('~\D~', '', $this->payment_method_id),
|
|
|
|
]);
|
|
|
|
|
|
|
|
}
|
2020-11-01 15:08:47 +01:00
|
|
|
}
|
2021-08-19 13:34:18 +02:00
|
|
|
|
|
|
|
public function shouldUseToken(): bool
|
|
|
|
{
|
|
|
|
return (bool) $this->token;
|
|
|
|
}
|
2023-12-07 03:59:36 +01:00
|
|
|
}
|