* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) * @copyright PayPal */ namespace PaypalAddons\classes\InstallmentBanner\BNPL; use Configuration; use Context; use Country; use PaypalAddons\classes\InstallmentBanner\ConfigurationMap; class BnplAvailabilityManager { /** @var Context */ protected $context; public function __construct($context = null) { if ($context instanceof Context) { $this->context = $context; } else { $this->context = Context::getContext(); } } /** * @return bool */ public function isEligibleContext() { $isoLang = \Tools::strtolower($this->context->language->iso_code); $isoCurrency = \Tools::strtolower($this->context->currency->iso_code); foreach (ConfigurationMap::getBnplLanguageCurrencyMap() as $langCurrency) { if (isset($langCurrency[$isoLang]) && $langCurrency[$isoLang] == $isoCurrency) { return true; } } return false; } public function isEligibleCountryConfiguration() { $isoCountryDefault = Country::getIsoById( (int) Configuration::get( 'PS_COUNTRY_DEFAULT', null, null, $this->context->shop->id ) ); return in_array(\Tools::strtolower($isoCountryDefault), ConfigurationMap::getBnplAvailableCountries()); } }