2022-08-05 11:05:59 +02:00
|
|
|
<?php
|
|
|
|
/**
|
|
|
|
* Invoice Ninja (https://invoiceninja.com).
|
|
|
|
*
|
|
|
|
* @link https://github.com/invoiceninja/invoiceninja source repository
|
|
|
|
*
|
2024-04-12 06:15:41 +02:00
|
|
|
* @copyright Copyright (c) 2024. Invoice Ninja LLC (https://invoiceninja.com)
|
2022-08-05 11:05:59 +02:00
|
|
|
*
|
|
|
|
* @license https://www.elastic.co/licensing/elastic-license
|
|
|
|
*/
|
|
|
|
|
|
|
|
namespace App\Http\Requests\BankIntegration;
|
|
|
|
|
|
|
|
use App\Http\Requests\Request;
|
|
|
|
use App\Models\BankIntegration;
|
|
|
|
use App\Utils\Traits\MakesHash;
|
|
|
|
|
|
|
|
class StoreBankIntegrationRequest extends Request
|
|
|
|
{
|
|
|
|
use MakesHash;
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Determine if the user is authorized to make this request.
|
|
|
|
*
|
|
|
|
* @return bool
|
|
|
|
*/
|
2024-01-14 05:05:00 +01:00
|
|
|
public function authorize(): bool
|
2022-08-05 11:05:59 +02:00
|
|
|
{
|
|
|
|
return auth()->user()->can('create', BankIntegration::class);
|
|
|
|
}
|
|
|
|
|
|
|
|
public function rules()
|
|
|
|
{
|
2022-10-24 00:07:55 +02:00
|
|
|
$rules = [
|
2022-11-08 11:48:29 +01:00
|
|
|
'bank_account_name' => 'required|min:3',
|
|
|
|
'auto_sync' => 'sometimes|bool'
|
2022-10-24 00:07:55 +02:00
|
|
|
];
|
2022-08-05 11:05:59 +02:00
|
|
|
|
|
|
|
return $rules;
|
|
|
|
}
|
|
|
|
|
|
|
|
public function prepareForValidation()
|
|
|
|
{
|
|
|
|
$input = $this->all();
|
|
|
|
|
2023-02-16 02:36:09 +01:00
|
|
|
if ((!array_key_exists('provider_name', $input) || strlen($input['provider_name']) == 0) && array_key_exists('bank_account_name', $input)) {
|
2022-10-24 00:07:55 +02:00
|
|
|
$input['provider_name'] = $input['bank_account_name'];
|
2023-02-16 02:36:09 +01:00
|
|
|
}
|
2022-10-24 00:07:55 +02:00
|
|
|
|
2022-08-05 11:05:59 +02:00
|
|
|
$this->replace($input);
|
|
|
|
}
|
|
|
|
|
|
|
|
public function messages()
|
|
|
|
{
|
|
|
|
return [];
|
|
|
|
}
|
|
|
|
}
|