diff --git a/app/Providers/CurrencyServiceProvider.php b/app/Providers/CurrencyServiceProvider.php index 5ba0966719..152b6985c6 100644 --- a/app/Providers/CurrencyServiceProvider.php +++ b/app/Providers/CurrencyServiceProvider.php @@ -27,6 +27,8 @@ use FireflyIII\Repositories\Currency\CurrencyRepository; use FireflyIII\Repositories\Currency\CurrencyRepositoryInterface; use FireflyIII\Repositories\Currency\CurrencyRepository as GroupCurrencyRepository; use FireflyIII\Repositories\Currency\CurrencyRepositoryInterface as GroupCurrencyRepositoryInterface; +use FireflyIII\Repositories\ExchangeRate\ExchangeRateRepository; +use FireflyIII\Repositories\ExchangeRate\ExchangeRateRepositoryInterface; use Illuminate\Foundation\Application; use Illuminate\Support\ServiceProvider; @@ -72,5 +74,19 @@ class CurrencyServiceProvider extends ServiceProvider } ); + $this->app->bind( + ExchangeRateRepositoryInterface::class, + static function (Application $app) { + /** @var ExchangeRateRepository $repository */ + $repository = app(ExchangeRateRepository::class); + // phpstan does not get the reference to auth + if ($app->auth->check()) { // @phpstan-ignore-line + $repository->setUserGroup(auth()->user()->userGroup); + } + + return $repository; + } + ); + } } diff --git a/app/Providers/FireflyServiceProvider.php b/app/Providers/FireflyServiceProvider.php index e8283756c2..dac85566f3 100644 --- a/app/Providers/FireflyServiceProvider.php +++ b/app/Providers/FireflyServiceProvider.php @@ -73,6 +73,7 @@ use FireflyIII\TransactionRules\Engine\SearchRuleEngine; use FireflyIII\TransactionRules\Expressions\ActionExpressionLanguageProvider; use FireflyIII\Validation\FireflyValidator; use Illuminate\Foundation\Application; +use Illuminate\Support\Facades\Validator; use Illuminate\Support\ServiceProvider; use Symfony\Component\ExpressionLanguage\ExpressionLanguage; @@ -88,7 +89,7 @@ class FireflyServiceProvider extends ServiceProvider */ public function boot(): void { - \Validator::resolver( + Validator::resolver( static function ($translator, $data, $rules, $messages) { return new FireflyValidator($translator, $data, $rules, $messages); }