PluginProbe ʕ •ᴥ•ʔ
GiveWP – Donation Plugin and Fundraising Platform / 2.13.3
GiveWP – Donation Plugin and Fundraising Platform v2.13.3
4.16.2 4.16.1 4.16.0 4.15.5 4.15.4 4.15.3 4.15.2 4.15.1 4.15.0 2.3.0 2.3.1 2.3.2 2.30.0 2.31.0 2.31.1 2.32.0 2.33.0 2.33.1 2.33.2 2.33.3 2.33.4 2.33.5 2.4.0 2.4.1 2.4.2 2.4.3 2.4.4 2.4.5 2.4.6 2.4.7 2.5.0 2.5.1 2.5.10 2.5.11 2.5.12 2.5.13 2.5.2 2.5.3 2.5.4 2.5.5 2.5.6 2.5.7 2.5.8 2.5.9 2.6.0 2.6.1 2.6.2 2.6.3 2.7.0 2.7.1 2.7.2 2.7.3 2.7.4 2.7.5 2.8.0 2.8.1 2.9.0 2.9.1 2.9.2 2.9.3 2.9.4 2.9.5 2.9.6 2.9.7 3.0.0 3.0.1 3.0.2 3.0.3 3.0.4 3.1.0 3.1.1 3.1.2 3.10.0 3.11.0 3.12.0 3.12.1 3.12.2 3.12.3 3.13.0 3.14.0 3.14.1 3.14.2 3.15.0 3.15.1 3.16.0 3.16.1 3.16.2 3.16.3 3.16.4 3.16.5 3.17.0 3.17.1 3.17.2 3.18.0 3.19.0 3.19.1 3.19.2 3.19.3 3.19.4 3.2.0 3.2.1 3.2.2 3.20.0 3.21.0 3.21.1 3.22.0 3.22.1 3.22.2 3.3.0 3.3.1 3.4.0 3.4.1 3.4.2 3.5.0 3.5.1 3.6.0 3.6.1 3.6.2 3.7.0 3.8.0 3.9.0 4.0.0 4.1.0 4.1.1 4.10.0 4.10.1 4.11.0 4.12.0 4.13.0 4.13.1 4.13.2 4.14.0 4.14.1 4.14.2 4.14.3 4.14.4 4.14.5 4.14.6 4.2.0 4.2.1 4.3.0 4.3.1 4.3.2 4.4.0 4.5.0 4.6.1 4.7.0 4.7.1 4.8.0 4.8.1 4.9.0 trunk 1.9.0 2.0.0 2.0.1 2.0.2 2.0.3 2.0.4 2.0.5 2.0.6 2.0.7 2.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.10.0 2.10.1 2.10.2 2.10.3 2.10.4 2.11.0 2.11.1 2.11.2 2.11.3 2.12.0 2.12.1 2.12.2 2.12.3 2.13.0 2.13.1 2.13.2 2.13.3 2.13.4 2.14.0 2.15.0 2.16.0 2.16.1 2.17.0 2.17.1 2.17.3 2.18.0 2.18.1 2.19.1 2.19.2 2.19.3 2.19.4 2.19.5 2.19.6 2.19.7 2.19.8 2.2.0 2.2.1 2.2.2 2.2.3 2.2.4 2.2.5 2.2.6 2.20.0 2.20.1 2.20.2 2.21.0 2.21.1 2.21.2 2.21.3 2.21.4 2.22.0 2.22.1 2.22.2 2.22.3 2.23.0 2.23.1 2.23.2 2.24.0 2.24.1 2.24.2 2.25.0 2.25.1 2.25.2 2.25.3 2.26.0 2.27.0 2.27.1 2.27.2 2.27.3 2.28.0 2.29.0 2.29.1 2.29.2
give / src / ServiceProviders / Onboarding.php
give / src / ServiceProviders Last commit date
LegacyServiceProvider.php 5 years ago Onboarding.php 4 years ago PaymentGateways.php 4 years ago RestAPI.php 5 years ago Routes.php 5 years ago ServiceProvider.php 5 years ago
Onboarding.php
104 lines
1 <?php
2
3 namespace Give\ServiceProviders;
4
5 use Give\Framework\Migrations\MigrationsRegister;
6 use Give\Helpers\Hooks;
7 use Give\Onboarding\Migrations\SetFormDonationLevelsToStrings;
8 use Give\Onboarding\SettingsRepository;
9 use Give\Onboarding\FormRepository;
10 use Give\Onboarding\DefaultFormFactory;
11 use Give\Onboarding\LocaleCollection;
12 use Give\Onboarding\SettingsRepositoryFactory;
13 use Give\Onboarding\Setup\Page as SetupPage;
14 use Give\Onboarding\Setup\PageView as SetupPageView;
15 use Give\Onboarding\Wizard\Page as WizardPage;
16 use Give\Onboarding\Wizard\FormPreview;
17 use Give\Onboarding\Routes\SettingsRoute;
18 use Give\Onboarding\Routes\LocationRoute;
19 use Give\Onboarding\Routes\CurrencyRoute;
20 use Give\Onboarding\Routes\AddonsRoute;
21 use Give\Onboarding\Routes\FeaturesRoute;
22 use Give\Onboarding\Routes\FormRoute;
23 use Give\Onboarding\Setup\Handlers\AdminNoticeHandler;
24 use Give\Onboarding\Setup\Handlers\TopLevelMenuRedirect;
25
26 class Onboarding implements ServiceProvider {
27
28 /**
29 * @inheritDoc
30 */
31 public function register() {
32
33 // Onboarding Wizard and Setup page require WP v5.0.x or greater
34 if ( version_compare( get_bloginfo( 'version' ), '5.0', '<=' ) ) {
35 return;
36 }
37
38 give()->singleton( SetupPage::class );
39 give()->singleton( WizardPage::class );
40 give()->singleton( FormPreview::class );
41 give()->bind( DonationsRedirect::class );
42 give()->bind( SettingsRoute::class );
43 give()->bind( CurrencyRoute::class );
44 give()->bind( AddonsRoute::class );
45 give()->bind( FeaturesRoute::class );
46 give()->bind( FormRoute::class );
47 give()->bind( FormRepository::class );
48 give()->bind( DefaultFormFactory::class );
49 give()->bind( SettingsRepositoryFactory::class );
50 give()->bind( LocaleCollection::class );
51 give()->singleton( SetupPageView::class );
52 }
53
54 /**
55 * @inheritDoc
56 */
57 public function boot() {
58 $this->registerMigrations();
59
60 // Onboarding Wizard and Setup page require WP v5.0.x or greater
61 if ( version_compare( get_bloginfo( 'version' ), '5.0', '<=' ) ) {
62 return;
63 }
64
65 // Load Wizard Page
66 Hooks::addAction( 'admin_menu', WizardPage::class, 'add_page' );
67 Hooks::addAction( 'admin_init', WizardPage::class, 'redirect' );
68 Hooks::addAction( 'admin_init', WizardPage::class, 'setup_wizard' );
69 Hooks::addAction( 'admin_enqueue_scripts', WizardPage::class, 'enqueue_scripts' );
70
71 // Load Form Preview
72 Hooks::addAction( 'admin_menu', FormPreview::class, 'add_page' );
73 Hooks::addAction( 'admin_init', FormPreview::class, 'setup_form_preview' );
74
75 Hooks::addAction( 'rest_api_init', FormRoute::class, 'registerRoute' );
76 Hooks::addAction( 'rest_api_init', LocationRoute::class, 'registerRoute' );
77 Hooks::addAction( 'rest_api_init', AddonsRoute::class, 'registerRoute', 10 ); // Static route, onboarding/settings/addons
78 Hooks::addAction( 'rest_api_init', CurrencyRoute::class, 'registerRoute', 10 ); // Static route, onboarding/settings/currency
79 Hooks::addAction( 'rest_api_init', FeaturesRoute::class, 'registerRoute', 10 ); // Static route, onboarding/settings/features
80 Hooks::addAction( 'rest_api_init', SettingsRoute::class, 'registerRoute', 11 ); // Dynamic route, onboarding/settings/{setting}
81
82 // Maybe load Setup Page
83 if ( give_is_setting_enabled( SetupPage::getSetupPageEnabledOrDisabled() ) ) {
84 Hooks::addAction( 'admin_init', AdminNoticeHandler::class, 'maybeHandle' );
85 Hooks::addAction( 'admin_init', TopLevelMenuRedirect::class, 'maybeHandle' );
86 Hooks::addAction( 'admin_menu', SetupPage::class, 'add_page' );
87 Hooks::addAction( 'admin_enqueue_scripts', SetupPage::class, 'enqueue_scripts' );
88 Hooks::addAction( 'admin_post_dismiss_setup_page', SetupPage::class, 'dismissSetupPage' );
89 }
90 }
91
92 /**
93 * Registers migrations
94 *
95 * @since 2.13.3
96 */
97 private function registerMigrations()
98 {
99 give(MigrationsRegister::class)->addMigrations([
100 SetFormDonationLevelsToStrings::class
101 ]);
102 }
103 }
104