← All changes
|
backend/src/Hooks/Actions/OnEnqueueScripts.php
+33
-15
0.7.0.2
→
1.5.5.1
View file →
| @@ -8,8 +8,10 @@ | ||
| 8 | 8 | use FL\Assistant\Data\Transformers\UserTransformer; |
| 9 | 9 | use FL\Assistant\Data\UserState; |
| 10 | 10 | use FL\Assistant\Data\Mockup; |
| 11 | 11 | use FL\Assistant\Services\ThemeService; |
| 12 | +use FL\Assistant\Helpers\BeaverBuilderHelper; | |
| 13 | +use FL\Assistant\System\Integrations\BeaverBuilder; | |
| 12 | 14 | use FLBuilderModel; |
| 13 | 15 | |
| 14 | 16 | /** |
| 15 | 17 | * Class OnEnqueueScripts |
| @@ -26,8 +28,10 @@ | ||
| 26 | 28 | * @var PostsRepository |
| 27 | 29 | */ |
| 28 | 30 | protected $posts; |
| 29 | 31 | |
| 32 | + protected $beaver_builder; | |
| 33 | + | |
| 30 | 34 | /** |
| 31 | 35 | * @var Site |
| 32 | 36 | */ |
| 33 | 37 | protected $site; |
| @@ -49,9 +53,10 @@ | ||
| 49 | 53 | public function __construct( |
| 50 | 54 | UsersRepository $users, |
| 51 | 55 | PostsRepository $posts, |
| 52 | 56 | Site $site, |
| 53 | - UserTransformer $user_transform | |
| 57 | + UserTransformer $user_transform, | |
| 58 | + BeaverBuilder $beaver_builder | |
| 54 | 59 | ) { |
| 55 | 60 | |
| 56 | 61 | $this->users = $users; |
| 57 | 62 | $this->posts = $posts; |
| @@ -56,11 +61,11 @@ | ||
| 56 | 61 | $this->users = $users; |
| 57 | 62 | $this->posts = $posts; |
| 58 | 63 | $this->site = $site; |
| 59 | 64 | $this->user_transform = $user_transform; |
| 65 | + $this->beaver_builder = $beaver_builder; | |
| 60 | 66 | } |
| 61 | 67 | |
| 62 | - | |
| 63 | 68 | /** |
| 64 | 69 | * @return array |
| 65 | 70 | * @throws \Exception |
| 66 | 71 | */ |
| @@ -102,9 +107,9 @@ | ||
| 102 | 107 | |
| 103 | 108 | // Always show in admin bar and hidden in wp-admin. |
| 104 | 109 | if ( is_admin() ) { |
| 105 | 110 | $window['isHidden'] = true; |
| 106 | - $window['hiddenAppearance'] = 'admin_bar'; | |
| 111 | + // $window['hiddenAppearance'] = 'admin_bar'; | |
| 107 | 112 | } |
| 108 | 113 | |
| 109 | 114 | $user_state['window'] = $window; |
| 110 | 115 | |
| @@ -139,13 +144,13 @@ | ||
| 139 | 144 | 'adminURLs' => $this->site->get_admin_urls(), |
| 140 | 145 | 'ajaxUrl' => admin_url( 'admin-ajax.php' ), |
| 141 | 146 | 'apiRoot' => esc_url_raw( get_rest_url() ), |
| 142 | 147 | 'attachmentTypes' => [ |
| 143 | - 'all' => __( 'All', 'fl-assistant' ), | |
| 144 | - 'image' => __( 'Photo', 'fl-assistant' ), | |
| 145 | - 'document' => __( 'Document', 'fl-assistant' ), | |
| 146 | - 'video' => __( 'Video', 'fl-assistant' ), | |
| 147 | - 'audio' => __( 'Audio', 'fl-assistant' ), | |
| 148 | + 'all' => __( 'All', 'assistant' ), | |
| 149 | + 'image' => __( 'Photo', 'assistant' ), | |
| 150 | + 'document' => __( 'Document', 'assistant' ), | |
| 151 | + 'video' => __( 'Video', 'assistant' ), | |
| 152 | + 'audio' => __( 'Audio', 'assistant' ), | |
| 148 | 153 | ], |
| 149 | 154 | 'contentTypes' => $this->posts->get_types(), |
| 150 | 155 | 'contentStatus' => $this->posts->get_stati(), |
| 151 | 156 | 'currentPageView' => $this->site->get_current_view(), |
| @@ -153,12 +158,14 @@ | ||
| 153 | 158 | 'defaultAppName' => 'fl-home', |
| 154 | 159 | 'emptyTrashDays' => EMPTY_TRASH_DAYS, |
| 155 | 160 | 'frameDefaults' => UserState::getFrameDefaults(), |
| 156 | 161 | 'homeUrl' => home_url(), |
| 162 | + 'baseUrl' => get_bloginfo( 'url' ), | |
| 157 | 163 | 'isShowingAdminBar' => is_admin_bar_showing(), |
| 158 | 164 | 'isAdmin' => is_admin(), |
| 159 | 165 | 'isSiteAdmin' => is_super_admin(), |
| 160 | 166 | 'isLocalhost' => $this->site->is_local(), |
| 167 | + 'isBBInstalled' => $this->beaver_builder->is_installed(), | |
| 161 | 168 | 'mockup' => Mockup::get(), |
| 162 | 169 | 'nonce' => [ |
| 163 | 170 | 'api' => wp_create_nonce( 'wp_rest' ), |
| 164 | 171 | 'reply' => wp_create_nonce( 'replyto-comment' ), |
| @@ -164,8 +171,10 @@ | ||
| 164 | 171 | 'reply' => wp_create_nonce( 'replyto-comment' ), |
| 165 | 172 | 'replyUnfiltered' => wp_create_nonce( 'unfiltered-html-comment' ), |
| 166 | 173 | 'updates' => wp_create_nonce( 'updates' ), |
| 167 | 174 | ], |
| 175 | + 'name' => 'Assistant Plugin', | |
| 176 | + 'version' => FL_ASSISTANT_VERSION, | |
| 168 | 177 | 'pluginURL' => FL_ASSISTANT_URL, |
| 169 | 178 | 'taxonomies' => $this->posts->get_taxononies(), |
| 170 | 179 | 'userRoles' => $this->users->get_roles(), |
| 171 | 180 | 'cloudConfig' => [ |
| @@ -174,8 +183,9 @@ | ||
| 174 | 183 | 'pusherKey' => FL_ASSISTANT_PUSHER_KEY, |
| 175 | 184 | 'pusherCluster' => FL_ASSISTANT_PUSHER_CLUSTER, |
| 176 | 185 | ], |
| 177 | 186 | 'embedInBB' => FL_ASST_SUPPORTS_BB, |
| 187 | + 'isBBExtension' => BeaverBuilderHelper::is_assistant_extension(), | |
| 178 | 188 | 'themeSlug' => $theme['slug'], |
| 179 | 189 | 'themeParentSlug' => $theme['parent'] ? $theme['parent']['slug'] : null, |
| 180 | 190 | ]; |
| 181 | 191 | } |
| @@ -184,8 +194,13 @@ | ||
| 184 | 194 | * Check if the frontend scripts/styles should be enqueued |
| 185 | 195 | */ |
| 186 | 196 | public function should_enqueue() { |
| 187 | 197 | |
| 198 | + // Don't enqueue outside of BB if in extension mode. | |
| 199 | + if ( BeaverBuilderHelper::is_assistant_extension() && class_exists( 'FLBuilder' ) && ! FLBuilderModel::is_builder_active() ) { | |
| 200 | + return false; | |
| 201 | + } | |
| 202 | + | |
| 188 | 203 | // Users must be logged in. |
| 189 | 204 | if ( ! is_user_logged_in() ) { |
| 190 | 205 | return false; |
| 191 | 206 | } |
| @@ -194,10 +209,10 @@ | ||
| 194 | 209 | if ( is_customize_preview() ) { |
| 195 | 210 | return false; |
| 196 | 211 | } |
| 197 | 212 | |
| 198 | - // Don't show in admin iframes. | |
| 199 | - if ( defined( 'IFRAME_REQUEST' ) && IFRAME_REQUEST ) { | |
| 213 | + // Don't show in iframes. | |
| 214 | + if ( defined( 'IFRAME_REQUEST' ) && IFRAME_REQUEST && ! isset( $_GET['fl_builder_ui'] ) ) { | |
| 200 | 215 | return false; |
| 201 | 216 | } |
| 202 | 217 | |
| 203 | 218 | // Don't show in post previews. |
| @@ -204,8 +219,13 @@ | ||
| 204 | 219 | if ( isset( $_GET['fl_asst_post_preview'] ) ) { |
| 205 | 220 | return false; |
| 206 | 221 | } |
| 207 | 222 | |
| 223 | + // Don't show in Oxygen. | |
| 224 | + if ( isset( $_GET['ct_builder'] ) ) { | |
| 225 | + return false; | |
| 226 | + } | |
| 227 | + | |
| 208 | 228 | // User is logged in, and the current request is not customizer or an iframe |
| 209 | 229 | $state = UserState::get(); |
| 210 | 230 | |
| 211 | 231 | // Don't show Assistant in the WP Admin if the user has turned it off. |
| @@ -217,9 +237,9 @@ | ||
| 217 | 237 | if ( ! current_user_can( 'edit_others_posts' ) ) { |
| 218 | 238 | return false; |
| 219 | 239 | } |
| 220 | 240 | |
| 221 | - return true; | |
| 241 | + return apply_filters( 'fl_assistant_should_enqueue', true ); | |
| 222 | 242 | } |
| 223 | 243 | |
| 224 | 244 | public function register_vendors() { |
| 225 | 245 | |
| @@ -317,12 +337,10 @@ | ||
| 317 | 337 | wp_localize_script( 'fl-assistant', 'FL_ASSISTANT_CONFIG', $config ); |
| 318 | 338 | wp_localize_script( 'fl-assistant', 'FL_ASSISTANT_INITIAL_STATE', $state ); |
| 319 | 339 | |
| 320 | 340 | // Apps - loaded in footer |
| 321 | - wp_enqueue_script( 'fl-assistant-apps', $url . 'build/apps.js', [ 'fl-assistant', 'html2canvas' ], $ver, true ); | |
| 322 | - | |
| 323 | - // Currently don't need apps stylesheet | |
| 324 | - //wp_enqueue_style( 'fl-assistant-apps', $url . 'build/apps.css', [ 'fl-assistant' ], $ver, null ); | |
| 341 | + $apps = BeaverBuilderHelper::is_assistant_extension() ? 'apps-cloud.js' : 'apps.js'; | |
| 342 | + wp_enqueue_script( 'fl-assistant-apps', $url . "build/$apps", [ 'fl-assistant', 'html2canvas' ], $ver, true ); | |
| 325 | 343 | |
| 326 | 344 | // Render - loaded in footer |
| 327 | 345 | wp_enqueue_script( 'fl-assistant-render', $url . 'build/render.js', [ 'fl-assistant' ], $ver, true ); |
| 328 | 346 | wp_enqueue_style( 'fl-assistant-render', $url . 'build/render.css', [ 'fl-assistant' ], $ver, null ); |