![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/mets-rebuild.corals.io/wp-content/plugins/give/src/Subscriptions/ |
<?php namespace Give\Subscriptions; use Give\Framework\Migrations\MigrationsRegister; use Give\Helpers\Hooks; use Give\ServiceProviders\ServiceProvider as ServiceProviderInterface; use Give\Subscriptions\LegacyListeners\DispatchGiveSubscriptionPostCreate; use Give\Subscriptions\LegacyListeners\DispatchGiveSubscriptionPreCreate; use Give\Subscriptions\ListTable\SubscriptionsListTable; use Give\Subscriptions\Migrations\AddPaymentModeToSubscriptionTable; use Give\Subscriptions\Migrations\CreateSubscriptionTables; use Give\Subscriptions\Repositories\SubscriptionRepository; class ServiceProvider implements ServiceProviderInterface { /** * @inheritDoc */ public function register() { give()->singleton('subscriptions', SubscriptionRepository::class); give()->singleton(SubscriptionsListTable::class, function() { $listTable = new SubscriptionsListTable(); Hooks::doAction('givewp_subscriptions_list_table', $listTable); return $listTable; }); } /** * @inheritDoc */ public function boot() { $this->bootLegacyListeners(); $this->registerMigrations(); $userId = get_current_user_id(); $showLegacy = get_user_meta($userId, '_give_subscriptions_archive_show_legacy', true); // only register new admin page if user hasn't chosen to use the old one if (empty($showLegacy) && SubscriptionsAdminPage::isShowing()) { Hooks::addAction('admin_enqueue_scripts', SubscriptionsAdminPage::class, 'loadScripts'); } elseif (SubscriptionsAdminPage::isShowing()) { Hooks::addAction('admin_head', SubscriptionsAdminPage::class, 'renderReactSwitch'); } } /** * Legacy Listeners * * @since 2.19.6 */ private function bootLegacyListeners() { Hooks::addAction('givewp_subscription_creating', DispatchGiveSubscriptionPreCreate::class); Hooks::addAction('givewp_subscription_created', DispatchGiveSubscriptionPostCreate::class); } /** * Registers database migrations with the MigrationsRunner * * @since 2.24.0 */ private function registerMigrations() { /** @var MigrationsRegister $register */ $register = give(MigrationsRegister::class); $register->addMigrations([ CreateSubscriptionTables::class, AddPaymentModeToSubscriptionTable::class, ]); } }