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); $this->validateTransactionArray($validator);
// must submit at least one transaction. // must submit at least one transaction.
Log::debug('Now going to validateOneTransaction');
$this->validateOneTransaction($validator); $this->validateOneTransaction($validator);
Log::debug('Now done with validateOneTransaction');
// all journals must have a description // all journals must have a description
$this->validateDescriptions($validator); $this->validateDescriptions($validator);

View File

@ -30,8 +30,8 @@ use FireflyIII\Models\TransactionGroup;
use FireflyIII\Models\TransactionJournal; use FireflyIII\Models\TransactionJournal;
use FireflyIII\Models\TransactionType; use FireflyIII\Models\TransactionType;
use FireflyIII\Repositories\Account\AccountRepositoryInterface; use FireflyIII\Repositories\Account\AccountRepositoryInterface;
use Illuminate\Validation\Validator;
use Illuminate\Support\Facades\Log; use Illuminate\Support\Facades\Log;
use Illuminate\Validation\Validator;
/** /**
* Trait TransactionValidation * Trait TransactionValidation
@ -74,17 +74,19 @@ trait TransactionValidation
*/ */
protected function getTransactionsArray(Validator $validator): array protected function getTransactionsArray(Validator $validator): array
{ {
Log::debug('Now in getTransactionsArray');
$data = $validator->getData(); $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)) { if (!is_countable($transactions)) {
Log::error(sprintf('Transactions array is not countable, because its a %s', gettype($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 []; return [];
} }
@ -489,10 +491,11 @@ trait TransactionValidation
*/ */
public function validateOneTransaction(Validator $validator): void public function validateOneTransaction(Validator $validator): void
{ {
Log::debug('Now in validateOneTransaction');
if ($validator->errors()->count() > 0) { if ($validator->errors()->count() > 0) {
Log::debug('Validator already has errors, so return.');
return; return;
} }
Log::debug('Now in validateOneTransaction()');
$transactions = $this->getTransactionsArray($validator); $transactions = $this->getTransactionsArray($validator);
// need at least one transaction // need at least one transaction
if (0 === count($transactions)) { if (0 === count($transactions)) {