PluginProbe
SureDonation – Donation Forms, Fundraising Campaigns & Donor Management / 0.0.1
SureDonation – Donation Forms, Fundraising Campaigns & Donor Management v0.0.1
1.5.1 1.5.0 1.4.0 1.3.0 trunk 0.0.1 1.0.0 1.1.0 1.1.1 1.1.2 1.2.0
← All changes | plugin-loader.php +0 -95 trunk0.0.1 View file →
@@ -7,35 +7,17 @@
7 7
8 8 namespace SureDonation;
9 9
10 10 use SureDonation\Inc\Admin\Admin;
11 -use SureDonation\Inc\Admin\Admin_Ajax;
12 -use SureDonation\Inc\Admin\Admin_Bar;
13 -use SureDonation\Inc\Admin\Analytics;
14 -use SureDonation\Inc\Admin\Notice_Manager;
15 -use SureDonation\Inc\Admin\Notices;
16 11 use SureDonation\Inc\Ajax\Donation_Handler;
17 -use SureDonation\Inc\Emails\Email_Handler;
18 12 use SureDonation\Inc\Assets\Register as Assets_Register;
19 13 use SureDonation\Inc\Blocks\Register as Blocks_Register;
20 14 use SureDonation\Inc\Campaigns\Campaign_Cpt;
21 -use SureDonation\Inc\Campaigns\Campaign_Meta_Tags;
22 -use SureDonation\Inc\Campaigns\Campaign_Page;
23 15 use SureDonation\Inc\Database\Register as Database_Register;
24 -use SureDonation\Inc\Donor_User_Link;
25 16 use SureDonation\Inc\FormEditor\Assets as FormEditor_Assets;
26 -use SureDonation\Inc\Onboarding;
27 -use SureDonation\Inc\Privacy\Privacy_Data;
28 -use SureDonation\Inc\Payments\Offline\Offline_Frontend;
29 -use SureDonation\Inc\Payments\Offline\Offline_Settings;
30 -use SureDonation\Inc\Payments\PayPal\PayPal_Frontend;
31 -use SureDonation\Inc\Payments\PayPal\PayPal_Settings;
32 -use SureDonation\Inc\Payments\PayPal\PayPal_Webhook_Listener;
33 17 use SureDonation\Inc\Payments\Stripe\Stripe_Frontend;
34 18 use SureDonation\Inc\Payments\Stripe\Stripe_Settings;
35 19 use SureDonation\Inc\Payments\Stripe\Stripe_Webhook;
36 -use SureDonation\Inc\Page_Builders\Page_Builders;
37 -use SureDonation\Inc\Pdf\Pdf_Manager;
38 20 use SureDonation\Inc\Post_Types\Donation_Form;
39 21 use SureDonation\Inc\Rest_Api;
40 22 use SureDonation\Inc\Shortcodes\Donation_Form as Donation_Form_Shortcode;
41 23
@@ -128,25 +110,11 @@
128 110 public function load_plugin() {
129 111 // Initialize database tables.
130 112 Database_Register::init();
131 113
132 - // Back-fill notification identities once, in admin context only — it
133 - // writes, and the path it repairs runs during donor payment requests.
134 - add_action( 'admin_init', [ Email_Handler::class, 'backfill_notification_keys' ] );
135 -
136 114 // Initialize Campaign CPT.
137 115 Campaign_Cpt::get_instance();
138 116
139 - // Initialize Campaign Page (default layout seeding + display block helpers).
140 - Campaign_Page::get_instance();
141 -
142 - // Output Open Graph / Twitter Card tags on singular campaign pages.
143 - Campaign_Meta_Tags::get_instance();
144 -
145 - // Page-builder integrations (Bricks now; each self-gates on the builder).
146 - // Page-builder integrations (Elementor now; each self-gates on the builder).
147 - Page_Builders::get_instance();
148 -
149 117 // Initialize Donation Form CPT.
150 118 Donation_Form::get_instance();
151 119
152 120 // Initialize Admin.
@@ -151,24 +119,10 @@
151 119
152 120 // Initialize Admin.
153 121 if ( is_admin() ) {
154 122 Admin::get_instance();
155 - Admin_Ajax::get_instance();
156 - Pdf_Manager::get_instance();
157 - Onboarding::get_instance();
158 - Notices::get_instance();
159 - Notice_Manager::get_instance();
160 123 }
161 124
162 - // Payment-mode toolbar indicator. Loaded outside is_admin() so it also
163 - // appears in the front-end admin bar; it self-gates on capability.
164 - Admin_Bar::get_instance();
165 -
166 - // Initialize Analytics. Loaded outside is_admin() so usage events
167 - // fired during REST requests (onboarding, campaign publish) are
168 - // captured; the class gates its own admin-only behavior internally.
169 - Analytics::get_instance();
170 -
171 125 // Initialize REST API.
172 126 Rest_Api::get_instance();
173 127
174 128 // Initialize blocks (must be before init hook fires).
@@ -185,27 +139,12 @@
185 139
186 140 // Initialize shortcodes.
187 141 Donation_Form_Shortcode::get_instance();
188 142
189 - // Register WordPress personal-data export/erase integration.
190 - Privacy_Data::get_instance();
191 -
192 143 // Initialize Stripe payment gateway.
193 144 Stripe_Settings::get_instance();
194 145 Stripe_Webhook::get_instance();
195 146 Stripe_Frontend::get_instance();
196 -
197 - // Initialize Offline payment gateway.
198 - Offline_Settings::get_instance();
199 - Offline_Frontend::get_instance();
200 -
201 - // Initialize PayPal payment gateway.
202 - PayPal_Settings::get_instance();
203 - PayPal_Frontend::get_instance();
204 - PayPal_Webhook_Listener::get_instance();
205 -
206 - // Initialize donor-user linking.
207 - Donor_User_Link::get_instance();
208 147 }
209 148
210 149 /**
211 150 * Setup autoloader for plugin classes.
@@ -230,22 +169,8 @@
230 169 delete_option( 'rewrite_rules' );
231 170
232 171 // Set redirect flag for onboarding.
233 172 update_option( '__suredonation_do_redirect', true );
234 -
235 - // Record install time for the review-notice grace period.
236 - // add_option is a no-op if the value already exists, so it
237 - // never clobbers a real install time on re-activation.
238 - add_option( 'suredonation_install_time', time() );
239 -
240 - // Register the donor role.
241 - if ( ! get_role( 'suredonation_donor' ) ) {
242 - add_role(
243 - 'suredonation_donor',
244 - __( 'Donor', 'suredonation' ),
245 - [ 'read' => true ]
246 - );
247 - }
248 173 }
249 174 );
250 175
251 176 // Deactivation hook.
@@ -252,28 +177,8 @@
252 177 register_deactivation_hook(
253 178 SUREDONATION_FILE,
254 179 static function () {
255 180 update_option( '__suredonation_do_redirect', false );
256 -
257 - // Otherwise the webhook reconciliation stays in cron after the
258 - // plugin is gone, firing at a callback that no longer exists.
259 - wp_clear_scheduled_hook( Stripe_Settings::WEBHOOK_SYNC_HOOK );
260 - }
261 - );
262 -
263 - // Ensure donor role exists (for upgrades without re-activation).
264 - add_action(
265 - 'init',
266 - static function () {
267 - if ( ! get_role( 'suredonation_donor' ) ) {
268 - add_role(
269 - 'suredonation_donor',
270 - __( 'Donor', 'suredonation' ),
271 - [ 'read' => true ]
272 - );
273 - }
274 - // Load plugin text domain.
275 - load_plugin_textdomain( 'suredonation', false, dirname( plugin_basename( SUREDONATION_FILE ) ) . '/languages' );
276 181 }
277 182 );
278 183
279 184 // Initialize plugin after WordPress loads.