Add some debug info to transaction counter.

This commit is contained in:
James Cole 2023-04-15 07:17:48 +02:00
parent abf9c65b21
commit aebb677c21
No known key found for this signature in database
GPG Key ID: B49A324B7EAD6D80
2 changed files with 15 additions and 10 deletions

View File

@ -270,7 +270,9 @@ class StoreRequest extends FormRequest
$this->validateTransactionArray($validator);
// must submit at least one transaction.
Log::debug('Now going to validateOneTransaction');
$this->validateOneTransaction($validator);
Log::debug('Now done with validateOneTransaction');
// all journals must have a description
$this->validateDescriptions($validator);

View File

@ -30,8 +30,8 @@ use FireflyIII\Models\TransactionGroup;
use FireflyIII\Models\TransactionJournal;
use FireflyIII\Models\TransactionType;
use FireflyIII\Repositories\Account\AccountRepositoryInterface;
use Illuminate\Validation\Validator;
use Illuminate\Support\Facades\Log;
use Illuminate\Validation\Validator;
/**
* Trait TransactionValidation
@ -74,17 +74,19 @@ trait TransactionValidation
*/
protected function getTransactionsArray(Validator $validator): array
{
Log::debug('Now in getTransactionsArray');
$data = $validator->getData();
$transactions = $data['transactions'] ?? [];
$transactions = [];
if (is_array($data) && array_key_exists('transactions', $data) && is_array($data['transactions'])) {
Log::debug('Transactions key exists and is array.');
$transactions = $data['transactions'];
}
if (is_array($data) && array_key_exists('transactions', $data) && !is_array($data['transactions'])) {
Log::debug(sprintf('Transactions key exists but is NOT array, its a %s', gettype($data['transactions'])));
}
// should be impossible to hit this:
if (!is_countable($transactions)) {
Log::error(sprintf('Transactions array is not countable, because its a %s', gettype($transactions)));
return [];
}
// a superfluous check but you never know.
if (!is_array($transactions)) {
Log::error(sprintf('Transactions array is not an array, because its a %s', gettype($transactions)));
return [];
}
@ -489,10 +491,11 @@ trait TransactionValidation
*/
public function validateOneTransaction(Validator $validator): void
{
Log::debug('Now in validateOneTransaction');
if ($validator->errors()->count() > 0) {
Log::debug('Validator already has errors, so return.');
return;
}
Log::debug('Now in validateOneTransaction()');
$transactions = $this->getTransactionsArray($validator);
// need at least one transaction
if (0 === count($transactions)) {