MOON
Server: Apache
System: Linux server.royaltuning.hu 4.18.0-425.13.1.el8_7.x86_64 #1 SMP Tue Feb 21 04:20:52 EST 2023 x86_64
User: royaltuning (1001)
PHP: 8.2.32
Disabled: exec,passthru,shell_exec,system
Upload Files
File: //var/www/html/Modules/Currency/Providers/CurrencyExchangeRateServiceProvider.php
<?php

namespace Modules\Currency\Providers;

use Swap\Builder;
use Illuminate\Support\ServiceProvider;
use Modules\Currency\Services\CurrencyRateExchanger;

class CurrencyExchangeRateServiceProvider extends ServiceProvider
{
    /**
     * Bootstrap any application services.
     *
     * @return void
     */
    public function boot()
    {
        if (! config('app.installed')) {
            return;
        }

        $this->setupCurrencyRateExchangeService();

        $this->app->singleton(CurrencyRateExchanger::class, function () {
            $service = setting('currency_rate_exchange_service', 'array');
            $options = config("fleetcart.modules.currency.config.services.{$service}");

            $swap = (new Builder)->add($service, $options)->build();

            return new CurrencyRateExchanger($swap);
        });
    }

    /**
     * Setup currency rate exchange service.
     *
     * @return void
     */
    private function setupCurrencyRateExchangeService()
    {
        config([
            'fleetcart.modules.currency.config.services.fixer.access_key' => setting('fixer_access_key'),
            'fleetcart.modules.currency.config.services.forge.api_key' => setting('forge_api_key'),
            'fleetcart.modules.currency.config.services.currency_data_feed.api_key' => setting('currency_data_feed_api_key'),
        ]);
    }
}