diff --git a/app/Rules/Actions/AddTag.php b/app/Rules/Actions/AddTag.php index fb5fe7c766..c05b67461a 100644 --- a/app/Rules/Actions/AddTag.php +++ b/app/Rules/Actions/AddTag.php @@ -15,6 +15,7 @@ namespace FireflyIII\Rules\Actions; use FireflyIII\Models\RuleAction; use FireflyIII\Models\Tag; use FireflyIII\Models\TransactionJournal; +use Log; /** * Class AddTag @@ -44,14 +45,20 @@ class AddTag implements ActionInterface */ public function act(TransactionJournal $journal): bool { + // journal has this tag maybe? $tag = Tag::firstOrCreateEncrypted(['tag' => $this->action->action_value, 'user_id' => $journal->user->id]); $count = $journal->tags()->where('tag_id', $tag->id)->count(); - if ($count == 0) { + if ($count === 0) { $journal->tags()->save($tag); + Log::debug(sprintf('RuleAction AddTag. Added tag #%d ("%s") to journal %d.', $tag->id, $tag->tag, $journal->id)); + + return true; } + Log::debug(sprintf('RuleAction AddTag fired but tag %d ("%s") was already added to journal %d.', $tag->id, $tag->tag, $journal->id)); + return true; } } diff --git a/app/Rules/Actions/AppendDescription.php b/app/Rules/Actions/AppendDescription.php index b9d0e2036b..ba5c9a37e4 100644 --- a/app/Rules/Actions/AppendDescription.php +++ b/app/Rules/Actions/AppendDescription.php @@ -13,6 +13,7 @@ namespace FireflyIII\Rules\Actions; use FireflyIII\Models\RuleAction; use FireflyIII\Models\TransactionJournal; +use Log; /** * Class AppendDescription @@ -42,6 +43,7 @@ class AppendDescription implements ActionInterface */ public function act(TransactionJournal $journal): bool { + Log::debug(sprintf('RuleAction AppendDescription appended "%s" to "%s".', $this->action->action_value, $journal->description)); $journal->description = $journal->description . $this->action->action_value; $journal->save(); diff --git a/app/Rules/Actions/ClearBudget.php b/app/Rules/Actions/ClearBudget.php index cda1f246dc..6caaa96f5d 100644 --- a/app/Rules/Actions/ClearBudget.php +++ b/app/Rules/Actions/ClearBudget.php @@ -11,9 +11,9 @@ declare(strict_types = 1); namespace FireflyIII\Rules\Actions; - use FireflyIII\Models\RuleAction; use FireflyIII\Models\TransactionJournal; +use Log; /** * Class ClearBudget @@ -44,6 +44,7 @@ class ClearBudget implements ActionInterface public function act(TransactionJournal $journal): bool { $journal->budgets()->detach(); + Log::debug(sprintf('RuleAction ClearBudget removed all budgets from journal %d.', $journal->id)); return true; } diff --git a/app/Rules/Actions/ClearCategory.php b/app/Rules/Actions/ClearCategory.php index 1b01181ac1..9133eeb9a6 100644 --- a/app/Rules/Actions/ClearCategory.php +++ b/app/Rules/Actions/ClearCategory.php @@ -44,6 +44,7 @@ class ClearCategory implements ActionInterface public function act(TransactionJournal $journal): bool { $journal->categories()->detach(); + Log::debug(sprintf('RuleAction ClearCategory removed all categories from journal %d.', $journal->id)); return true; } diff --git a/app/Rules/Actions/PrependDescription.php b/app/Rules/Actions/PrependDescription.php index ce85d7e374..8841a8da7d 100644 --- a/app/Rules/Actions/PrependDescription.php +++ b/app/Rules/Actions/PrependDescription.php @@ -13,6 +13,7 @@ namespace FireflyIII\Rules\Actions; use FireflyIII\Models\RuleAction; use FireflyIII\Models\TransactionJournal; +use Log; /** * Class AppendDescription @@ -42,9 +43,11 @@ class PrependDescription implements ActionInterface */ public function act(TransactionJournal $journal): bool { + Log::debug(sprintf('RuleAction PrependDescription prepended "%s" to "%s".', $this->action->action_value, $journal->description)); $journal->description = $this->action->action_value . $journal->description; $journal->save(); + return true; } } diff --git a/app/Rules/Actions/RemoveAllTags.php b/app/Rules/Actions/RemoveAllTags.php index 005d18b8be..5eb6bc504d 100644 --- a/app/Rules/Actions/RemoveAllTags.php +++ b/app/Rules/Actions/RemoveAllTags.php @@ -14,6 +14,7 @@ namespace FireflyIII\Rules\Actions; use FireflyIII\Models\RuleAction; use FireflyIII\Models\TransactionJournal; +use Log; /** * Class RemoveAllTags @@ -42,6 +43,7 @@ class RemoveAllTags implements ActionInterface */ public function act(TransactionJournal $journal): bool { + Log::debug(sprintf('RuleAction ClearCategory removed all tags from journal %d.', $journal->id)); $journal->tags()->detach(); return true; diff --git a/app/Rules/Actions/RemoveTag.php b/app/Rules/Actions/RemoveTag.php index 85da146b24..a29a5e6751 100644 --- a/app/Rules/Actions/RemoveTag.php +++ b/app/Rules/Actions/RemoveTag.php @@ -15,6 +15,7 @@ namespace FireflyIII\Rules\Actions; use FireflyIII\Models\RuleAction; use FireflyIII\Models\Tag; use FireflyIII\Models\TransactionJournal; +use Log; /** * Class RemoveTag @@ -54,8 +55,12 @@ class RemoveTag implements ActionInterface )->first(); if (!is_null($tag)) { + Log::debug(sprintf('RuleAction RemoveTag removed tag #%d ("%s") from journal #%d.', $tag->id, $tag->tag, $journal->id)); $journal->tags()->detach([$tag->id]); + + return true; } + Log::debug(sprintf('RuleAction RemoveTag tried to remove tag "%s" from journal #%d but no such tag exists.', $name, $journal->id)); return true; } diff --git a/app/Rules/Actions/SetBudget.php b/app/Rules/Actions/SetBudget.php index 1be644aa37..441b617186 100644 --- a/app/Rules/Actions/SetBudget.php +++ b/app/Rules/Actions/SetBudget.php @@ -16,6 +16,7 @@ use FireflyIII\Models\Budget; use FireflyIII\Models\RuleAction; use FireflyIII\Models\TransactionJournal; use FireflyIII\Repositories\Budget\BudgetRepositoryInterface; +use Log; /** * Class SetBudget @@ -55,9 +56,13 @@ class SetBudget implements ActionInterface } )->first(); if (!is_null($budget)) { + Log::debug(sprintf('RuleAction SetBudget set the budget of journal #%d to budget #%d ("%s").', $journal->id, $budget->id, $budget->name)); + $journal->budgets()->sync([$budget->id]); } + Log::debug(sprintf('RuleAction SetBudget could not set budget of journal #%d to "%s" because no such budget exists.', $journal->id, $search)); + return true; } } diff --git a/app/Rules/Actions/SetCategory.php b/app/Rules/Actions/SetCategory.php index 7a298a85f9..3a836ec7d3 100644 --- a/app/Rules/Actions/SetCategory.php +++ b/app/Rules/Actions/SetCategory.php @@ -15,6 +15,7 @@ namespace FireflyIII\Rules\Actions; use FireflyIII\Models\Category; use FireflyIII\Models\RuleAction; use FireflyIII\Models\TransactionJournal; +use Log; /** * Class SetCategory @@ -48,6 +49,8 @@ class SetCategory implements ActionInterface $category = Category::firstOrCreateEncrypted(['name' => $name, 'user_id' => $journal->user->id]); $journal->categories()->sync([$category->id]); + Log::debug(sprintf('RuleAction SetCategory set the category of journal #%d to budget #%d ("%s").', $journal->id, $category->id, $category->name)); + return true; } } diff --git a/app/Rules/Actions/SetDescription.php b/app/Rules/Actions/SetDescription.php index 0cec07ed15..64a6e965fb 100644 --- a/app/Rules/Actions/SetDescription.php +++ b/app/Rules/Actions/SetDescription.php @@ -13,6 +13,7 @@ namespace FireflyIII\Rules\Actions; use FireflyIII\Models\RuleAction; use FireflyIII\Models\TransactionJournal; +use Log; /** * Class SetDescription @@ -42,9 +43,19 @@ class SetDescription implements ActionInterface */ public function act(TransactionJournal $journal): bool { + $oldDescription = $journal->description; + $journal->description = $this->action->action_value; $journal->save(); + Log::debug( + sprintf( + 'RuleAction SetDescription changed the description of journal #%d from "%s" to "%s".', $journal->id, + $oldDescription, + $this->action->action_value + ) + ); + return true; } }