From 037cd756582093218c098332a372f31895a7bac5 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 25 Jul 2022 03:00:48 +0000 Subject: [PATCH 01/12] Bump laravel/framework from 9.21.4 to 9.21.6 Bumps [laravel/framework](https://github.com/laravel/framework) from 9.21.4 to 9.21.6. - [Release notes](https://github.com/laravel/framework/releases) - [Changelog](https://github.com/laravel/framework/blob/9.x/CHANGELOG.md) - [Commits](https://github.com/laravel/framework/compare/v9.21.4...v9.21.6) --- updated-dependencies: - dependency-name: laravel/framework dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- composer.lock | 26 ++++++++++++-------------- 1 file changed, 12 insertions(+), 14 deletions(-) diff --git a/composer.lock b/composer.lock index f138397353..3bcf88c3b5 100644 --- a/composer.lock +++ b/composer.lock @@ -1854,16 +1854,16 @@ }, { "name": "laravel/framework", - "version": "v9.21.4", + "version": "v9.21.6", "source": { "type": "git", "url": "https://github.com/laravel/framework.git", - "reference": "7707d6a16c70da1561bf80964e89b1b94ca78a48" + "reference": "569d7a2e361895f90e66bb4e02db89c27691a0e7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/framework/zipball/7707d6a16c70da1561bf80964e89b1b94ca78a48", - "reference": "7707d6a16c70da1561bf80964e89b1b94ca78a48", + "url": "https://api.github.com/repos/laravel/framework/zipball/569d7a2e361895f90e66bb4e02db89c27691a0e7", + "reference": "569d7a2e361895f90e66bb4e02db89c27691a0e7", "shasum": "" }, "require": { @@ -2030,7 +2030,7 @@ "issues": "https://github.com/laravel/framework/issues", "source": "https://github.com/laravel/framework" }, - "time": "2022-07-21T13:30:12+00:00" + "time": "2022-07-22T14:16:44+00:00" }, { "name": "laravel/passport", @@ -3303,16 +3303,16 @@ }, { "name": "monolog/monolog", - "version": "2.7.0", + "version": "2.8.0", "source": { "type": "git", "url": "https://github.com/Seldaek/monolog.git", - "reference": "5579edf28aee1190a798bfa5be8bc16c563bd524" + "reference": "720488632c590286b88b80e62aa3d3d551ad4a50" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Seldaek/monolog/zipball/5579edf28aee1190a798bfa5be8bc16c563bd524", - "reference": "5579edf28aee1190a798bfa5be8bc16c563bd524", + "url": "https://api.github.com/repos/Seldaek/monolog/zipball/720488632c590286b88b80e62aa3d3d551ad4a50", + "reference": "720488632c590286b88b80e62aa3d3d551ad4a50", "shasum": "" }, "require": { @@ -3332,11 +3332,10 @@ "guzzlehttp/psr7": "^2.2", "mongodb/mongodb": "^1.8", "php-amqplib/php-amqplib": "~2.4 || ^3", - "php-console/php-console": "^3.1.3", "phpspec/prophecy": "^1.15", "phpstan/phpstan": "^0.12.91", "phpunit/phpunit": "^8.5.14", - "predis/predis": "^1.1", + "predis/predis": "^1.1 || ^2.0", "rollbar/rollbar": "^1.3 || ^2 || ^3", "ruflin/elastica": "^7", "swiftmailer/swiftmailer": "^5.3|^6.0", @@ -3356,7 +3355,6 @@ "graylog2/gelf-php": "Allow sending log messages to a GrayLog2 server", "mongodb/mongodb": "Allow sending log messages to a MongoDB server (via library)", "php-amqplib/php-amqplib": "Allow sending log messages to an AMQP server using php-amqplib", - "php-console/php-console": "Allow sending log messages to Google Chrome", "rollbar/rollbar": "Allow sending log messages to Rollbar", "ruflin/elastica": "Allow sending log messages to an Elastic Search server" }, @@ -3391,7 +3389,7 @@ ], "support": { "issues": "https://github.com/Seldaek/monolog/issues", - "source": "https://github.com/Seldaek/monolog/tree/2.7.0" + "source": "https://github.com/Seldaek/monolog/tree/2.8.0" }, "funding": [ { @@ -3403,7 +3401,7 @@ "type": "tidelift" } ], - "time": "2022-06-09T08:59:12+00:00" + "time": "2022-07-24T11:55:47+00:00" }, { "name": "nesbot/carbon", From f14c8a2ec2811dd0df0f5cfe3d99637c99d44f40 Mon Sep 17 00:00:00 2001 From: James Cole Date: Mon, 25 Jul 2022 05:44:41 +0200 Subject: [PATCH 02/12] Add some debug --- app/Http/Controllers/Transaction/ShowController.php | 3 +++ 1 file changed, 3 insertions(+) diff --git a/app/Http/Controllers/Transaction/ShowController.php b/app/Http/Controllers/Transaction/ShowController.php index ed1aee98fb..b804d67b9d 100644 --- a/app/Http/Controllers/Transaction/ShowController.php +++ b/app/Http/Controllers/Transaction/ShowController.php @@ -32,9 +32,11 @@ use FireflyIII\Transformers\TransactionGroupTransformer; use Illuminate\Contracts\View\Factory; use Illuminate\Http\JsonResponse; use Illuminate\Http\Request; +use Illuminate\Support\Facades\Log; use Illuminate\View\View; use Symfony\Component\HttpFoundation\ParameterBag; + /** * Class ShowController */ @@ -137,6 +139,7 @@ class ShowController extends Controller { $amounts = []; foreach ($group['transactions'] as $transaction) { + Log::debug(sprintf('Currency symbol is "%s"', $transaction['currency_symbol'])); $symbol = $transaction['currency_symbol']; if (!array_key_exists($symbol, $amounts)) { $amounts[$symbol] = [ From 7e98fac3b75fb8f2979137aaaf892253b4aa5205 Mon Sep 17 00:00:00 2001 From: James Cole Date: Mon, 25 Jul 2022 05:46:32 +0200 Subject: [PATCH 03/12] Better check on foreign currency. --- app/Http/Controllers/Transaction/ShowController.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/Http/Controllers/Transaction/ShowController.php b/app/Http/Controllers/Transaction/ShowController.php index b804d67b9d..a737890466 100644 --- a/app/Http/Controllers/Transaction/ShowController.php +++ b/app/Http/Controllers/Transaction/ShowController.php @@ -149,7 +149,7 @@ class ShowController extends Controller ]; } $amounts[$symbol]['amount'] = bcadd($amounts[$symbol]['amount'], $transaction['amount']); - if (null !== $transaction['foreign_amount']) { + if (null !== $transaction['foreign_amount'] && '' !== $transaction['foreign_amount']) { // same for foreign currency: $foreignSymbol = $transaction['foreign_currency_symbol']; if (!array_key_exists($foreignSymbol, $amounts)) { From fa72912349320db7bce83a20f90b28037b328823 Mon Sep 17 00:00:00 2001 From: James Cole Date: Mon, 25 Jul 2022 05:47:26 +0200 Subject: [PATCH 04/12] Add some debug to function --- app/Http/Controllers/Transaction/ShowController.php | 2 ++ 1 file changed, 2 insertions(+) diff --git a/app/Http/Controllers/Transaction/ShowController.php b/app/Http/Controllers/Transaction/ShowController.php index a737890466..52481f5562 100644 --- a/app/Http/Controllers/Transaction/ShowController.php +++ b/app/Http/Controllers/Transaction/ShowController.php @@ -101,6 +101,7 @@ class ShowController extends Controller $groupArray = $transformer->transformObject($transactionGroup); // do some calculations: + Log::debug('Now going to getAmounts()'); $amounts = $this->getAmounts($groupArray); $accounts = $this->getAccounts($groupArray); @@ -137,6 +138,7 @@ class ShowController extends Controller */ private function getAmounts(array $group): array { + Log::debug('Now in getAmounts()'); $amounts = []; foreach ($group['transactions'] as $transaction) { Log::debug(sprintf('Currency symbol is "%s"', $transaction['currency_symbol'])); From b03a36b87ff0008780303edddf1fdb91b8252b9a Mon Sep 17 00:00:00 2001 From: James Cole Date: Mon, 25 Jul 2022 05:48:59 +0200 Subject: [PATCH 05/12] Add some debug info --- app/Http/Controllers/Transaction/ShowController.php | 2 ++ 1 file changed, 2 insertions(+) diff --git a/app/Http/Controllers/Transaction/ShowController.php b/app/Http/Controllers/Transaction/ShowController.php index 52481f5562..4b4fdc0afd 100644 --- a/app/Http/Controllers/Transaction/ShowController.php +++ b/app/Http/Controllers/Transaction/ShowController.php @@ -154,6 +154,7 @@ class ShowController extends Controller if (null !== $transaction['foreign_amount'] && '' !== $transaction['foreign_amount']) { // same for foreign currency: $foreignSymbol = $transaction['foreign_currency_symbol']; + Log::debug(sprintf('Foreign currency symbol is "%s"', $foreignSymbol)); if (!array_key_exists($foreignSymbol, $amounts)) { $amounts[$foreignSymbol] = [ 'amount' => '0', @@ -164,6 +165,7 @@ class ShowController extends Controller $amounts[$foreignSymbol]['amount'] = bcadd($amounts[$foreignSymbol]['amount'], $transaction['foreign_amount']); } } + Log::debug('Result', $amounts); return $amounts; } From 38b505d036b08298b9114f0585ff0ab1eff93f89 Mon Sep 17 00:00:00 2001 From: James Cole Date: Mon, 25 Jul 2022 05:50:02 +0200 Subject: [PATCH 06/12] Skip empty foreign currency --- app/Http/Controllers/Transaction/ShowController.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/Http/Controllers/Transaction/ShowController.php b/app/Http/Controllers/Transaction/ShowController.php index 4b4fdc0afd..68cd2e8277 100644 --- a/app/Http/Controllers/Transaction/ShowController.php +++ b/app/Http/Controllers/Transaction/ShowController.php @@ -151,7 +151,7 @@ class ShowController extends Controller ]; } $amounts[$symbol]['amount'] = bcadd($amounts[$symbol]['amount'], $transaction['amount']); - if (null !== $transaction['foreign_amount'] && '' !== $transaction['foreign_amount']) { + if (null !== $transaction['foreign_amount'] && '' !== $transaction['foreign_amount'] && bccomp('0', $transaction['foreign_amount']) !== 0) { // same for foreign currency: $foreignSymbol = $transaction['foreign_currency_symbol']; Log::debug(sprintf('Foreign currency symbol is "%s"', $foreignSymbol)); From 2db32ce44f6c9a1ced3d7a8b45f5a6b038a09345 Mon Sep 17 00:00:00 2001 From: James Cole Date: Mon, 25 Jul 2022 05:51:59 +0200 Subject: [PATCH 07/12] Better transformer. --- app/Transformers/TransactionGroupTransformer.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/Transformers/TransactionGroupTransformer.php b/app/Transformers/TransactionGroupTransformer.php index 70c2814bb6..5942c10c11 100644 --- a/app/Transformers/TransactionGroupTransformer.php +++ b/app/Transformers/TransactionGroupTransformer.php @@ -119,7 +119,7 @@ class TransactionGroupTransformer extends AbstractTransformer $type = $this->stringFromArray($transaction, 'transaction_type_type', TransactionType::WITHDRAWAL); $amount = app('steam')->positive((string)($row['amount'] ?? '0')); $foreignAmount = null; - if (null !== $row['foreign_amount']) { + if (null !== $row['foreign_amount'] && '' !== $row['foreign_amount'] && bccomp('0', $row['foreign_amount']) !== 0) { $foreignAmount = app('steam')->positive($row['foreign_amount']); } From c50a4ae993c1b91e5b39aa22b41cbd5c4f198752 Mon Sep 17 00:00:00 2001 From: James Cole Date: Mon, 25 Jul 2022 05:52:51 +0200 Subject: [PATCH 08/12] Add debug --- app/Http/Controllers/Transaction/ShowController.php | 2 ++ 1 file changed, 2 insertions(+) diff --git a/app/Http/Controllers/Transaction/ShowController.php b/app/Http/Controllers/Transaction/ShowController.php index 68cd2e8277..a4af0ffc6b 100644 --- a/app/Http/Controllers/Transaction/ShowController.php +++ b/app/Http/Controllers/Transaction/ShowController.php @@ -113,6 +113,8 @@ class ShowController extends Controller $attachments = $this->repository->getAttachments($transactionGroup); $links = $this->repository->getLinks($transactionGroup); + Log::debug('Journal', $groupArray); + return view( 'transactions.show', compact( From 18f26338102857ff7e88ab7486835761426eb703 Mon Sep 17 00:00:00 2001 From: James Cole Date: Mon, 25 Jul 2022 05:54:40 +0200 Subject: [PATCH 09/12] Add debug --- app/Transformers/TransactionGroupTransformer.php | 1 + 1 file changed, 1 insertion(+) diff --git a/app/Transformers/TransactionGroupTransformer.php b/app/Transformers/TransactionGroupTransformer.php index 5942c10c11..ebc211c558 100644 --- a/app/Transformers/TransactionGroupTransformer.php +++ b/app/Transformers/TransactionGroupTransformer.php @@ -122,6 +122,7 @@ class TransactionGroupTransformer extends AbstractTransformer if (null !== $row['foreign_amount'] && '' !== $row['foreign_amount'] && bccomp('0', $row['foreign_amount']) !== 0) { $foreignAmount = app('steam')->positive($row['foreign_amount']); } + Log::debug(sprintf('Foreign amount is "%s', $foreignAmount)); $metaFieldData = $this->groupRepos->getMetaFields((int) $row['transaction_journal_id'], $this->metaFields); $metaDateData = $this->groupRepos->getMetaDateFields((int) $row['transaction_journal_id'], $this->metaDateFields); From 47469c7082a544dbd2303040a65abd836fbd9774 Mon Sep 17 00:00:00 2001 From: James Cole Date: Mon, 25 Jul 2022 05:56:21 +0200 Subject: [PATCH 10/12] Fix transformer. --- app/Transformers/TransactionGroupTransformer.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/Transformers/TransactionGroupTransformer.php b/app/Transformers/TransactionGroupTransformer.php index ebc211c558..d8050f871d 100644 --- a/app/Transformers/TransactionGroupTransformer.php +++ b/app/Transformers/TransactionGroupTransformer.php @@ -517,7 +517,7 @@ class TransactionGroupTransformer extends AbstractTransformer private function getForeignAmount(string $type, ?string $foreignAmount): ?string { $result = null; - if (null !== $foreignAmount) { + if (null !== $foreignAmount && '' !== $foreignAmount && bccomp('0', $foreignAmount) !== 0) { $result = TransactionType::WITHDRAWAL !== $type ? app('steam')->negative($foreignAmount) : app('steam')->positive($foreignAmount); } From 242fb3b49836ccdd12e5631e129a42056108d4d8 Mon Sep 17 00:00:00 2001 From: James Cole Date: Mon, 25 Jul 2022 05:57:11 +0200 Subject: [PATCH 11/12] Remove debug. --- app/Http/Controllers/Transaction/ShowController.php | 7 ------- app/Transformers/TransactionGroupTransformer.php | 1 - 2 files changed, 8 deletions(-) diff --git a/app/Http/Controllers/Transaction/ShowController.php b/app/Http/Controllers/Transaction/ShowController.php index a4af0ffc6b..4454121bb8 100644 --- a/app/Http/Controllers/Transaction/ShowController.php +++ b/app/Http/Controllers/Transaction/ShowController.php @@ -101,7 +101,6 @@ class ShowController extends Controller $groupArray = $transformer->transformObject($transactionGroup); // do some calculations: - Log::debug('Now going to getAmounts()'); $amounts = $this->getAmounts($groupArray); $accounts = $this->getAccounts($groupArray); @@ -113,8 +112,6 @@ class ShowController extends Controller $attachments = $this->repository->getAttachments($transactionGroup); $links = $this->repository->getLinks($transactionGroup); - Log::debug('Journal', $groupArray); - return view( 'transactions.show', compact( @@ -140,10 +137,8 @@ class ShowController extends Controller */ private function getAmounts(array $group): array { - Log::debug('Now in getAmounts()'); $amounts = []; foreach ($group['transactions'] as $transaction) { - Log::debug(sprintf('Currency symbol is "%s"', $transaction['currency_symbol'])); $symbol = $transaction['currency_symbol']; if (!array_key_exists($symbol, $amounts)) { $amounts[$symbol] = [ @@ -156,7 +151,6 @@ class ShowController extends Controller if (null !== $transaction['foreign_amount'] && '' !== $transaction['foreign_amount'] && bccomp('0', $transaction['foreign_amount']) !== 0) { // same for foreign currency: $foreignSymbol = $transaction['foreign_currency_symbol']; - Log::debug(sprintf('Foreign currency symbol is "%s"', $foreignSymbol)); if (!array_key_exists($foreignSymbol, $amounts)) { $amounts[$foreignSymbol] = [ 'amount' => '0', @@ -167,7 +161,6 @@ class ShowController extends Controller $amounts[$foreignSymbol]['amount'] = bcadd($amounts[$foreignSymbol]['amount'], $transaction['foreign_amount']); } } - Log::debug('Result', $amounts); return $amounts; } diff --git a/app/Transformers/TransactionGroupTransformer.php b/app/Transformers/TransactionGroupTransformer.php index d8050f871d..967c077f57 100644 --- a/app/Transformers/TransactionGroupTransformer.php +++ b/app/Transformers/TransactionGroupTransformer.php @@ -122,7 +122,6 @@ class TransactionGroupTransformer extends AbstractTransformer if (null !== $row['foreign_amount'] && '' !== $row['foreign_amount'] && bccomp('0', $row['foreign_amount']) !== 0) { $foreignAmount = app('steam')->positive($row['foreign_amount']); } - Log::debug(sprintf('Foreign amount is "%s', $foreignAmount)); $metaFieldData = $this->groupRepos->getMetaFields((int) $row['transaction_journal_id'], $this->metaFields); $metaDateData = $this->groupRepos->getMetaDateFields((int) $row['transaction_journal_id'], $this->metaDateFields); From 858480929c6db728336ce733277f55446f90420d Mon Sep 17 00:00:00 2001 From: James Cole Date: Mon, 25 Jul 2022 19:43:47 +0200 Subject: [PATCH 12/12] Fix null pointer --- .../TransactionGroup/TransactionGroupRepository.php | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/app/Repositories/TransactionGroup/TransactionGroupRepository.php b/app/Repositories/TransactionGroup/TransactionGroupRepository.php index 47a8dfe4b2..10e609204a 100644 --- a/app/Repositories/TransactionGroup/TransactionGroupRepository.php +++ b/app/Repositories/TransactionGroup/TransactionGroupRepository.php @@ -277,7 +277,10 @@ class TransactionGroupRepository implements TransactionGroupRepositoryInterface { /** @var Transaction $transaction */ $transaction = $journal->transactions->first(); - if (null === $transaction->foreign_amount) { + if (null === $transaction->foreign_amount || '' === $transaction->foreign_amount) { + return ''; + } + if (0 === bccomp('0', $transaction->foreign_amount)) { return ''; } $currency = $transaction->foreignCurrency;