* @copyright Since 2007 PrestaShop SA and Contributors * @license https://opensource.org/licenses/OSL-3.0 Open Software License (OSL 3.0) */ namespace PrestaShop\PrestaShop\Core\B2b; use PrestaShop\PrestaShop\Core\ConfigurationInterface; use PrestaShop\PrestaShop\Core\Feature\FeatureInterface; /** * Class B2bFeature checks manages B2B status. */ final class B2bFeature implements FeatureInterface { /** * @var ConfigurationInterface */ private $configuration; /** * @param ConfigurationInterface $configuration */ public function __construct(ConfigurationInterface $configuration) { $this->configuration = $configuration; } /** * {@inheritdoc} */ public function isUsed() { return $this->isActive(); } /** * {@inheritdoc} */ public function isActive() { return (bool) $this->configuration->get('PS_B2B_ENABLE'); } /** * {@inheritdoc} */ public function enable() { $this->configuration->set('PS_B2B_ENABLE', 1); } /** * {@inheritdoc} */ public function disable() { $this->configuration->set('PS_B2B_ENABLE', 0); } /** * {@inheritdoc} */ public function update($status) { $status ? $this->enable() : $this->disable(); } }