<?php
/**
 * @author    Alexandre DEBUSSCHÈRE <alexandre@kosmonaft.dev>
 * @copyright 2023 Kosmonaft.dev
 * @license   Commercial
 */

if (!defined('_PS_VERSION_')) {
    exit;
}

/**
 * Class MRMaxAPIProvider
 */
class MRMaxAPIProvider
{

    /**
     * @return MRMaxAPIInterface
     */
    public static function getAPIInstance()
    {
        if (Module::isInstalled('mrmaxdualcarrier') && Module::isEnabled('mrmaxdualcarrier')) {
            $mrmaxdualcarrier = Module::getInstanceByName('mrmaxdualcarrier');

            require_once $mrmaxdualcarrier->getLocalPath().'classes/MRMaxDualCarrierAPI.php';

            return new MRMaxDualCarrierAPI(
                Configuration::get('MRMAXDC_LOGIN'),
                Configuration::get('MRMAXDC_BRAND'),
                Configuration::get('MRMAXDC_PASSWORD'),
                Configuration::get('MRMAXDC_PREPROD')
            );
        }

        return new MRMaxAPI(
            Configuration::get('MRMAX_TRADING_NAME'),
            Configuration::get('MRMAX_BRAND_CODE'),
            Configuration::get('MRMAX_WS_KEY')
        );
    }
}
