PluginProbe
Extendify / 3.2.2
Extendify v3.2.2
3.2.2 3.2.1 3.2.0 3.1.6 3.1.5 3.1.4 3.1.3 3.1.2 3.1.1 3.1.0 3.0.6 3.0.5 3.0.4 trunk 0.1.0 0.10.0 0.10.1 0.10.2 0.11.0 0.11.1 0.2.0 0.3.0 0.3.1 0.4.0 0.5.0 All 128 releases
← All changes | bootstrap.php +40 -6 3.1.4 → 3.2.2 View file →
@@ -8,8 +8,9 @@
8 8
9 9 use Extendify\AdminPageRouter;
10 10 use Extendify\Assist\Admin as AssistAdmin;
11 11 use Extendify\Agent\Admin as AgentAdmin;
12 +use Extendify\ComingSoon\Frontend as ComingSoonFrontend;
12 13 use Extendify\Config;
13 14 use Extendify\Draft\Admin as DraftAdmin;
14 15 use Extendify\HelpCenter\Admin as HelpCenterAdmin;
15 16 use Extendify\Insights;
@@ -16,24 +17,36 @@
16 17 use Extendify\Launch\Admin as LaunchAdmin;
17 18 use Extendify\AutoLaunch\Admin as AutoLaunchAdmin;
18 19 use Extendify\Library\Admin as LibraryAdmin;
19 20 use Extendify\Library\Frontend as LibraryFrontend;
21 +use Extendify\Mcp\Server as McpServer;
22 +use Extendify\Mcp\OAuth\Metadata as McpMetadata;
23 +use Extendify\Mcp\OAuth\Authorize as McpAuthorize;
24 +use Extendify\Mcp\OAuth\TokenEndpoint as McpTokenEndpoint;
25 +use Extendify\Mcp\OAuth\RegistrationEndpoint as McpRegistrationEndpoint;
26 +use Extendify\Mcp\Profile as McpProfile;
27 +use Extendify\Mcp\Lifecycle as McpLifecycle;
28 +use Extendify\Mcp\Jobs as McpJobs;
20 29 use Extendify\Agent\Frontend as AgentFrontend;
21 30 use Extendify\QuickEdit\Frontend as QuickEditFrontend;
22 31 use Extendify\PageCreator\Admin as PageCreatorAdmin;
23 32 use Extendify\PartnerData;
24 -use Extendify\PartnerNotification\Admin as PartnerNotificationAdmin;
33 +use Extendify\Notifications\Admin as NotificationsAdmin;
34 +use Extendify\Notifications\Frontend as NotificationsFrontend;
25 35 use Extendify\Toolbar\Admin as ToolbarAdmin;
26 36 use Extendify\Toolbar\Frontend as ToolbarFrontend;
27 37 use Extendify\Recommendations\Admin as RecommendationsAdmin;
28 38 use Extendify\PluginNotifications\Admin as PluginNotificationsAdmin;
29 39 use Extendify\Shared\Admin as SharedAdmin;
30 -use Extendify\Shared\DataProvider\PartnerNotificationData;
40 +use Extendify\Shared\DataProvider\NotificationData;
31 41 use Extendify\Shared\DataProvider\ResourceData;
42 +use Extendify\Shared\Services\BlockStyleVariations;
32 43 use Extendify\Shared\Services\ForcePluginReinstall;
33 44 use Extendify\Shared\Services\Import\ImagesImporter;
34 45 use Extendify\Shared\Services\PluginRedirectDisabler;
46 +use Extendify\Shared\Services\PluginsActivation\SimplyBook;
35 47 use Extendify\Shared\Services\VersionMigrator;
48 +use Extendify\SiteVisibility;
36 49
37 50 if (!defined('EXTENDIFY_REQUIRED_CAPABILITY')) {
38 51 define('EXTENDIFY_REQUIRED_CAPABILITY', 'manage_options');
39 52 }
@@ -104,8 +117,14 @@
104 117
105 118 // Force-reinstall support for /wp/v2/plugins (opt-in via request header).
106 119 ForcePluginReinstall::register();
107 120
121 + // Keeps our design variation names registered so global styles can hold them.
122 + BlockStyleVariations::register();
123 +
124 + // Their registration callback comes in unauthenticated, so this cannot sit behind the capability gate.
125 + SimplyBook::register();
126 +
108 127 // This class will fetch and cache partner data to be used
109 128 // throughout every class below. If opt in.
110 129 new PartnerData();
111 130
@@ -114,12 +133,28 @@
114 133
115 134 // Set up scheduled cache (if opt-in and active).
116 135 if (!PartnerData::setting('deactivated')) {
117 136 ResourceData::scheduleCache();
118 - PartnerNotificationData::scheduleCache();
137 + NotificationData::scheduleCache();
119 138 }
120 139
140 + // A token request carries no session and would fail the capability check.
141 + if (defined('EXTENDIFY_PARTNER_ID') && !PartnerData::setting('deactivated')) {
142 + McpServer::register();
143 + McpMetadata::register();
144 + McpAuthorize::register();
145 + McpTokenEndpoint::register();
146 + McpRegistrationEndpoint::register();
147 + McpProfile::register();
148 + McpLifecycle::register();
149 + McpJobs::register();
150 + }
151 +
121 152 if (!current_user_can(EXTENDIFY_REQUIRED_CAPABILITY)) {
153 + if (!SiteVisibility::isPublished()) {
154 + new ComingSoonFrontend();
155 + }
156 +
122 157 return;
123 158 }
124 159
125 160 // The config class will collect information about the
@@ -191,11 +226,10 @@
191 226 if (PartnerData::setting('showProductRecommendations') || constant('EXTENDIFY_DEVMODE')) {
192 227 new RecommendationsAdmin();
193 228 }
194 229
195 - if (PartnerData::setting('showPartnerNotifications') || constant('EXTENDIFY_DEVMODE')) {
196 - new PartnerNotificationAdmin();
197 - }
230 + new NotificationsAdmin();
231 + new NotificationsFrontend();
198 232
199 233 if (PartnerData::setting('showDraft') || constant('EXTENDIFY_DEVMODE')) {
200 234 new DraftAdmin();
201 235 }