| @@ -40,8 +40,17 @@ | ||
| 40 | 40 | protected function isActiveByDefault(): bool { |
| 41 | 41 | return true; |
| 42 | 42 | } |
| 43 | 43 | |
| 44 | + /** | |
| 45 | + * Whether the add-on with this slug is switched on, without needing its instance. | |
| 46 | + */ | |
| 47 | + public static function isAddonEnabled( string $slug, bool $activeByDefault = true ): bool { | |
| 48 | + $settings = \TierPricingTable\Core\ServiceContainer::getInstance()->getSettings(); | |
| 49 | + | |
| 50 | + return 'yes' === $settings->get( '_addon_' . $slug, $activeByDefault ? 'yes' : 'no' ); | |
| 51 | + } | |
| 52 | + | |
| 44 | 53 | abstract public function getName(); |
| 45 | 54 | |
| 46 | 55 | abstract public function getDescription(); |
| 47 | 56 | |