PluginProbe ʕ •ᴥ•ʔ
GiveWP – Donation Plugin and Fundraising Platform / 2.9.2
GiveWP – Donation Plugin and Fundraising Platform v2.9.2
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 5 years ago PaymentGateways.php 5 years ago RestAPI.php 5 years ago Routes.php 5 years ago ServiceProvider.php 5 years ago
Onboarding.php
89 lines
1 <?php
2
3 namespace Give\ServiceProviders;
4
5 use Give\Helpers\Hooks;
6 use Give\Onboarding\SettingsRepository;
7 use Give\Onboarding\FormRepository;
8 use Give\Onboarding\DefaultFormFactory;
9 use Give\Onboarding\LocaleCollection;
10 use Give\Onboarding\SettingsRepositoryFactory;
11 use Give\Onboarding\Setup\Page as SetupPage;
12 use Give\Onboarding\Setup\PageView as SetupPageView;
13 use Give\Onboarding\Wizard\Page as WizardPage;
14 use Give\Onboarding\Wizard\FormPreview;
15 use Give\Onboarding\Routes\SettingsRoute;
16 use Give\Onboarding\Routes\LocationRoute;
17 use Give\Onboarding\Routes\CurrencyRoute;
18 use Give\Onboarding\Routes\AddonsRoute;
19 use Give\Onboarding\Routes\FeaturesRoute;
20 use Give\Onboarding\Routes\FormRoute;
21 use Give\Onboarding\Setup\Handlers\AdminNoticeHandler;
22 use Give\Onboarding\Setup\Handlers\TopLevelMenuRedirect;
23
24 class Onboarding implements ServiceProvider {
25
26 /**
27 * @inheritDoc
28 */
29 public function register() {
30
31 // Onboarding Wizard and Setup page require WP v5.0.x or greater
32 if ( version_compare( get_bloginfo( 'version' ), '5.0', '<=' ) ) {
33 return;
34 }
35
36 give()->singleton( SetupPage::class );
37 give()->singleton( WizardPage::class );
38 give()->singleton( FormPreview::class );
39 give()->bind( DonationsRedirect::class );
40 give()->bind( SettingsRoute::class );
41 give()->bind( CurrencyRoute::class );
42 give()->bind( AddonsRoute::class );
43 give()->bind( FeaturesRoute::class );
44 give()->bind( FormRoute::class );
45 give()->bind( FormRepository::class );
46 give()->bind( DefaultFormFactory::class );
47 give()->bind( SettingsRepositoryFactory::class );
48 give()->bind( LocaleCollection::class );
49 give()->singleton( SetupPageView::class );
50 }
51
52 /**
53 * @inheritDoc
54 */
55 public function boot() {
56
57 // Onboarding Wizard and Setup page require WP v5.0.x or greater
58 if ( version_compare( get_bloginfo( 'version' ), '5.0', '<=' ) ) {
59 return;
60 }
61
62 // Load Wizard Page
63 Hooks::addAction( 'admin_menu', WizardPage::class, 'add_page' );
64 Hooks::addAction( 'admin_init', WizardPage::class, 'redirect' );
65 Hooks::addAction( 'admin_init', WizardPage::class, 'setup_wizard' );
66 Hooks::addAction( 'admin_enqueue_scripts', WizardPage::class, 'enqueue_scripts' );
67
68 // Load Form Preview
69 Hooks::addAction( 'admin_menu', FormPreview::class, 'add_page' );
70 Hooks::addAction( 'admin_init', FormPreview::class, 'setup_form_preview' );
71
72 Hooks::addAction( 'rest_api_init', FormRoute::class, 'registerRoute' );
73 Hooks::addAction( 'rest_api_init', LocationRoute::class, 'registerRoute' );
74 Hooks::addAction( 'rest_api_init', AddonsRoute::class, 'registerRoute', 10 ); // Static route, onboarding/settings/addons
75 Hooks::addAction( 'rest_api_init', CurrencyRoute::class, 'registerRoute', 10 ); // Static route, onboarding/settings/currency
76 Hooks::addAction( 'rest_api_init', FeaturesRoute::class, 'registerRoute', 10 ); // Static route, onboarding/settings/features
77 Hooks::addAction( 'rest_api_init', SettingsRoute::class, 'registerRoute', 11 ); // Dynamic route, onboarding/settings/{setting}
78
79 // Maybe load Setup Page
80 if ( give_is_setting_enabled( SetupPage::getSetupPageEnabledOrDisabled() ) ) {
81 Hooks::addAction( 'admin_init', AdminNoticeHandler::class, 'maybeHandle' );
82 Hooks::addAction( 'admin_init', TopLevelMenuRedirect::class, 'maybeHandle' );
83 Hooks::addAction( 'admin_menu', SetupPage::class, 'add_page' );
84 Hooks::addAction( 'admin_enqueue_scripts', SetupPage::class, 'enqueue_scripts' );
85 Hooks::addAction( 'admin_post_dismiss_setup_page', SetupPage::class, 'dismissSetupPage' );
86 }
87 }
88 }
89