PluginProbe ʕ •ᴥ•ʔ
Advanced Ads – Ad Manager & AdSense / 2.0.24
Advanced Ads – Ad Manager & AdSense v2.0.24
2.0.24 2.0.23 2.0.22 2.0.21 1.38.0 1.39.0 1.39.1 1.39.2 1.39.3 1.39.4 1.4.0 1.4.1 1.4.2 1.4.3 1.4.4 1.4.5 1.4.6 1.4.7 1.4.8 1.4.9 1.40.0 1.40.1 1.40.2 1.41.0 1.42.0 1.42.1 1.42.2 1.43.0 1.44.0 1.44.1 1.45.0 1.45.1 1.46.0 1.47.0 1.47.1 1.47.2 1.47.3 1.47.4 1.47.5 1.48.0 1.48.1 1.49.0 1.5.0 1.5.0.1 1.5.1 1.5.2 1.5.2.1 1.5.4 1.5.4.1 1.5.5 1.50.0 1.51.0 1.51.1 1.51.2 1.51.3 1.52.0 1.52.1 1.52.2 1.52.3 1.52.4 1.53.0 1.53.1 1.53.2 1.54.0 1.54.1 1.55.0 1.56.0 1.56.1 1.56.2 1.56.3 1.56.4 1.6 1.6.1 1.6.10 1.6.10.1 1.6.10.2 1.6.11 1.6.11.1 1.6.12 1.6.13 1.6.14 1.6.15 1.6.16 1.6.17 1.6.17.1 1.6.17.2 1.6.2 1.6.2.1 1.6.3 1.6.4 1.6.4.1 1.6.5 1.6.6 1.6.6.1 1.6.7 1.6.7.1 1.6.8 1.6.8.1 1.6.8.2 1.6.8.3 1.6.9 1.6.9.1 1.6.9.2 1.6.9.3 1.6.9.4 1.7 1.7.0.1 1.7.0.2 1.7.0.3 1.7.1 1.7.1.1 1.7.1.2 1.7.1.3 1.7.1.4 1.7.1.5 1.7.10 trunk 1.7.11 1.0.1 1.7.12 1.0.2 1.7.13 1.0.3 1.7.14 1.1.0 1.7.15 1.1.1 1.7.16 1.1.2 1.7.17 1.1.3 1.7.18 1.10 1.7.19 1.10.1 1.7.2 1.10.10 1.7.2.1 1.10.11 1.7.20 1.10.12 1.7.21 1.10.2 1.7.22 1.10.3 1.7.23 1.10.4 1.7.24 1.10.5 1.7.25 1.10.6 1.7.3 1.10.7 1.7.4 1.10.8 1.7.4.1 1.10.9 1.7.4.2 1.11 1.7.4.3 1.11.1 1.7.4.4 1.11.2 1.7.4.5 1.12 1.7.5 1.13 1.7.5.1 1.13.1 1.7.6 1.13.2 1.7.7 1.13.3 1.7.8 1.13.4 1.7.9 1.13.5 1.7.9.1 1.13.6 1.7.9.2 1.13.7 1.7.9.3 1.13.8 1.8 1.14 1.8.1 1.14.1 1.8.10 1.14.10 1.8.11 1.14.11 1.8.12 1.14.2 1.8.13 1.14.3 1.8.14 1.14.4 1.8.15 1.14.5 1.8.16 1.14.6 1.8.17 1.14.7 1.8.18 1.14.8 1.8.19 1.14.9 1.8.2 1.15 1.8.20 1.16 1.8.21 1.16.1 1.8.22 1.17 1.8.23 1.17.1 1.8.24 1.17.10 1.8.25 1.17.10-rc.1 1.8.26 1.17.11 1.8.27 1.17.12 1.8.28 1.17.12-rc.1 1.8.29 1.17.2 1.8.3 1.17.3 1.8.30 1.17.4 1.8.4 1.17.5 1.8.5 1.17.6 1.8.6 1.17.7 1.8.7 1.17.8 1.8.8 1.17.9 1.8.9 1.17.9-beta.1 1.9 1.18.0 2.0.0 1.19.0 2.0.1 1.19.1 2.0.10 1.2 2.0.11 1.2.1 2.0.12 1.2.2 2.0.13 1.2.3 2.0.14 1.2.4 2.0.15 1.2.5 2.0.16 1.2.6 2.0.17 1.2.7 2.0.18 1.20.0 2.0.19 1.20.0-rc.1 2.0.2 1.20.0-rc.2 2.0.20 1.20.1 2.0.3 1.20.2 2.0.4 1.20.3 2.0.5 1.21.0 2.0.6 1.21.1 2.0.7 1.22.0 2.0.8 1.22.1 2.0.9 1.22.2 1.23.0 1.23.1 1.23.2 1.24.0 1.24.1 1.24.2 1.25.0 1.25.1 1.26.0 1.27.0 1.28.0 1.29.0 1.29.1 1.3 1.3.1 1.3.10 1.3.11 1.3.12 1.3.13 1.3.14 1.3.15 1.3.16 1.3.17 1.3.18 1.3.2 1.3.3 1.3.4 1.3.5 1.3.6 1.3.7 1.3.8 1.3.9 1.30.0 1.30.1 1.30.2 1.30.2-rc.1 1.30.3 1.30.4 1.30.4-rc.1 1.30.5 1.31.0 1.31.1 1.32.0 1.32.0-rc.1 1.33.0 1.33.1 1.33.2 1.34.0 1.35.0 1.35.1 1.36.0 1.36.1 1.36.2 1.36.3 1.37.0 1.37.1 1.37.2
advanced-ads / includes / admin / class-assets.php
advanced-ads / includes / admin Last commit date
ads 1 week ago groups 1 week ago metaboxes 1 year ago pages 3 months ago placements 1 week ago class-action-links.php 1 week ago class-addon-box.php 1 year ago class-addon-updater.php 3 months ago class-admin-menu.php 1 week ago class-admin-notices.php 1 year ago class-ajax.php 3 months ago class-assets.php 1 week ago class-authors.php 1 year ago class-edd-updater.php 4 weeks ago class-list-filters.php 1 week ago class-marketing.php 1 year ago class-metabox-ad-settings.php 1 year ago class-metabox-ad.php 1 year ago class-misc.php 1 week ago class-page-quick-edit.php 1 year ago class-plugin-installer.php 1 year ago class-post-list.php 1 year ago class-post-types.php 1 week ago class-screen-options.php 3 months ago class-settings.php 1 year ago class-shortcode-creator.php 1 year ago class-system-info.php 1 year ago class-tinymce.php 2 years ago class-translation-promo.php 1 year ago class-upgrades.php 1 year ago class-version-control.php 3 months ago class-welcome.php 1 year ago class-wordpress-dashboard.php 1 year ago index.php 2 years ago
class-assets.php
217 lines
1 <?php
2 /**
3 * Assets manages the enqueuing of styles and scripts for the administration area.
4 *
5 * @package AdvancedAds
6 * @author Advanced Ads <info@wpadvancedads.com>
7 * @since 1.47.0
8 */
9
10 namespace AdvancedAds\Admin;
11
12 use AdvancedAds\Constants;
13 use Advanced_Ads_AdSense_Admin;
14 use Advanced_Ads_Display_Conditions;
15 use AdvancedAds\Utilities\Conditional;
16 use AdvancedAds\Framework\Interfaces\Integration_Interface;
17
18 defined( 'ABSPATH' ) || exit;
19
20 /**
21 * Admin Assets.
22 */
23 class Assets implements Integration_Interface {
24
25 /**
26 * Hook into WordPress.
27 *
28 * @return void
29 */
30 public function hooks(): void {
31 add_action( 'admin_enqueue_scripts', [ $this, 'enqueue_styles' ], 10, 0 );
32 add_action( 'admin_enqueue_scripts', [ $this, 'enqueue_scripts' ], 9, 0 );
33 }
34
35 /**
36 * Enqueue styles
37 *
38 * @return void
39 */
40 public function enqueue_styles(): void {
41 $wp_screen = get_current_screen();
42
43 // Bail if we should bail.
44 if ( $this->should_bail() ) {
45 return;
46 }
47
48 // TODO: made them load conditionaly.
49 if ( 'dashboard' !== $wp_screen->id ) {
50 wp_advads()->registry->enqueue_style( 'ui' );
51 wp_advads()->registry->enqueue_style( 'admin' );
52 }
53
54 if ( Conditional::is_screen_advanced_ads() ) {
55 wp_advads()->registry->enqueue_style( 'notifications' );
56 }
57 }
58
59 /**
60 * Enqueue scripts
61 *
62 * @return void
63 */
64 public function enqueue_scripts(): void {
65 global $post;
66
67 $screen = get_current_screen();
68 $this->enqueue_endpoints();
69 $this->enqueue_security();
70 $this->enqueue_site_info();
71 $this->enqueue_i18n();
72
73 // Bail if we should bail.
74 if ( $this->should_bail() ) {
75 return;
76 }
77
78 // TODO: add conditional loading.
79 wp_advads()->registry->enqueue_script( 'admin-global' );
80 wp_advads()->registry->enqueue_script( 'commands' );
81
82 $params = [
83 'ajax_nonce' => wp_create_nonce( 'advanced-ads-admin-ajax-nonce' ),
84 'create_ad_url' => esc_url( admin_url( 'post-new.php?post_type=advanced_ads' ) ),
85 'create_your_first_ad' => __( 'Create your first ad', 'advanced-ads' ),
86 ];
87 wp_advads_json_add( $params, 'advadsglobal' );
88
89 // TODO: remove later start using global data variable.
90 wp_advads_json_add( 'ajax_nonce', wp_create_nonce( 'advanced-ads-admin-ajax-nonce' ), 'advadsglobal' );
91
92 if ( Conditional::is_screen_advanced_ads() ) {
93 wp_advads()->registry->enqueue_script( 'admin' );
94 wp_advads()->registry->enqueue_script( 'conditions' );
95 wp_advads()->registry->enqueue_script( 'adblocker-image-data' );
96 wp_advads()->registry->enqueue_script( 'notifications-center' );
97
98 $translation_array = [
99 'condition_or' => __( 'or', 'advanced-ads' ),
100 'condition_and' => __( 'and', 'advanced-ads' ),
101 'after_paragraph_promt' => __( 'After which paragraph?', 'advanced-ads' ),
102 'page_level_ads_enabled' => Advanced_Ads_AdSense_Admin::get_auto_ads_messages()['enabled'],
103 'today' => __( 'Today', 'advanced-ads' ),
104 'yesterday' => __( 'Yesterday', 'advanced-ads' ),
105 'this_month' => __( 'This Month', 'advanced-ads' ),
106 /* translators: 1: The number of days. */
107 'last_n_days' => __( 'Last %1$d days', 'advanced-ads' ),
108 /* translators: 1: An error message. */
109 'error_message' => __( 'An error occurred: %1$s', 'advanced-ads' ),
110 'all' => __( 'All', 'advanced-ads' ),
111 'active' => __( 'Active', 'advanced-ads' ),
112 'no_results' => __( 'There were no results returned for this ad. Please make sure it is active, generating impressions and double check your ad parameters.', 'advanced-ads' ),
113 'show_inactive_ads' => __( 'Show inactive ads', 'advanced-ads' ),
114 'hide_inactive_ads' => __( 'Hide inactive ads', 'advanced-ads' ),
115 'display_conditions_form_name' => Advanced_Ads_Display_Conditions::FORM_NAME, // not meant for translation.
116 'close' => __( 'Close', 'advanced-ads' ),
117 'close_save' => __( 'Close and save', 'advanced-ads' ),
118 'confirmation' => __( 'Data you have entered has not been saved. Are you sure you want to discard your changes?', 'advanced-ads' ),
119 'admin_page' => $screen->id,
120 'placements_allowed_ads' => [
121 'action' => 'advads_placements_allowed_ads',
122 'nonce' => wp_create_nonce( 'advads-create-new-placement' ),
123 ],
124 ];
125
126 // TODO: remove later start using global data variable.
127 wp_advads_json_add( $translation_array, 'advadstxt' );
128 }
129
130 if ( Constants::POST_TYPE_AD === $screen->id ) {
131 wp_enqueue_media( [ 'post' => $post ] );
132 }
133
134 // Ad edit screen.
135 if ( 'post' === $screen->base && Constants::POST_TYPE_AD === $screen->post_type ) {
136 wp_advads()->registry->enqueue_script( 'ad-positioning' );
137 }
138
139 if ( in_array( $screen->id, [ 'edit-post', 'edit-page' ], true ) && current_user_can( 'edit_posts' ) ) {
140 wp_advads()->registry->enqueue_script( 'page-quick-edit' );
141 wp_advads_json_add( 'page_quick_edit', [ 'nonce' => wp_create_nonce( 'advads-post-quick-edit' ) ] );
142 }
143 }
144
145 /**
146 * Global variables: advancedAds
147 *
148 * @return void
149 */
150 private function enqueue_security() {
151 $security = [
152 'ajaxNonce' => wp_create_nonce( 'advanced-ads-admin-ajax-nonce' ),
153 ];
154
155 wp_advads_json_add( 'security', $security );
156 }
157
158 /**
159 * Global variables: advancedAds
160 *
161 * @return void
162 */
163 private function enqueue_site_info() {
164 $endpoints = [
165 'blogId' => get_current_blog_id(),
166 'homeUrl' => get_home_url(),
167 ];
168
169 wp_advads_json_add( 'siteInfo', $endpoints );
170 }
171
172 /**
173 * Global variables: advancedAds
174 *
175 * @return void
176 */
177 private function enqueue_endpoints() {
178 $endpoints = [
179 'adminUrl' => esc_url( admin_url( '/' ) ),
180 'ajaxUrl' => esc_url( admin_url( 'admin-ajax.php' ) ),
181 'assetsUrl' => esc_url( ADVADS_BASE_URL ),
182 'editAd' => esc_url( admin_url( 'post.php?action=edit&post=' ) ),
183 ];
184
185 wp_advads_json_add( 'endpoints', $endpoints );
186 }
187
188 /**
189 * Localize i18n strings
190 *
191 * @return void
192 */
193 private function enqueue_i18n() {
194 $data = [
195 'btnCloseLabel' => __( 'Close', 'advanced-ads' ),
196 'searchResultsLabel' => __( 'Showing search results for', 'advanced-ads' ),
197 ];
198
199 wp_advads_json_add( 'i18n', $data );
200 }
201
202 /**
203 * Check if we should bail from enqueueing assets.
204 *
205 * @return bool
206 */
207 private function should_bail(): bool {
208 $wp_screen = get_current_screen();
209
210 $bail_screens = [
211 'advanced-ads_page_advanced-ads-tools',
212 ];
213
214 return in_array( $wp_screen->id, $bail_screens, true );
215 }
216 }
217