1
0
mirror of https://github.com/invoiceninja/invoiceninja.git synced 2024-11-14 07:02:34 +01:00
invoiceninja/app/Http/Requests/ClientPortal/Payments/PaymentResponseRequest.php

72 lines
1.6 KiB
PHP
Raw Normal View History

<?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-11-01 15:08:47 +01:00
public function shouldStoreToken(): bool
{
return (bool) $this->store_card;
}
2020-11-01 15:08:47 +01:00
public function prepareForValidation()
{
if ($this->has('store_card')) {
$this->merge([
'store_card' => ($this->store_card === 'true' || $this->store_card === true) ? true : false,
]);
2020-11-01 15:08:47 +01:00
}
if ($this->has('pay_with_token')) {
$this->merge([
'pay_with_token' => ($this->pay_with_token === 'true' || $this->pay_with_token === true) ? true : false,
]);
}
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
}
public function shouldUseToken(): bool
{
return (bool) $this->token;
}
2023-12-07 03:59:36 +01:00
}