PluginProbe ʕ •ᴥ•ʔ
GiveWP – Donation Plugin and Fundraising Platform / 2.22.3
GiveWP – Donation Plugin and Fundraising Platform v2.22.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 4 years ago Onboarding.php 4 years ago PaymentGateways.php 4 years ago RestAPI.php 4 years ago Routes.php 4 years ago ServiceProvider.php 4 years ago
Onboarding.php
125 lines
1 <?php
2
3 namespace Give\ServiceProviders;
4
5 use Give\Framework\Migrations\MigrationsRegister;
6 use Give\Helpers\Hooks;
7 use Give\Onboarding\DefaultFormFactory;
8 use Give\Onboarding\FormRepository;
9 use Give\Onboarding\LocaleCollection;
10 use Give\Onboarding\Migrations\SetFormDonationLevelsToStrings;
11 use Give\Onboarding\Routes\AddonsRoute;
12 use Give\Onboarding\Routes\CurrencyRoute;
13 use Give\Onboarding\Routes\FeaturesRoute;
14 use Give\Onboarding\Routes\FormRoute;
15 use Give\Onboarding\Routes\LocationRoute;
16 use Give\Onboarding\Routes\SettingsRoute;
17 use Give\Onboarding\SettingsRepositoryFactory;
18 use Give\Onboarding\Setup\Handlers\AdminNoticeHandler;
19 use Give\Onboarding\Setup\Handlers\TopLevelMenuRedirect;
20 use Give\Onboarding\Setup\Page as SetupPage;
21 use Give\Onboarding\Setup\PageView as SetupPageView;
22 use Give\Onboarding\Wizard\FormPreview;
23 use Give\Onboarding\Wizard\Page as WizardPage;
24
25 class Onboarding implements ServiceProvider
26 {
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 {
59 $this->registerMigrations();
60
61 // Onboarding Wizard and Setup page require WP v5.0.x or greater
62 if (version_compare(get_bloginfo('version'), '5.0', '<=')) {
63 return;
64 }
65
66 // Load Wizard Page
67 Hooks::addAction('admin_menu', WizardPage::class, 'add_page');
68 Hooks::addAction('admin_init', WizardPage::class, 'redirect');
69 Hooks::addAction('admin_init', WizardPage::class, 'setup_wizard');
70 Hooks::addAction('admin_enqueue_scripts', WizardPage::class, 'enqueue_scripts');
71
72 // Load Form Preview
73 Hooks::addAction('admin_menu', FormPreview::class, 'add_page');
74 Hooks::addAction('admin_init', FormPreview::class, 'setup_form_preview');
75
76 Hooks::addAction('rest_api_init', FormRoute::class, 'registerRoute');
77 Hooks::addAction('rest_api_init', LocationRoute::class, 'registerRoute');
78 Hooks::addAction(
79 'rest_api_init',
80 AddonsRoute::class,
81 'registerRoute',
82 10
83 ); // Static route, onboarding/settings/addons
84 Hooks::addAction(
85 'rest_api_init',
86 CurrencyRoute::class,
87 'registerRoute',
88 10
89 ); // Static route, onboarding/settings/currency
90 Hooks::addAction(
91 'rest_api_init',
92 FeaturesRoute::class,
93 'registerRoute',
94 10
95 ); // Static route, onboarding/settings/features
96 Hooks::addAction(
97 'rest_api_init',
98 SettingsRoute::class,
99 'registerRoute',
100 11
101 ); // Dynamic route, onboarding/settings/{setting}
102
103 // Maybe load Setup Page
104 if (give_is_setting_enabled(SetupPage::getSetupPageEnabledOrDisabled())) {
105 Hooks::addAction('admin_init', AdminNoticeHandler::class, 'maybeHandle');
106 Hooks::addAction('admin_init', TopLevelMenuRedirect::class, 'maybeHandle');
107 Hooks::addAction('admin_menu', SetupPage::class, 'add_page');
108 Hooks::addAction('admin_enqueue_scripts', SetupPage::class, 'enqueue_scripts');
109 Hooks::addAction('admin_post_dismiss_setup_page', SetupPage::class, 'dismissSetupPage');
110 }
111 }
112
113 /**
114 * Registers migrations
115 *
116 * @since 2.13.3
117 */
118 private function registerMigrations()
119 {
120 give(MigrationsRegister::class)->addMigrations([
121 SetFormDonationLevelsToStrings::class,
122 ]);
123 }
124 }
125