diff --git a/app/Rules/Actions/ActionFactory.php b/app/Rules/Actions/ActionFactory.php index 5c525e79af..1d7ec0e252 100644 --- a/app/Rules/Actions/ActionFactory.php +++ b/app/Rules/Actions/ActionFactory.php @@ -28,16 +28,15 @@ class ActionFactory * Returns the action for the given type and journal * * @param RuleAction $action - * @param TransactionJournal $journal * * @return ActionInterface */ - public static function getAction(RuleAction $action, TransactionJournal $journal): ActionInterface + public static function getAction(RuleAction $action): ActionInterface { $actionType = $action->action_type; $class = self::getActionClass($actionType); - return new $class($action, $journal); + return new $class($action); } /** diff --git a/app/Rules/Actions/ActionInterface.php b/app/Rules/Actions/ActionInterface.php index 52a34113cb..0ee5d10dec 100644 --- a/app/Rules/Actions/ActionInterface.php +++ b/app/Rules/Actions/ActionInterface.php @@ -23,13 +23,14 @@ interface ActionInterface /** * TriggerInterface constructor. * - * @param RuleAction $action - * @param TransactionJournal $journal + * @param RuleAction $action */ - public function __construct(RuleAction $action, TransactionJournal $journal); + public function __construct(RuleAction $action); /** + * @param TransactionJournal $journal + * * @return bool */ - public function act(); + public function act(TransactionJournal $journal); } diff --git a/app/Rules/Actions/AddTag.php b/app/Rules/Actions/AddTag.php index 6f09d42a9e..af28acc579 100644 --- a/app/Rules/Actions/AddTag.php +++ b/app/Rules/Actions/AddTag.php @@ -24,32 +24,32 @@ use FireflyIII\Models\TransactionJournal; class AddTag implements ActionInterface { + /** @var RuleAction */ private $action; - private $journal; /** * TriggerInterface constructor. * * @param RuleAction $action - * @param TransactionJournal $journal */ - public function __construct(RuleAction $action, TransactionJournal $journal) + public function __construct(RuleAction $action) { $this->action = $action; - $this->journal = $journal; } /** + * @param TransactionJournal $journal + * * @return bool */ - public function act() + public function act(TransactionJournal $journal) { // journal has this tag maybe? $tag = Tag::firstOrCreateEncrypted(['tag' => $this->action->action_value, 'user_id' => Auth::user()->id]); - $count = $this->journal->tags()->where('id', $tag->id)->count(); + $count = $journal->tags()->where('id', $tag->id)->count(); if ($count == 0) { - $this->journal->tags()->save($tag); + $journal->tags()->save($tag); } return true; diff --git a/app/Rules/Actions/AppendDescription.php b/app/Rules/Actions/AppendDescription.php index e08a0dbf96..dac139aa47 100644 --- a/app/Rules/Actions/AppendDescription.php +++ b/app/Rules/Actions/AppendDescription.php @@ -22,27 +22,27 @@ class AppendDescription implements ActionInterface { private $action; - private $journal; + /** * TriggerInterface constructor. * * @param RuleAction $action - * @param TransactionJournal $journal */ - public function __construct(RuleAction $action, TransactionJournal $journal) + public function __construct(RuleAction $action) { $this->action = $action; - $this->journal = $journal; } /** + * @param TransactionJournal $journal + * * @return bool */ - public function act() + public function act(TransactionJournal $journal) { - $this->journal->description = $this->journal->description . $this->action->action_value; - $this->journal->save(); + $journal->description = $journal->description . $this->action->action_value; + $journal->save(); return true; } diff --git a/app/Rules/Actions/ClearBudget.php b/app/Rules/Actions/ClearBudget.php index 6243ce8d06..0b54b01dee 100644 --- a/app/Rules/Actions/ClearBudget.php +++ b/app/Rules/Actions/ClearBudget.php @@ -23,26 +23,26 @@ class ClearBudget implements ActionInterface { private $action; - private $journal; + /** * TriggerInterface constructor. * * @param RuleAction $action - * @param TransactionJournal $journal */ - public function __construct(RuleAction $action, TransactionJournal $journal) + public function __construct(RuleAction $action) { $this->action = $action; - $this->journal = $journal; } /** + * @param TransactionJournal $journal + * * @return bool */ - public function act() + public function act(TransactionJournal $journal) { - $this->journal->budgets()->detach(); + $journal->budgets()->detach(); return true; } diff --git a/app/Rules/Actions/ClearCategory.php b/app/Rules/Actions/ClearCategory.php index c7cb75269d..c21cca6bdc 100644 --- a/app/Rules/Actions/ClearCategory.php +++ b/app/Rules/Actions/ClearCategory.php @@ -23,26 +23,26 @@ class ClearCategory implements ActionInterface { private $action; - private $journal; + /** * TriggerInterface constructor. * * @param RuleAction $action - * @param TransactionJournal $journal */ - public function __construct(RuleAction $action, TransactionJournal $journal) + public function __construct(RuleAction $action) { $this->action = $action; - $this->journal = $journal; } /** + * @param TransactionJournal $journal + * * @return bool */ - public function act() + public function act(TransactionJournal $journal) { - $this->journal->categories()->detach(); + $journal->categories()->detach(); return true; } diff --git a/app/Rules/Actions/PrependDescription.php b/app/Rules/Actions/PrependDescription.php index f67febb71e..5d1dca8b24 100644 --- a/app/Rules/Actions/PrependDescription.php +++ b/app/Rules/Actions/PrependDescription.php @@ -22,27 +22,27 @@ class PrependDescription implements ActionInterface { private $action; - private $journal; + /** * TriggerInterface constructor. * * @param RuleAction $action - * @param TransactionJournal $journal */ - public function __construct(RuleAction $action, TransactionJournal $journal) + public function __construct(RuleAction $action) { $this->action = $action; - $this->journal = $journal; } /** + * @param TransactionJournal $journal + * * @return bool */ - public function act() + public function act(TransactionJournal $journal) { - $this->journal->description = $this->action->action_value . $this->journal->description; - $this->journal->save(); + $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 70a3ac7f12..dc8ff42b21 100644 --- a/app/Rules/Actions/RemoveAllTags.php +++ b/app/Rules/Actions/RemoveAllTags.php @@ -22,26 +22,26 @@ use FireflyIII\Models\TransactionJournal; class RemoveAllTags implements ActionInterface { private $action; - private $journal; + /** * TriggerInterface constructor. * * @param RuleAction $action - * @param TransactionJournal $journal */ - public function __construct(RuleAction $action, TransactionJournal $journal) + public function __construct(RuleAction $action) { $this->action = $action; - $this->journal = $journal; } /** + * @param TransactionJournal $journal + * * @return bool */ - public function act() + public function act(TransactionJournal $journal) { - $this->journal->tags()->detach(); + $journal->tags()->detach(); return true; diff --git a/app/Rules/Actions/RemoveTag.php b/app/Rules/Actions/RemoveTag.php index 4e0ee9a600..73e633b93f 100644 --- a/app/Rules/Actions/RemoveTag.php +++ b/app/Rules/Actions/RemoveTag.php @@ -25,24 +25,24 @@ class RemoveTag implements ActionInterface { private $action; - private $journal; + /** * TriggerInterface constructor. * * @param RuleAction $action - * @param TransactionJournal $journal */ - public function __construct(RuleAction $action, TransactionJournal $journal) + public function __construct(RuleAction $action) { $this->action = $action; - $this->journal = $journal; } /** + * @param TransactionJournal $journal + * * @return bool */ - public function act() + public function act(TransactionJournal $journal) { // if tag does not exist, no need to continue: $name = $this->action->action_value; @@ -54,7 +54,7 @@ class RemoveTag implements ActionInterface )->first(); if (!is_null($tag)) { - $this->journal->tags()->detach([$tag->id]); + $journal->tags()->detach([$tag->id]); } return true; diff --git a/app/Rules/Actions/SetBudget.php b/app/Rules/Actions/SetBudget.php index 9e571b5740..b67fe36b90 100644 --- a/app/Rules/Actions/SetBudget.php +++ b/app/Rules/Actions/SetBudget.php @@ -26,24 +26,24 @@ class SetBudget implements ActionInterface { private $action; - private $journal; + /** * TriggerInterface constructor. * * @param RuleAction $action - * @param TransactionJournal $journal */ - public function __construct(RuleAction $action, TransactionJournal $journal) + public function __construct(RuleAction $action) { $this->action = $action; - $this->journal = $journal; } /** + * @param TransactionJournal $journal + * * @return bool */ - public function act() + public function act(TransactionJournal $journal) { /** @var BudgetRepositoryInterface $repository */ $repository = app('FireflyIII\Repositories\Budget\BudgetRepositoryInterface'); @@ -55,8 +55,8 @@ class SetBudget implements ActionInterface } )->first(); if (!is_null($budget)) { - Log::debug('Will set budget "' . $search . '" (#' . $budget->id . ') on journal #' . $this->journal->id . '.'); - $this->journal->budgets()->sync([$budget->id]); + Log::debug('Will set budget "' . $search . '" (#' . $budget->id . ') on journal #' . $journal->id . '.'); + $journal->budgets()->sync([$budget->id]); } else { Log::debug('Could not find budget "' . $search . '". Failed.'); } diff --git a/app/Rules/Actions/SetCategory.php b/app/Rules/Actions/SetCategory.php index 6d56a3251c..36f4bb506d 100644 --- a/app/Rules/Actions/SetCategory.php +++ b/app/Rules/Actions/SetCategory.php @@ -26,29 +26,29 @@ class SetCategory implements ActionInterface { private $action; - private $journal; + /** * TriggerInterface constructor. * * @param RuleAction $action - * @param TransactionJournal $journal */ - public function __construct(RuleAction $action, TransactionJournal $journal) + public function __construct(RuleAction $action) { $this->action = $action; - $this->journal = $journal; } /** + * @param TransactionJournal $journal + * * @return bool */ - public function act() + public function act(TransactionJournal $journal) { $name = $this->action->action_value; $category = Category::firstOrCreateEncrypted(['name' => $name, 'user_id' => Auth::user()->id]); - Log::debug('Will set category "' . $name . '" (#' . $category->id . ') on journal #' . $this->journal->id . '.'); - $this->journal->categories()->sync([$category->id]); + Log::debug('Will set category "' . $name . '" (#' . $category->id . ') on journal #' . $journal->id . '.'); + $journal->categories()->sync([$category->id]); return true; } diff --git a/app/Rules/Actions/SetDescription.php b/app/Rules/Actions/SetDescription.php index c088458e00..311052867a 100644 --- a/app/Rules/Actions/SetDescription.php +++ b/app/Rules/Actions/SetDescription.php @@ -22,27 +22,27 @@ class SetDescription implements ActionInterface { private $action; - private $journal; + /** * TriggerInterface constructor. * * @param RuleAction $action - * @param TransactionJournal $journal */ - public function __construct(RuleAction $action, TransactionJournal $journal) + public function __construct(RuleAction $action) { $this->action = $action; - $this->journal = $journal; } /** + * @param TransactionJournal $journal + * * @return bool */ - public function act() + public function act(TransactionJournal $journal) { - $this->journal->description = $this->action->action_value; - $this->journal->save(); + $journal->description = $this->action->action_value; + $journal->save(); return true; } diff --git a/app/Rules/Processor.php b/app/Rules/Processor.php index 4e1c8b8bd1..5d0ce78811 100644 --- a/app/Rules/Processor.php +++ b/app/Rules/Processor.php @@ -87,8 +87,8 @@ class Processor */ foreach ($this->actions as $action) { /** @var ActionInterface $actionClass */ - $actionClass = ActionFactory::getAction($action, $this->journal); - $actionClass->act(); + $actionClass = ActionFactory::getAction($action); + $actionClass->act($this->journal); if ($action->stop_processing) { break; }