* @copyright Since 2007 PrestaShop SA and Contributors * @license https://opensource.org/licenses/AFL-3.0 Academic Free License version 3.0 */ namespace PrestaShop\Module\PrestashopFacebook\Repository; use Exception; use PrestaShop\Module\PrestashopFacebook\Config\Config; use PrestaShop\PsAccountsInstaller\Installer\Facade\PsAccounts; class ServerInformationRepository { /** * @var bool */ private $isPsAccountsOnboarded; public function __construct(PsAccounts $psAccountsFacade) { try { $this->isPsAccountsOnboarded = (bool) $psAccountsFacade->getPsAccountsService()->getOrRefreshToken(); } catch (Exception $e) { $this->isPsAccountsOnboarded = false; } } /** * @return array */ public function getHealthCheckData() { $isFacebookSystemTokenSet = false; if (\Configuration::get(Config::PS_FACEBOOK_SYSTEM_ACCESS_TOKEN)) { $isFacebookSystemTokenSet = true; } return [ 'ps_accounts' => \Module::isInstalled('ps_accounts'), 'ps_accounts_onboarded' => $this->isPsAccountsOnboarded, 'ps_eventbus' => \Module::isInstalled('ps_eventbus'), 'ps_facebook_system_token_set' => $isFacebookSystemTokenSet, 'pixel_enabled' => (bool) \Configuration::get(Config::PS_FACEBOOK_PIXEL_ENABLED), 'pixel_id' => (bool) \Configuration::get(Config::PS_PIXEL_ID), 'profile_id' => (bool) \Configuration::get(Config::PS_FACEBOOK_PROFILES), 'page_id' => (bool) \Configuration::get(Config::PS_FACEBOOK_PAGES), 'business_manager_id' => (bool) \Configuration::get(Config::PS_FACEBOOK_BUSINESS_MANAGER_ID), 'ad_account_id' => (bool) \Configuration::get(Config::PS_FACEBOOK_AD_ACCOUNT_ID), 'catalog_id' => (bool) \Configuration::get(Config::PS_FACEBOOK_CATALOG_ID), 'env' => [ 'PSX_FACEBOOK_API_URL' => isset($_ENV['PSX_FACEBOOK_API_URL']) ? $_ENV['PSX_FACEBOOK_API_URL'] : null, 'ACCOUNTS_SVC_API_URL' => isset($_ENV['ACCOUNTS_SVC_API_URL']) ? $_ENV['ACCOUNTS_SVC_API_URL'] : null, 'EVENT_BUS_PROXY_API_URL' => isset($_ENV['EVENT_BUS_PROXY_API_URL']) ? $_ENV['EVENT_BUS_PROXY_API_URL'] : null, 'EVENT_BUS_SYNC_API_URL' => isset($_ENV['EVENT_BUS_SYNC_API_URL']) ? $_ENV['EVENT_BUS_SYNC_API_URL'] : null, ], ]; } }