diff --git a/app/Http/Controllers/HomeController.php b/app/Http/Controllers/HomeController.php index ab85c19525..6d361190e6 100644 --- a/app/Http/Controllers/HomeController.php +++ b/app/Http/Controllers/HomeController.php @@ -122,6 +122,7 @@ final class HomeController extends Controller */ public function index(AccountRepositoryInterface $repository): mixed { + $types = config('firefly.accountTypesByIdentifier.asset'); $count = $repository->count($types); Log::channel('audit')->info('User visits homepage.'); diff --git a/app/Providers/FireflyServiceProvider.php b/app/Providers/FireflyServiceProvider.php index a6671489e1..c87979066f 100644 --- a/app/Providers/FireflyServiceProvider.php +++ b/app/Providers/FireflyServiceProvider.php @@ -70,6 +70,7 @@ use FireflyIII\Support\Form\RuleForm; use FireflyIII\Support\Navigation; use FireflyIII\Support\Preferences; use FireflyIII\Support\Steam; +use FireflyIII\TransactionRules\Engine\CustomExpressionLanguage; use FireflyIII\TransactionRules\Engine\RuleEngineInterface; use FireflyIII\TransactionRules\Engine\SearchRuleEngine; use FireflyIII\TransactionRules\Expressions\ActionExpressionLanguageProvider; @@ -161,7 +162,7 @@ class FireflyServiceProvider extends ServiceProvider // rule expression language $this->app->singleton(static function (): ExpressionLanguage { - $expressionLanguage = new ExpressionLanguage(); + $expressionLanguage = new CustomExpressionLanguage(); $expressionLanguage->registerProvider(new ActionExpressionLanguageProvider()); return $expressionLanguage; diff --git a/app/TransactionRules/Engine/CustomExpressionLanguage.php b/app/TransactionRules/Engine/CustomExpressionLanguage.php new file mode 100644 index 0000000000..65b16d4c31 --- /dev/null +++ b/app/TransactionRules/Engine/CustomExpressionLanguage.php @@ -0,0 +1,17 @@ +addFunction(ExpressionFunction::fromPhp($function)); + } + } +} diff --git a/app/TransactionRules/Expressions/ActionExpressionLanguageProvider.php b/app/TransactionRules/Expressions/ActionExpressionLanguageProvider.php index 55445e0def..bdd5987410 100644 --- a/app/TransactionRules/Expressions/ActionExpressionLanguageProvider.php +++ b/app/TransactionRules/Expressions/ActionExpressionLanguageProvider.php @@ -45,10 +45,6 @@ class ActionExpressionLanguageProvider implements ExpressionFunctionProviderInte return [ new ExpressionFunction('constant2', static fn ($str): string => sprintf('(is_string(%1$s) ? strtolower(%1$s) : %1$s)', $str.'!'), $function), new ExpressionFunction('constant', static fn ($str): string => sprintf('(is_string(%1$s) ? strtolower(%1$s) : %1$s)', $str.'!'), $function), - - ExpressionFunction::fromPhp('substr'), - ExpressionFunction::fromPhp('strlen'), - ExpressionFunction::fromPhp('strpos'), ]; } }