Advanced Ads - Version 1.8.24

Version Description

  • fixed minor conflict caused by Bridge theme
  • fixed links to support page
  • fixed possibility to create an infinite loop by adding an ad (type: group) to a group which it represents
  • fixed issue when rebuilding Ad Blocker file folder and using not direct filesystem method
Download this release

Release Info

Developer webzunft
Plugin Icon 128x128 Advanced Ads
Version 1.8.24
Comparing to
See all releases

Code changes from version 1.8.23 to 1.8.24

admin/assets/js/admin.js CHANGED
@@ -192,10 +192,10 @@ jQuery( document ).ready(function ($) {
192
  // dynamically change label
193
  $(document).on('click', '.advads-conditions-connector input', function(){
194
  if( $( this ).is(':checked' ) ){
195
- $( this ).button( "option", "label", advadstxt.condition_or );
196
  $( this ).parents( '.advads-conditions-connector' ).addClass('advads-conditions-connector-or').removeClass('advads-conditions-connector-and');
197
  } else {
198
- $( this ).button( "option", "label", advadstxt.condition_and );
199
  $( this ).parents( '.advads-conditions-connector' ).addClass('advads-conditions-connector-and').removeClass('advads-conditions-connector-or');
200
  }
201
  });
@@ -943,7 +943,9 @@ advanced_ads_admin.filesystem = {
943
  hostname: jQuery( '#hostname' ).val(),
944
  connection_type: jQuery( 'input[name="connection_type"]:checked' ).val(),
945
  public_key: jQuery( '#public_key' ).val(),
946
- private_key: jQuery( '#private_key' ).val()
 
 
947
  }
948
  };
949
 
192
  // dynamically change label
193
  $(document).on('click', '.advads-conditions-connector input', function(){
194
  if( $( this ).is(':checked' ) ){
195
+ $( this ).advads_button( "option", "label", advadstxt.condition_or );
196
  $( this ).parents( '.advads-conditions-connector' ).addClass('advads-conditions-connector-or').removeClass('advads-conditions-connector-and');
197
  } else {
198
+ $( this ).advads_button( "option", "label", advadstxt.condition_and );
199
  $( this ).parents( '.advads-conditions-connector' ).addClass('advads-conditions-connector-and').removeClass('advads-conditions-connector-or');
200
  }
201
  });
943
  hostname: jQuery( '#hostname' ).val(),
944
  connection_type: jQuery( 'input[name="connection_type"]:checked' ).val(),
945
  public_key: jQuery( '#public_key' ).val(),
946
+ private_key: jQuery( '#private_key' ).val(),
947
+ _fs_nonce: jQuery( '#_fs_nonce' ).val()
948
+
949
  }
950
  };
951
 
admin/class-advanced-ads-admin.php CHANGED
@@ -257,7 +257,7 @@ class Advanced_Ads_Admin {
257
  'advanced-ads_page_advanced-ads-settings', // settings
258
  'toplevel_page_advanced-ads', // overview
259
  'admin_page_advanced-ads-debug', // debug
260
- 'advanced-ads_page_advanced-ads-support', // support
261
  'admin_page_advanced-ads-import-export', // import & export
262
  ));
263
 
@@ -365,7 +365,7 @@ class Advanced_Ads_Admin {
365
  //array_unshift( $links, $settings_link );
366
 
367
  // add link to support page
368
- $support_link = '<a href="' . esc_url( admin_url( 'admin.php?page=advanced-ads-support' ) ) . '">' . __( 'Support', 'advanced-ads' ) . '</a>';
369
  array_unshift( $links, $support_link );
370
 
371
  // add link to add-ons
257
  'advanced-ads_page_advanced-ads-settings', // settings
258
  'toplevel_page_advanced-ads', // overview
259
  'admin_page_advanced-ads-debug', // debug
260
+ // 'advanced-ads_page_advanced-ads-support', // support
261
  'admin_page_advanced-ads-import-export', // import & export
262
  ));
263
 
365
  //array_unshift( $links, $settings_link );
366
 
367
  // add link to support page
368
+ $support_link = '<a href="' . esc_url( admin_url( 'admin.php?page=advanced-ads-settings#top#support' ) ) . '">' . __( 'Support', 'advanced-ads' ) . '</a>';
369
  array_unshift( $links, $support_link );
370
 
371
  // add link to add-ons
admin/includes/class-ad-groups-list.php CHANGED
@@ -393,7 +393,7 @@ class Advanced_Ads_Groups_List {
393
 
394
  return new WP_Error( 'invalid_ad_group', __( 'Invalid Ad Group', 'advanced-ads' ) );
395
  }
396
-
397
  // check user rights
398
  if( ! current_user_can( Advanced_Ads_Plugin::user_cap( 'advanced_ads_edit_ads') ) ) {
399
  return new WP_Error( 'invalid_ad_group_rights', __( 'You don’t have permission to change the ad groups', 'advanced-ads' ) );
@@ -425,12 +425,27 @@ class Advanced_Ads_Groups_List {
425
 
426
  $group = new Advanced_Ads_Group( $_group['id'] );
427
  if ( isset( $_group['ads'] ) && is_array( $_group['ads'] ) ) {
428
- // save ad weights
429
- $group->save_ad_weights( $_group['ads'] );
430
-
431
  foreach ( $_group['ads'] as $_ad_id => $_ad_weight ) {
432
- $ad_groups_assoc[ $_ad_id ][] = (int) $_group_id;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
433
  }
 
 
 
434
  }
435
 
436
  // save other attributes
393
 
394
  return new WP_Error( 'invalid_ad_group', __( 'Invalid Ad Group', 'advanced-ads' ) );
395
  }
396
+
397
  // check user rights
398
  if( ! current_user_can( Advanced_Ads_Plugin::user_cap( 'advanced_ads_edit_ads') ) ) {
399
  return new WP_Error( 'invalid_ad_group_rights', __( 'You don’t have permission to change the ad groups', 'advanced-ads' ) );
425
 
426
  $group = new Advanced_Ads_Group( $_group['id'] );
427
  if ( isset( $_group['ads'] ) && is_array( $_group['ads'] ) ) {
 
 
 
428
  foreach ( $_group['ads'] as $_ad_id => $_ad_weight ) {
429
+
430
+ /**
431
+ * check if this ad is representing the current group and remove it in this case
432
+ * could cause an infinite loop otherwise
433
+ * see also /classes/ad_type_group.php::remove_from_ad_group()
434
+ */
435
+ $ad = new Advanced_Ads_Ad( $_ad_id );
436
+ if( isset( $ad->type )
437
+ && 'group' === $ad->type
438
+ && isset( $ad->output['group_id'] )
439
+ && absint( $ad->output['group_id'] ) == $_group_id
440
+ ){
441
+ unset( $_group['ads'][ $_ad_id ] );
442
+ } else {
443
+ $ad_groups_assoc[ $_ad_id ][] = (int) $_group_id;
444
+ }
445
  }
446
+
447
+ // save ad weights
448
+ $group->save_ad_weights( $_group['ads'] );
449
  }
450
 
451
  // save other attributes
admin/includes/class-menu.php CHANGED
@@ -102,12 +102,14 @@ class Advanced_Ads_Admin_Menu {
102
  * could break if WordPress changes the API at one point, but it didn’t do that for many years
103
  */
104
  global $submenu;
105
- $submenu['advanced-ads'][] = array(
106
- __('Support', 'advanced-ads' ), // title
107
- Advanced_Ads_Plugin::user_cap( 'advanced_ads_manage_options'), // capability
108
- admin_url( 'admin.php?page=advanced-ads-settings#top#support' ),
109
- __('Support 2', 'advanced-ads' ), // not sure what this is, but it is in the API
110
- );
 
 
111
 
112
  // allows extensions to insert sub menu pages
113
  do_action( 'advanced-ads-submenu-pages', $this->plugin_slug );
102
  * could break if WordPress changes the API at one point, but it didn’t do that for many years
103
  */
104
  global $submenu;
105
+ if(current_user_can( Advanced_Ads_Plugin::user_cap( 'advanced_ads_manage_options') ) ){
106
+ $submenu['advanced-ads'][] = array(
107
+ __('Support', 'advanced-ads' ), // title
108
+ Advanced_Ads_Plugin::user_cap( 'advanced_ads_manage_options'), // capability
109
+ admin_url( 'admin.php?page=advanced-ads-settings#top#support' ),
110
+ __('Support', 'advanced-ads' ), // not sure what this is, but it is in the API
111
+ );
112
+ }
113
 
114
  // allows extensions to insert sub menu pages
115
  do_action( 'advanced-ads-submenu-pages', $this->plugin_slug );
admin/views/ad-info-after-textarea.php CHANGED
@@ -3,7 +3,7 @@ if ( defined ( 'WP_DEBUG' ) && WP_DEBUG &&
3
  ( $error = Advanced_Ads_Admin_Ad_Type::check_ad_dom_is_not_valid( $ad ) ) ) : ?>
4
  <p class="advads-error-message">
5
  <?php _e( 'The code of this ad might not work properly with the <em>Content</em> placement.', 'advanced-ads' );
6
- ?>&nbsp;<?php printf(__( 'Reach out to <a href="%s">support</a> to get help.', 'advanced-ads' ), admin_url('admin.php?page=advanced-ads-support') );
7
  if ( true === WP_DEBUG ) : ?>
8
  <span style="white-space:pre-wrap"><?php echo $error; ?></span>
9
  <?php endif;
3
  ( $error = Advanced_Ads_Admin_Ad_Type::check_ad_dom_is_not_valid( $ad ) ) ) : ?>
4
  <p class="advads-error-message">
5
  <?php _e( 'The code of this ad might not work properly with the <em>Content</em> placement.', 'advanced-ads' );
6
+ ?>&nbsp;<?php printf(__( 'Reach out to <a href="%s">support</a> to get help.', 'advanced-ads' ), admin_url('admin.php?page=advanced-ads-settings#top#support') );
7
  if ( true === WP_DEBUG ) : ?>
8
  <span style="white-space:pre-wrap"><?php echo $error; ?></span>
9
  <?php endif;
admin/views/settings.php CHANGED
@@ -80,4 +80,13 @@ jQuery( '#' + active_tab + '-tab' ).addClass( 'nav-tab-active' );
80
  jQuery( '.nav-tab-active' ).click();
81
  // set all tab urls
82
  advads_set_tab_hashes();
 
 
 
 
 
 
 
 
 
83
  </script>
80
  jQuery( '.nav-tab-active' ).click();
81
  // set all tab urls
82
  advads_set_tab_hashes();
83
+
84
+ // fixed link to Support page in admin menu while user is already on a settings page
85
+ jQuery('.toplevel_page_advanced-ads a[href*=#top#support]').click(function(){
86
+ // already on a settings page, so simulate another click on support tab
87
+ if( window.location.href.indexOf( 'page=advanced-ads-settings' ) ){
88
+ jQuery( '#advads-tabs' ).find( 'a#support-tab' ).click();
89
+ }
90
+ });
91
+
92
  </script>
admin/views/support.php CHANGED
@@ -17,4 +17,5 @@
17
  <input type="search" name="s"/>
18
  <input type="submit" class="button button-primary" value="<?php _e( 'search', 'advanced-ads' ); ?>">
19
  </form>
20
- <p><?php printf(__( 'Take a look at more common issues or contact us directly through the <a href="%s" target="_blank">support page</a>.', 'advanced-ads' ), ADVADS_URL . 'support/#utm_source=advanced-ads&utm_medium=link&utm_campaign=support' ); ?></p>
 
17
  <input type="search" name="s"/>
18
  <input type="submit" class="button button-primary" value="<?php _e( 'search', 'advanced-ads' ); ?>">
19
  </form>
20
+ <p><?php printf(__( 'Take a look at more common issues or contact us directly through the <a href="%s" target="_blank">support page</a>.', 'advanced-ads' ), ADVADS_URL . 'support/#utm_source=advanced-ads&utm_medium=link&utm_campaign=support' ); ?></p>
21
+ </div>
advanced-ads.php CHANGED
@@ -12,7 +12,7 @@
12
  * Plugin Name: Advanced Ads
13
  * Plugin URI: https://wpadvancedads.com
14
  * Description: Manage and optimize your ads in WordPress
15
- * Version: 1.8.23
16
  * Author: Thomas Maier
17
  * Author URI: https://wpadvancedads.com
18
  * Text Domain: advanced-ads
@@ -39,7 +39,7 @@ define( 'ADVADS_BASE_DIR', dirname( ADVADS_BASE ) ); // directory of the plugin
39
  // general and global slug, e.g. to store options in WP, textdomain
40
  define( 'ADVADS_SLUG', 'advanced-ads' );
41
  define( 'ADVADS_URL', 'https://wpadvancedads.com/' );
42
- define( 'ADVADS_VERSION', '1.8.23' );
43
 
44
  /*----------------------------------------------------------------------------*
45
  * Autoloading, modules and functions
12
  * Plugin Name: Advanced Ads
13
  * Plugin URI: https://wpadvancedads.com
14
  * Description: Manage and optimize your ads in WordPress
15
+ * Version: 1.8.24
16
  * Author: Thomas Maier
17
  * Author URI: https://wpadvancedads.com
18
  * Text Domain: advanced-ads
39
  // general and global slug, e.g. to store options in WP, textdomain
40
  define( 'ADVADS_SLUG', 'advanced-ads' );
41
  define( 'ADVADS_URL', 'https://wpadvancedads.com/' );
42
+ define( 'ADVADS_VERSION', '1.8.24' );
43
 
44
  /*----------------------------------------------------------------------------*
45
  * Autoloading, modules and functions
classes/ad_type_group.php CHANGED
@@ -39,6 +39,7 @@ class Advanced_Ads_Ad_Type_Group extends Advanced_Ads_Ad_Type_Abstract{
39
 
40
  /**
41
  * when saving the ad, remove it from the ad group, if this is the group assigned as ad content
 
42
  */
43
  public function remove_from_ad_group( $post_id ){
44
 
@@ -80,18 +81,6 @@ class Advanced_Ads_Ad_Type_Group extends Advanced_Ads_Ad_Type_Abstract{
80
  if( ! is_array( $groups ) || ! count( $groups ) ){
81
  return;
82
  }
83
- /**
84
- * show warning, if selected group is also assigned to the ad which would create an infinite loop
85
- * for some reason, the method that automatically takes care of this in remove_from_ad_group() doesn’t work for every user
86
- */
87
- if( $group_id ){
88
- $terms = wp_get_object_terms( $ad->id, 'advanced_ads_groups', array( 'fields' => 'ids' ) );
89
- if( ! is_wp_error( $terms )
90
- && is_array( $terms )
91
- && in_array( $group_id, $terms ) ){
92
- ?><p class="advads-error-message"><?php _e( 'The ad cannot use an ad group it is also assigned to.', 'advanced-ads' ); ?></p><?php
93
- }
94
- }
95
 
96
  ?><label for="advads-group-id" class="label"><?php _e('ad group', 'advanced-ads'); ?></label><div><select name="advanced_ad[output][group_id]" id="advads-group-id"><?php
97
 
39
 
40
  /**
41
  * when saving the ad, remove it from the ad group, if this is the group assigned as ad content
42
+ * see also: /admin/includes/class-ad-groups-list.php::update_groups()
43
  */
44
  public function remove_from_ad_group( $post_id ){
45
 
81
  if( ! is_array( $groups ) || ! count( $groups ) ){
82
  return;
83
  }
 
 
 
 
 
 
 
 
 
 
 
 
84
 
85
  ?><label for="advads-group-id" class="label"><?php _e('ad group', 'advanced-ads'); ?></label><div><select name="advanced_ad[output][group_id]" id="advads-group-id"><?php
86
 
classes/filesystem.php CHANGED
@@ -87,6 +87,7 @@ class Advanced_Ads_Filesystem {
87
 
88
  /**
89
  * Replace the 'direct' absolute path with the Filesystem API path. Useful only when the 'direct' method is not used.
 
90
  * Check https://codex.wordpress.org/Filesystem_API for info
91
  *
92
  * @param string existing path
@@ -94,7 +95,46 @@ class Advanced_Ads_Filesystem {
94
  */
95
  public function normalize_path( $path ) {
96
  global $wp_filesystem;
97
- return str_replace( ABSPATH, $wp_filesystem->abspath(), $path );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
98
  }
99
 
100
  /**
@@ -120,4 +160,4 @@ class Advanced_Ads_Filesystem {
120
  </div>
121
  <?php
122
  }
123
- }
87
 
88
  /**
89
  * Replace the 'direct' absolute path with the Filesystem API path. Useful only when the 'direct' method is not used.
90
+ * Works only with folders.
91
  * Check https://codex.wordpress.org/Filesystem_API for info
92
  *
93
  * @param string existing path
95
  */
96
  public function normalize_path( $path ) {
97
  global $wp_filesystem;
98
+ return $wp_filesystem->find_folder( $path );
99
+ }
100
+
101
+ /**
102
+ * Recursive directory creation based on full path.
103
+ *
104
+ * @param string $target Full path to attempt to create.
105
+ * @return bool Whether the path was created. True if path already exists.
106
+ */
107
+ public function mkdir_p( $target ) {
108
+ global $wp_filesystem;
109
+
110
+ if ( $wp_filesystem instanceof WP_Filesystem_Direct ) {
111
+ return wp_mkdir_p( $target );
112
+ }
113
+
114
+ $target = rtrim($target, '/');
115
+ if ( empty($target) ) {
116
+ $target = '/';
117
+ }
118
+
119
+ if ( $wp_filesystem->exists( $target ) ) {
120
+ return $wp_filesystem->is_dir( $target );
121
+ }
122
+
123
+ $target_parent = dirname( $target );
124
+ while ( '.' != $target_parent && ! $wp_filesystem->is_dir( $target_parent ) ) {
125
+ $target_parent = dirname( $target_parent );
126
+ }
127
+
128
+ $folder_parts = explode( '/', substr( $target, strlen( $target_parent ) + 1 ) );
129
+ for ( $i = 1, $c = count( $folder_parts ); $i <= $c; $i++ ) {
130
+ $dir = $target_parent . '/' . implode( '/', array_slice( $folder_parts, 0, $i ) );
131
+ if ( $wp_filesystem->exists( $dir ) ) { continue; }
132
+
133
+ if ( ! $wp_filesystem->mkdir( $dir ) ) {
134
+ return false;
135
+ }
136
+ }
137
+ return true;
138
  }
139
 
140
  /**
160
  </div>
161
  <?php
162
  }
163
+ }
languages/advanced-ads.pot CHANGED
@@ -3,7 +3,7 @@ msgid ""
3
  msgstr ""
4
  "Project-Id-Version: Advanved Ads\n"
5
  "Report-Msgid-Bugs-To: http://wordpress.org/plugins/plugin-name\n"
6
- "POT-Creation-Date: 2017-11-28 14:16+0000\n"
7
  "POT-Revision-Date: Wed Jul 13 2016 13:23:05 GMT+0200 (CEST)\n"
8
  "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
9
  "Last-Translator: Thomas Maier <post@webzunft.de>\n"
@@ -42,8 +42,8 @@ msgstr ""
42
  msgid "time of %s"
43
  msgstr ""
44
 
45
- #: admin/class-advanced-ads-admin.php:368 admin/includes/class-menu.php:97
46
- #: admin/includes/class-menu.php:97
47
  msgid "Support"
48
  msgstr ""
49
 
@@ -85,11 +85,11 @@ msgid "main query"
85
  msgstr ""
86
 
87
  #: classes/ad-debug.php:118 classes/ad-debug.php:167 classes/ad-debug.php:169
88
- #: public/class-advanced-ads.php:623 admin/views/ad-group-list-ads.php:2
89
  msgid "Ad"
90
  msgstr ""
91
 
92
- #: classes/ad-debug.php:121 public/class-advanced-ads.php:586
93
  msgctxt "ad group singular name"
94
  msgid "Ad Group"
95
  msgstr ""
@@ -98,11 +98,11 @@ msgstr ""
98
  msgid "Placement"
99
  msgstr ""
100
 
101
- #: classes/ad-debug.php:152 admin/includes/class-meta-box.php:65
102
  msgid "Display Conditions"
103
  msgstr ""
104
 
105
- #: classes/ad-debug.php:239 admin/includes/class-meta-box.php:68
106
  msgid "Visitor Conditions"
107
  msgstr ""
108
 
@@ -173,37 +173,37 @@ msgid ""
173
  "widget."
174
  msgstr ""
175
 
176
- #: classes/ad_placements.php:219
177
  #, php-format
178
  msgid "paragraph (%s)"
179
  msgstr ""
180
 
181
- #: classes/ad_placements.php:220
182
  #, php-format
183
  msgid "paragraph without image (%s)"
184
  msgstr ""
185
 
186
- #: classes/ad_placements.php:221
187
  #, php-format
188
  msgid "headline 2 (%s)"
189
  msgstr ""
190
 
191
- #: classes/ad_placements.php:222
192
  #, php-format
193
  msgid "headline 3 (%s)"
194
  msgstr ""
195
 
196
- #: classes/ad_placements.php:223
197
  #, php-format
198
  msgid "headline 4 (%s)"
199
  msgstr ""
200
 
201
- #: classes/ad_placements.php:549
202
  #, php-format
203
  msgid "Set <em>%s</em> to show more ads"
204
  msgstr ""
205
 
206
- #: classes/ad_placements.php:549 admin/includes/class-settings.php:141
207
  msgid "Disable level limitation"
208
  msgstr ""
209
 
@@ -239,7 +239,11 @@ msgid ""
239
  "display and visitor conditions to all ads in that group."
240
  msgstr ""
241
 
242
- #: classes/ad_type_group.php:84
 
 
 
 
243
  msgid "ad group"
244
  msgstr ""
245
 
@@ -277,24 +281,31 @@ msgstr ""
277
 
278
  #: classes/ad_type_plain.php:32
279
  msgid ""
280
- "Simple text editor without any filters. You might use it to display "
281
- "unfiltered content, php code or javascript. Shortcodes and other WordPress "
282
- "content field magic does not work here."
283
  msgstr ""
284
 
285
  #: classes/ad_type_plain.php:52
286
  msgid "Insert plain text or code into this field."
287
  msgstr ""
288
 
289
- #: classes/ad_type_plain.php:87
290
  msgid "Allow PHP"
291
  msgstr ""
292
 
293
- #: classes/ad_type_plain.php:89
294
  msgid "Execute PHP code (wrapped in <code>&lt;?php ?&gt;</code>)"
295
  msgstr ""
296
 
297
- #: classes/checks.php:244
 
 
 
 
 
 
 
 
298
  #, php-format
299
  msgid ""
300
  "Possible conflict between jQueryUI library, used by Advanced Ads and other "
@@ -490,7 +501,7 @@ msgstr ""
490
  msgid "Random AdSense ads"
491
  msgstr ""
492
 
493
- #: classes/frontend_checks.php:92
494
  msgid "You look like a bot"
495
  msgstr ""
496
 
@@ -570,10 +581,16 @@ msgstr ""
570
  msgid "Everything is fine"
571
  msgstr ""
572
 
573
- #: classes/frontend_checks.php:462
 
 
 
 
 
 
574
  #, php-format
575
  msgid ""
576
- "This ads was automatically placed here by AdSense. <a href=\"%s\" "
577
  "target=\"_blank\" style=\"color:#fff;border-color:#fff;\">Click here to "
578
  "learn more</a>."
579
  msgstr ""
@@ -684,16 +701,16 @@ msgid "Placements"
684
  msgstr ""
685
 
686
  #: classes/widget.php:76 admin/includes/class-shortcode-creator.php:91
687
- #: admin/views/placements-item.php:4 admin/views/placements.php:189
688
  msgid "Ad Groups"
689
  msgstr ""
690
 
691
- #: classes/widget.php:83 public/class-advanced-ads.php:622
692
  #: admin/includes/class-menu.php:62 admin/includes/class-menu.php:62
693
  #: admin/includes/class-shortcode-creator.php:84
694
  #: admin/views/ad-group-list-form-row.php:68
695
  #: admin/views/ad-group-list-header.php:5 admin/views/placements-item.php:11
696
- #: admin/views/placements.php:196 modules/import-export/views/page.php:23
697
  msgid "Ads"
698
  msgstr ""
699
 
@@ -723,189 +740,189 @@ msgstr ""
723
  msgid "Individual Posts, Pages and Public Post Types"
724
  msgstr ""
725
 
726
- #: public/class-advanced-ads.php:317
727
  msgid "Advanced Ads Error following:"
728
  msgstr ""
729
 
730
- #: public/class-advanced-ads.php:320
731
  #, php-format
732
  msgid "Advanced Ads Error: %s"
733
  msgstr ""
734
 
735
- #: public/class-advanced-ads.php:585
736
  msgctxt "ad group general name"
737
  msgid "Ad Groups & Rotations"
738
  msgstr ""
739
 
740
- #: public/class-advanced-ads.php:587
741
  msgid "Search Ad Groups"
742
  msgstr ""
743
 
744
- #: public/class-advanced-ads.php:588
745
  msgid "All Ad Groups"
746
  msgstr ""
747
 
748
- #: public/class-advanced-ads.php:589
749
  msgid "Parent Ad Groups"
750
  msgstr ""
751
 
752
- #: public/class-advanced-ads.php:590
753
  msgid "Parent Ad Groups:"
754
  msgstr ""
755
 
756
- #: public/class-advanced-ads.php:591
757
  msgid "Edit Ad Group"
758
  msgstr ""
759
 
760
- #: public/class-advanced-ads.php:592
761
  msgid "Update Ad Group"
762
  msgstr ""
763
 
764
- #: public/class-advanced-ads.php:593
765
  msgid "Add New Ad Group"
766
  msgstr ""
767
 
768
- #: public/class-advanced-ads.php:594
769
  msgid "New Ad Groups Name"
770
  msgstr ""
771
 
772
- #: public/class-advanced-ads.php:595 modules/import-export/views/page.php:24
773
  msgid "Groups"
774
  msgstr ""
775
 
776
- #: public/class-advanced-ads.php:596
777
  msgid "No Ad Group found"
778
  msgstr ""
779
 
780
- #: public/class-advanced-ads.php:624 public/class-advanced-ads.php:628
781
  #: admin/includes/class-menu.php:79 admin/views/ad-group-list-ads.php:17
782
  msgid "New Ad"
783
  msgstr ""
784
 
785
- #: public/class-advanced-ads.php:625 admin/includes/class-menu.php:79
786
  msgid "Add New Ad"
787
  msgstr ""
788
 
789
- #: public/class-advanced-ads.php:626
790
- #: admin/includes/class-ad-groups-list.php:307
791
  #: modules/import-export/classes/import.php:146
792
  #: modules/import-export/classes/import.php:186
793
  #: modules/import-export/classes/import.php:562
794
  msgid "Edit"
795
  msgstr ""
796
 
797
- #: public/class-advanced-ads.php:627
798
  msgid "Edit Ad"
799
  msgstr ""
800
 
801
- #: public/class-advanced-ads.php:629
802
  msgid "View"
803
  msgstr ""
804
 
805
- #: public/class-advanced-ads.php:630
806
  msgid "View the Ad"
807
  msgstr ""
808
 
809
- #: public/class-advanced-ads.php:631
810
  msgid "Search Ads"
811
  msgstr ""
812
 
813
- #: public/class-advanced-ads.php:632
814
  msgid "No Ads found"
815
  msgstr ""
816
 
817
- #: public/class-advanced-ads.php:633
818
  msgid "No Ads found in Trash"
819
  msgstr ""
820
 
821
- #: public/class-advanced-ads.php:634
822
  msgid "Parent Ad"
823
  msgstr ""
824
 
825
- #: public/class-advanced-ads.php:759
826
  msgctxt "label above ads"
827
  msgid "Advertisements"
828
  msgstr ""
829
 
830
- #: admin/includes/class-ad-groups-list.php:164
831
  msgid "Ad weight"
832
  msgstr ""
833
 
834
- #: admin/includes/class-ad-groups-list.php:175
835
  #: admin/views/ad-list-timing-column.php:4
836
  #, php-format
837
  msgid "starts %s"
838
  msgstr ""
839
 
840
- #: admin/includes/class-ad-groups-list.php:190
841
  #: admin/views/ad-list-timing-column.php:28
842
  #, php-format
843
  msgid "expires %s"
844
  msgstr ""
845
 
846
- #: admin/includes/class-ad-groups-list.php:192
847
  #: admin/views/ad-list-timing-column.php:30
848
  #, php-format
849
  msgid "<strong>expired</strong> %s"
850
  msgstr ""
851
 
852
- #: admin/includes/class-ad-groups-list.php:207
853
  #, php-format
854
  msgid "show %d more ads"
855
  msgstr ""
856
 
857
- #: admin/includes/class-ad-groups-list.php:211
858
  msgid "all published ads are displayed"
859
  msgstr ""
860
 
861
- #: admin/includes/class-ad-groups-list.php:213
862
  #, php-format
863
  msgid "up to %d ads displayed"
864
  msgstr ""
865
 
866
- #: admin/includes/class-ad-groups-list.php:216
867
  msgid "No ads assigned"
868
  msgstr ""
869
 
870
- #: admin/includes/class-ad-groups-list.php:217
871
  msgid "Add some"
872
  msgstr ""
873
 
874
- #: admin/includes/class-ad-groups-list.php:283
875
  msgid "Random ads"
876
  msgstr ""
877
 
878
- #: admin/includes/class-ad-groups-list.php:284
879
  msgid "Display random ads based on ad weight"
880
  msgstr ""
881
 
882
- #: admin/includes/class-ad-groups-list.php:287
883
  msgid "Ordered ads"
884
  msgstr ""
885
 
886
- #: admin/includes/class-ad-groups-list.php:288
887
  msgid "Display ads with the highest ad weight first"
888
  msgstr ""
889
 
890
- #: admin/includes/class-ad-groups-list.php:308
891
  msgid "Usage"
892
  msgstr ""
893
 
894
- #: admin/includes/class-ad-groups-list.php:317
895
  msgid "Delete"
896
  msgstr ""
897
 
898
- #: admin/includes/class-ad-groups-list.php:338
899
- #: admin/includes/class-ad-groups-list.php:388
900
  msgid "Invalid Ad Group"
901
  msgstr ""
902
 
903
- #: admin/includes/class-ad-groups-list.php:343
904
- #: admin/includes/class-ad-groups-list.php:393
905
  msgid "You don’t have permission to change the ad groups"
906
  msgstr ""
907
 
908
- #: admin/includes/class-ad-groups-list.php:373
909
  msgid "No ad group created"
910
  msgstr ""
911
 
@@ -964,39 +981,39 @@ msgid_plural "%s ads restored from the Trash."
964
  msgstr[0] ""
965
  msgstr[1] ""
966
 
967
- #: admin/includes/class-ad-type.php:532 admin/includes/class-ad-type.php:533
968
  msgid "Ad updated."
969
  msgstr ""
970
 
971
  #. translators: %s: date and time of the revision
972
- #: admin/includes/class-ad-type.php:535
973
  #, php-format
974
  msgid "Ad restored to revision from %s"
975
  msgstr ""
976
 
977
- #: admin/includes/class-ad-type.php:536 admin/includes/class-ad-type.php:537
978
  msgid "Ad saved."
979
  msgstr ""
980
 
981
- #: admin/includes/class-ad-type.php:538
982
  msgid "Ad submitted."
983
  msgstr ""
984
 
985
- #: admin/includes/class-ad-type.php:540
986
  #, php-format
987
  msgid "Ad scheduled for: <strong>%1$s</strong>."
988
  msgstr ""
989
 
990
  #. translators: Publish box date format, see http://php.net/date
991
- #: admin/includes/class-ad-type.php:542
992
  msgid "M j, Y @ G:i"
993
  msgstr ""
994
 
995
- #: admin/includes/class-ad-type.php:544
996
  msgid "Ad draft updated."
997
  msgstr ""
998
 
999
- #: admin/includes/class-ad-type.php:631
1000
  msgid ""
1001
  "You don’t have access to ads. Please deactivate and re-enable Advanced Ads "
1002
  "again to fix this."
@@ -1043,16 +1060,16 @@ msgstr ""
1043
  msgid "Error while trying to disable the license. Please contact support."
1044
  msgstr ""
1045
 
1046
- #: admin/includes/class-licenses.php:245 admin/includes/class-licenses.php:263
1047
  msgid "License couldn’t be deactivated. Please try again later."
1048
  msgstr ""
1049
 
1050
- #: admin/includes/class-licenses.php:470
1051
  #, php-format
1052
  msgid "Download failed. <a href=\"%s\">Click here to try another method</a>."
1053
  msgstr ""
1054
 
1055
- #: admin/includes/class-licenses.php:472
1056
  #, php-format
1057
  msgid ""
1058
  "Download failed. <a href=\"%s\" target=\"_blank\">Click here to learn why</a>"
@@ -1084,92 +1101,92 @@ msgstr ""
1084
  msgid "Settings"
1085
  msgstr ""
1086
 
1087
- #: admin/includes/class-menu.php:179 admin/includes/class-menu.php:206
1088
  msgid "Sorry, you are not allowed to access this feature."
1089
  msgstr ""
1090
 
1091
- #: admin/includes/class-menu.php:192
1092
  msgid ""
1093
  "You attempted to edit an ad group that doesn&#8217;t exist. Perhaps it was "
1094
  "deleted?"
1095
  msgstr ""
1096
 
1097
- #: admin/includes/class-meta-box.php:53
1098
  msgid "Ad Type"
1099
  msgstr ""
1100
 
1101
- #: admin/includes/class-meta-box.php:59
1102
  msgid "Ad Parameters"
1103
  msgstr ""
1104
 
1105
- #: admin/includes/class-meta-box.php:62
1106
  msgid "Layout / Output"
1107
  msgstr ""
1108
 
1109
- #: admin/includes/class-meta-box.php:72
1110
  msgid "Increase your ad revenue"
1111
  msgstr ""
1112
 
1113
- #: admin/includes/class-meta-box.php:77
1114
  msgid "Ad Stats"
1115
  msgstr ""
1116
 
1117
- #: admin/includes/class-meta-box.php:138 admin/includes/class-meta-box.php:149
1118
- #: admin/includes/class-meta-box.php:154 admin/includes/class-settings.php:551
1119
  #: admin/views/ad-output-metabox.php:51
1120
  msgid "Manual"
1121
  msgstr ""
1122
 
1123
- #: admin/includes/class-meta-box.php:148
1124
  msgid "Video"
1125
  msgstr ""
1126
 
1127
- #: admin/includes/class-meta-box.php:242
1128
  msgid "Ad Settings"
1129
  msgstr ""
1130
 
1131
- #: admin/includes/class-meta-box.php:344 admin/views/overview.php:6
1132
  msgid "Ads Dashboard"
1133
  msgstr ""
1134
 
1135
- #: admin/includes/class-meta-box.php:355
1136
  #, php-format
1137
  msgid "%d ads – <a href=\"%s\">manage</a> - <a href=\"%s\">new</a>"
1138
  msgstr ""
1139
 
1140
- #: admin/includes/class-meta-box.php:367
1141
  msgid "plugin manual and homepage"
1142
  msgstr ""
1143
 
1144
- #: admin/includes/class-meta-box.php:374
1145
  msgid "Get the tutorial via email"
1146
  msgstr ""
1147
 
1148
- #: admin/includes/class-meta-box.php:381
1149
  msgid "Get AdSense tips via email"
1150
  msgstr ""
1151
 
1152
- #: admin/includes/class-meta-box.php:437
1153
  msgid "From the ad optimization universe"
1154
  msgstr ""
1155
 
1156
- #: admin/includes/class-meta-box.php:446
1157
  msgid "Advanced Ads Tutorials"
1158
  msgstr ""
1159
 
1160
- #: admin/includes/class-notices.php:413
1161
  #, php-format
1162
  msgid ""
1163
  "You don’t seem to have an email address. Please use <a href=\"%s\" "
1164
  "target=\"_blank\">this form</a> to sign up."
1165
  msgstr ""
1166
 
1167
- #: admin/includes/class-notices.php:431
1168
  msgid ""
1169
  "How embarrassing. The email server seems to be down. Please try again later."
1170
  msgstr ""
1171
 
1172
- #: admin/includes/class-notices.php:436
1173
  #, php-format
1174
  msgid ""
1175
  "Please check your email (%s) for the confirmation message. If you didn’t "
@@ -1189,179 +1206,197 @@ msgstr ""
1189
  msgid "Create your first ad"
1190
  msgstr ""
1191
 
1192
- #: admin/includes/class-overview-widgets.php:74
1193
  msgid "Join the newsletter for more benefits"
1194
  msgstr ""
1195
 
1196
- #: admin/includes/class-overview-widgets.php:76
1197
  msgid "Get 2 free add-ons"
1198
  msgstr ""
1199
 
1200
- #: admin/includes/class-overview-widgets.php:77
1201
  msgid "Get the first steps and more tutorials to your inbox"
1202
  msgstr ""
1203
 
1204
- #: admin/includes/class-overview-widgets.php:78
1205
  msgid "How to earn more with AdSense"
1206
  msgstr ""
1207
 
1208
- #: admin/includes/class-overview-widgets.php:81
1209
  msgid "Join now"
1210
  msgstr ""
1211
 
1212
- #: admin/includes/class-overview-widgets.php:88
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1213
  msgid "Manage your ads"
1214
  msgstr ""
1215
 
1216
- #: admin/includes/class-overview-widgets.php:114
 
 
 
 
1217
  #, php-format
1218
  msgid "<a href=\"%s\" target=\"_blank\">Manual</a>"
1219
  msgstr ""
1220
 
1221
- #: admin/includes/class-overview-widgets.php:115
1222
  #, php-format
1223
  msgid "<a href=\"%s\" target=\"_blank\">FAQ and Support</a>"
1224
  msgstr ""
1225
 
1226
- #: admin/includes/class-overview-widgets.php:116
1227
  #, php-format
1228
  msgid ""
1229
  "Thank the developer with a &#9733;&#9733;&#9733;&#9733;&#9733; review on <a "
1230
  "href=\"%s\" target=\"_blank\">wordpress.org</a>"
1231
  msgstr ""
1232
 
1233
- #: admin/includes/class-overview-widgets.php:133
1234
  msgid "The solution for professional websites."
1235
  msgstr ""
1236
 
1237
- #: admin/includes/class-overview-widgets.php:136
1238
  #: admin/views/pitch-pro-tab.php:7
1239
  msgid "support for cached sites"
1240
  msgstr ""
1241
 
1242
- #: admin/includes/class-overview-widgets.php:139
1243
- #: admin/includes/class-overview-widgets.php:140
1244
- #: admin/includes/class-overview-widgets.php:141
1245
- #: admin/includes/class-overview-widgets.php:142
1246
  #, php-format
1247
  msgid "integrates with <strong>%s</strong>"
1248
  msgstr ""
1249
 
1250
- #: admin/includes/class-overview-widgets.php:143
1251
  msgid "click fraud protection, lazy load, ad-block ads"
1252
  msgstr ""
1253
 
1254
- #: admin/includes/class-overview-widgets.php:144
1255
  #: admin/views/pitch-pro-tab.php:8
1256
  msgid "11 more display and visitor conditions"
1257
  msgstr ""
1258
 
1259
- #: admin/includes/class-overview-widgets.php:145
1260
  #: admin/views/pitch-pro-tab.php:9
1261
  msgid "6 more placements"
1262
  msgstr ""
1263
 
1264
- #: admin/includes/class-overview-widgets.php:146
1265
  #: admin/views/pitch-pro-tab.php:10
1266
  msgid "placement tests for ad optimization"
1267
  msgstr ""
1268
 
1269
- #: admin/includes/class-overview-widgets.php:147
1270
  #: admin/views/pitch-pro-tab.php:11
1271
  msgid "ad grids and many more advanced features"
1272
  msgstr ""
1273
 
1274
- #: admin/includes/class-overview-widgets.php:154
1275
  msgid ""
1276
  "Analyze clicks and impressions of your ads locally or in Google Analytics, "
1277
  "share reports, and limit ads to a specific number of impressions or clicks."
1278
  msgstr ""
1279
 
1280
- #: admin/includes/class-overview-widgets.php:160
1281
  msgid ""
1282
  "Display ads based on the device or the size of your visitor’s browser, and "
1283
  "control ads on AMP pages."
1284
  msgstr ""
1285
 
1286
- #: admin/includes/class-overview-widgets.php:173
1287
  msgid ""
1288
  "Earn more money and let advertisers pay for ad space directly on the "
1289
  "frontend of your site."
1290
  msgstr ""
1291
 
1292
- #: admin/includes/class-overview-widgets.php:179
1293
  msgid ""
1294
  "Target visitors with ads that match their geo location and make more money "
1295
  "with regional campaigns."
1296
  msgstr ""
1297
 
1298
- #: admin/includes/class-overview-widgets.php:185
1299
  msgid ""
1300
  "Increase click rates on your ads by placing them in sticky positions above, "
1301
  "next or below your site."
1302
  msgstr ""
1303
 
1304
- #: admin/includes/class-overview-widgets.php:191
1305
  msgid ""
1306
  "Users will never miss an ad or other information in a PopUp. Choose when it "
1307
  "shows up and for how long a user can close it."
1308
  msgstr ""
1309
 
1310
- #: admin/includes/class-overview-widgets.php:197
1311
  msgid ""
1312
  "Create a beautiful and simple slider from your ads to show more information "
1313
  "on less space."
1314
  msgstr ""
1315
 
1316
- #: admin/includes/class-overview-widgets.php:203
1317
  msgid ""
1318
  "Place AdSense In-feed ads between posts on homepage, category, and archive "
1319
  "pages."
1320
  msgstr ""
1321
 
1322
- #: admin/includes/class-overview-widgets.php:206
1323
- #: admin/includes/class-overview-widgets.php:379
1324
- #: admin/includes/class-overview-widgets.php:395
1325
  msgid "Install now"
1326
  msgstr ""
1327
 
1328
- #: admin/includes/class-overview-widgets.php:224
1329
- #: admin/includes/class-overview-widgets.php:245
1330
- #: admin/includes/class-overview-widgets.php:268
1331
  #: admin/includes/class-overview-widgets.php:286
1332
  #: admin/includes/class-overview-widgets.php:304
1333
  #: admin/includes/class-overview-widgets.php:322
1334
  #: admin/includes/class-overview-widgets.php:340
1335
  #: admin/includes/class-overview-widgets.php:358
 
1336
  msgid "Activate now"
1337
  msgstr ""
1338
 
1339
- #: admin/includes/class-overview-widgets.php:251
1340
  msgid "Visit your ad stats"
1341
  msgstr ""
1342
 
1343
- #: admin/includes/class-overview-widgets.php:375
1344
  msgid "Use Genesis specific ad positions."
1345
  msgstr ""
1346
 
1347
- #: admin/includes/class-overview-widgets.php:391
1348
  msgid "Manage ad positions with Visual Composer."
1349
  msgstr ""
1350
 
1351
- #: admin/includes/class-overview-widgets.php:407
1352
- msgid "Our best deal with all current and future add-ons included."
1353
  msgstr ""
1354
 
1355
- #: admin/includes/class-overview-widgets.php:409
1356
- msgid "Get the Bundle"
1357
  msgstr ""
1358
 
1359
- #: admin/includes/class-overview-widgets.php:423
1360
  #: admin/views/ad-display-metabox.php:31 admin/views/ad-visitor-metabox.php:39
1361
  msgid "Visit the manual"
1362
  msgstr ""
1363
 
1364
- #: admin/includes/class-overview-widgets.php:426
1365
  msgid "Get this add-on"
1366
  msgstr ""
1367
 
@@ -1522,72 +1557,65 @@ msgid ""
1522
  "limitation and ads might show up again."
1523
  msgstr ""
1524
 
1525
- #: admin/includes/class-settings.php:455
1526
- #, php-format
1527
- msgid ""
1528
- "Hide ads from crawlers, bots and empty user agents. Also prevents counting "
1529
- "impressions for bots when using the <a href=\"%s\" target=\"_blank\">"
1530
- "Tracking Add-On</a>."
1531
  msgstr ""
1532
 
1533
- #: admin/includes/class-settings.php:456
1534
- msgid ""
1535
- "Disabling this option only makes sense if your ads contain content you want "
1536
- "to display to bots (like search engines) or your site is cached and bots "
1537
- "could create a cached version without the ads."
1538
  msgstr ""
1539
 
1540
- #: admin/includes/class-settings.php:469
1541
  msgid ""
1542
  "Disable internal notices like tips, tutorials, email newsletters and update "
1543
  "notices. Disabling notices is recommended if you run multiple blogs with "
1544
  "Advanced Ads already."
1545
  msgstr ""
1546
 
1547
- #: admin/includes/class-settings.php:486
1548
  msgid ""
1549
  "Prefix of class or id attributes in the frontend. Change it if you don’t "
1550
  "want <strong>ad blockers</strong> to mark these blocks as ads.<br/>You might "
1551
  "need to <strong>rewrite css rules afterwards</strong>."
1552
  msgstr ""
1553
 
1554
- #: admin/includes/class-settings.php:507
1555
  msgid ""
1556
  "Remove the ID attribute from widgets in order to not make them an easy "
1557
  "target of ad blockers."
1558
  msgstr ""
1559
 
1560
- #: admin/includes/class-settings.php:510
1561
  msgid ""
1562
  "If checked, the Advanced Ads Widget will not work with the fixed option of "
1563
  "the <strong>Q2W3 Fixed Widget</strong> plugin."
1564
  msgstr ""
1565
 
1566
- #: admin/includes/class-settings.php:532
1567
  msgid "Allow editors to also manage and publish ads."
1568
  msgstr ""
1569
 
1570
- #: admin/includes/class-settings.php:533
1571
  #, php-format
1572
  msgid ""
1573
  "You can assign different ad-related roles on a user basis with <a "
1574
  "href=\"%s\" target=\"_blank\">Advanced Ads Pro</a>."
1575
  msgstr ""
1576
 
1577
- #: admin/includes/class-settings.php:544
1578
  msgctxt "label before ads"
1579
  msgid "Advertisements"
1580
  msgstr ""
1581
 
1582
- #: admin/includes/class-settings.php:551
1583
  msgid "Displayed above ads."
1584
  msgstr ""
1585
 
1586
- #: admin/includes/class-settings.php:585
1587
  msgid "Clean up all data related to Advanced Ads when removing the plugin."
1588
  msgstr ""
1589
 
1590
- #: admin/includes/class-settings.php:598
1591
  msgid "Disable shortcode button in visual editor."
1592
  msgstr ""
1593
 
@@ -1649,25 +1677,18 @@ msgstr ""
1649
 
1650
  #: admin/includes/notices.php:47
1651
  #, php-format
1652
- msgid ""
1653
- "<strong>Advanced Ads</strong> license(s) expired. Support and updates are "
1654
- "disabled. Please visit <a href=\"%s\"> the license page</a> for more "
1655
- "information."
1656
  msgstr ""
1657
 
1658
  #: admin/includes/notices.php:53
1659
- #, php-format
1660
- msgid ""
1661
- "<img src=\"%3$s\" alt=\"Thomas\" width=\"80\" height=\"115\" class=\"advads-"
1662
- "review-image\"/>You are using <strong>Advanced Ads</strong> for some time "
1663
- "now. Thank you! If you need my help then please visit the <a href=\"%1$s\" "
1664
- "target=\"_blank\">Support page</a> to get free help.</p><h3>Thanks for your "
1665
- "Review</h3><p>If you share my passion and find Advanced Ads useful then "
1666
- "please <a href=\"%2$s\" target=\"_blank\">leave a 5-star review on wordpress."
1667
- "org</a>.</p><p><em>Thomas</em>"
1668
  msgstr ""
1669
 
1670
- #: admin/includes/notices.php:59
1671
  #, php-format
1672
  msgid ""
1673
  "Some assets were changed. Please <strong>rebuild the asset folder</strong> "
@@ -1829,7 +1850,7 @@ msgid "Details"
1829
  msgstr ""
1830
 
1831
  #: admin/views/ad-group-list-row.php:8 admin/views/ad-info.php:3
1832
- #: admin/views/placements.php:65
1833
  msgid "shortcode"
1834
  msgstr ""
1835
 
@@ -2228,6 +2249,66 @@ msgstr ""
2228
  msgid "not on mobile devices"
2229
  msgstr ""
2230
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2231
  #: admin/views/feedback-disable.php:4
2232
  msgid "Why did you decide to disable Advanced Ads?"
2233
  msgstr ""
@@ -2290,7 +2371,7 @@ msgid "Only Deactivate"
2290
  msgstr ""
2291
 
2292
  #: admin/views/pitch-bundle.php:1
2293
- msgid "Pro Bundle – with all available add-ons"
2294
  msgstr ""
2295
 
2296
  #: admin/views/pitch-bundle.php:12
@@ -2446,7 +2527,7 @@ msgstr ""
2446
  msgid "start counting from bottom"
2447
  msgstr ""
2448
 
2449
- #: admin/views/placements-item.php:2 admin/views/placements.php:187
2450
  msgid "--not selected--"
2451
  msgstr ""
2452
 
@@ -2488,30 +2569,30 @@ msgstr ""
2488
  msgid "show usage"
2489
  msgstr ""
2490
 
2491
- #: admin/views/placements.php:68
2492
  msgid "template (PHP)"
2493
  msgstr ""
2494
 
2495
- #: admin/views/placements.php:83
2496
  msgid "Item"
2497
  msgstr ""
2498
 
2499
- #: admin/views/placements.php:94
2500
  msgid "position"
2501
  msgstr ""
2502
 
2503
- #: admin/views/placements.php:98
2504
  msgid "Important Notice"
2505
  msgstr ""
2506
 
2507
- #: admin/views/placements.php:98
2508
  msgid ""
2509
  "Your server is missing an extension. This might break the content injection."
2510
  "<br/>Ignore this warning if everything works fine or else ask your hosting "
2511
  "provider to enable <em>mbstring</em>."
2512
  msgstr ""
2513
 
2514
- #: admin/views/placements.php:119
2515
  msgid "ad label"
2516
  msgstr ""
2517
 
@@ -2519,72 +2600,72 @@ msgstr ""
2519
  msgid "show all options"
2520
  msgstr ""
2521
 
2522
- #: admin/views/placements.php:135
2523
  #, php-format
2524
  msgid ""
2525
  "Tutorial: <a href=\"%s\" target=\"_blank\">How to place visible ads in the "
2526
  "header of your website</a>."
2527
  msgstr ""
2528
 
2529
- #: admin/views/placements.php:142
2530
  msgctxt "checkbox to remove placement"
2531
  msgid "delete"
2532
  msgstr ""
2533
 
2534
- #: admin/views/placements.php:149
2535
  msgid "Save Placements"
2536
  msgstr ""
2537
 
2538
- #: admin/views/placements.php:151
2539
  msgid "Create a new placement"
2540
  msgstr ""
2541
 
2542
- #: admin/views/placements.php:152
2543
  msgid "New Placement"
2544
  msgstr ""
2545
 
2546
- #: admin/views/placements.php:160
2547
  msgid "Choose a placement type"
2548
  msgstr ""
2549
 
2550
- #: admin/views/placements.php:161
2551
  #, php-format
2552
  msgid ""
2553
  "Placement types define where the ad is going to be displayed. Learn more "
2554
  "about the different types from the <a href=\"%s\">manual</a>"
2555
  msgstr ""
2556
 
2557
- #: admin/views/placements.php:178
2558
  msgid "Please select a placement type."
2559
  msgstr ""
2560
 
2561
- #: admin/views/placements.php:180
2562
  msgid "Choose a Name"
2563
  msgstr ""
2564
 
2565
- #: admin/views/placements.php:181
2566
  msgid ""
2567
  "The name of the placement is only visible to you. Tip: choose a descriptive "
2568
  "one, e.g. <em>Below Post Headline</em>."
2569
  msgstr ""
2570
 
2571
- #: admin/views/placements.php:182
2572
  msgid "Placement Name"
2573
  msgstr ""
2574
 
2575
- #: admin/views/placements.php:183
2576
  msgid "Please enter a name for your placement."
2577
  msgstr ""
2578
 
2579
- #: admin/views/placements.php:184
2580
  msgid "Choose the Ad or Group"
2581
  msgstr ""
2582
 
2583
- #: admin/views/placements.php:185
2584
  msgid "The ad or group that should be displayed."
2585
  msgstr ""
2586
 
2587
- #: admin/views/placements.php:204
2588
  msgid "Save New Placement"
2589
  msgstr ""
2590
 
@@ -2604,7 +2685,7 @@ msgstr ""
2604
  #, php-format
2605
  msgid ""
2606
  "Click on %2$s if you renewed it or have a subscription or <a href=\"%1$s\" "
2607
- "target=\"_blank\">renew your license with a discount</a>."
2608
  msgstr ""
2609
 
2610
  #: admin/views/setting-license.php:27
@@ -2684,101 +2765,52 @@ msgstr ""
2684
  msgid "General"
2685
  msgstr ""
2686
 
2687
- #: admin/views/settings.php:35
2688
  msgid "Save settings on this page"
2689
  msgstr ""
2690
 
2691
- #: admin/views/settings.php:42 modules/import-export/main.php:15
2692
  #: modules/import-export/main.php:15
2693
  msgid "Import &amp; Export"
2694
  msgstr ""
2695
 
2696
- #: admin/views/support.php:7
2697
  msgid ""
2698
  "Please fix the red highlighted issues on this page or try to understand "
2699
  "their consequences before contacting support."
2700
  msgstr ""
2701
 
2702
- #: admin/views/support.php:11
2703
- #, php-format
2704
- msgid ""
2705
- "Your <strong>PHP version (%s) is too low</strong>. Advanced Ads is built for "
2706
- "PHP 5.3 and higher. It might work, but updating PHP is highly recommended. "
2707
- "Please ask your hosting provider for more information."
2708
- msgstr ""
2709
-
2710
- #: admin/views/support.php:14
2711
- #, php-format
2712
- msgid ""
2713
- "Your <strong>website uses cache</strong>. Some dynamic features like ad "
2714
- "rotation or visitor conditions might not work properly. Use the cache-"
2715
- "busting feature of <a href=\"%s\" target=\"_blank\">Advanced Ads Pro</a> to "
2716
- "load ads dynamically."
2717
- msgstr ""
2718
-
2719
- #: admin/views/support.php:17
2720
- msgid ""
2721
- "There is a <strong>new WordPress version available</strong>. Please update."
2722
- msgstr ""
2723
-
2724
- #: admin/views/support.php:20
2725
- msgid "There are <strong>plugin updates available</strong>. Please update."
2726
- msgstr ""
2727
-
2728
- #: admin/views/support.php:29
2729
- #, php-format
2730
- msgid ""
2731
- "<strong>Autoptimize plugin detected</strong>. While this plugin is great for "
2732
- "site performance, it is known to alter code, including scripts from ad "
2733
- "networks. <a href=\"%s\" target=\"_blank\">Advanced Ads Pro</a> has a build-"
2734
- "in support for Autoptimize."
2735
- msgstr ""
2736
-
2737
- #: admin/views/support.php:32
2738
- #, php-format
2739
- msgid ""
2740
- "Plugins that are known to cause (partial) problems: <strong>%1$s</strong>. "
2741
- "<a href=\"%2$s\" target=\"_blank\">Learn more</a>."
2742
- msgstr ""
2743
-
2744
- #: admin/views/support.php:35
2745
- #, php-format
2746
- msgid ""
2747
- "Ads are disabled for all or some pages. See \"disabled ads\" in <a "
2748
- "href=\"%s\">settings</a>."
2749
- msgstr ""
2750
-
2751
- #: admin/views/support.php:46
2752
  msgid "Possible Issues"
2753
  msgstr ""
2754
 
2755
- #: admin/views/support.php:48
2756
  msgid "Ads not showing up"
2757
  msgstr ""
2758
 
2759
- #: admin/views/support.php:49
2760
  msgid "Purchase & Licenses"
2761
  msgstr ""
2762
 
2763
- #: admin/views/support.php:50
2764
  msgid "General Issues"
2765
  msgstr ""
2766
 
2767
- #: admin/views/support.php:51
2768
  msgid "Issues with Add-Ons"
2769
  msgstr ""
2770
 
2771
- #: admin/views/support.php:53
2772
  msgid ""
2773
  "Use the following form to search for solutions in the manual on "
2774
  "wpadvancedads.com"
2775
  msgstr ""
2776
 
2777
- #: admin/views/support.php:56
2778
  msgid "search"
2779
  msgstr ""
2780
 
2781
- #: admin/views/support.php:58
2782
  #, php-format
2783
  msgid ""
2784
  "Take a look at more common issues or contact us directly through the <a "
@@ -2789,11 +2821,11 @@ msgstr ""
2789
  msgid " at "
2790
  msgstr ""
2791
 
2792
- #: public/views/ad-debug.php:18
2793
  msgid "Ad debug output"
2794
  msgstr ""
2795
 
2796
- #: public/views/ad-debug.php:20
2797
  msgid "Find solutions in the manual"
2798
  msgstr ""
2799
 
@@ -2858,78 +2890,88 @@ msgstr ""
2858
  msgid "Responsive"
2859
  msgstr ""
2860
 
2861
- #: modules/gadsense/admin/admin.php:45
2862
  msgid "The ad details couldn't be retrieved from the ad code"
2863
  msgstr ""
2864
 
2865
- #: modules/gadsense/admin/admin.php:46
2866
  msgid ""
2867
  "Warning : The AdSense account from this code does not match the one set with "
2868
  "the Advanced Ads Plugin. This ad might cause troubles when used in the front "
2869
  "end."
2870
  msgstr ""
2871
 
2872
- #: modules/gadsense/admin/admin.php:132
 
 
 
 
 
 
 
 
 
 
2873
  msgid "AdSense ID"
2874
  msgstr ""
2875
 
2876
- #: modules/gadsense/admin/admin.php:141
2877
  msgid "Limit to 3 ads"
2878
  msgstr ""
2879
 
2880
- #: modules/gadsense/admin/admin.php:150
2881
  msgid "Activate Page-Level ads"
2882
  msgstr ""
2883
 
2884
- #: modules/gadsense/admin/admin.php:159
2885
  msgid "Disable violation warnings"
2886
  msgstr ""
2887
 
2888
- #: modules/gadsense/admin/admin.php:167
2889
  msgid "Transparent background"
2890
  msgstr ""
2891
 
2892
- #: modules/gadsense/admin/admin.php:187
2893
  #, php-format
2894
  msgid ""
2895
  "Please enter your Publisher ID in order to use AdSense on your page. See the "
2896
  "<a href=\"%s\" target=\"_blank\">manual</a> for more information."
2897
  msgstr ""
2898
 
2899
- #: modules/gadsense/admin/admin.php:201
2900
  msgid "Your AdSense Publisher ID <em>(pub-xxxxxxxxxxxxxx)</em>"
2901
  msgstr ""
2902
 
2903
- #: modules/gadsense/admin/admin.php:213
2904
  #, php-format
2905
  msgid "Limit to %d AdSense ads"
2906
  msgstr ""
2907
 
2908
- #: modules/gadsense/admin/admin.php:217
2909
  msgid ""
2910
  "There is no explicit limit for AdSense ads anymore, but you can still use "
2911
  "this setting to prevent too many AdSense ads to show accidentally on your "
2912
  "site."
2913
  msgstr ""
2914
 
2915
- #: modules/gadsense/admin/admin.php:221
2916
  msgid ""
2917
  "Due to technical restrictions, the limit does not work on placements with "
2918
  "cache-busting enabled."
2919
  msgstr ""
2920
 
2921
- #: modules/gadsense/admin/admin.php:235
2922
  msgid "Insert Page-Level ads code on all pages."
2923
  msgstr ""
2924
 
2925
- #: modules/gadsense/admin/admin.php:236
2926
  msgid ""
2927
  "You still need to enable Page-Level ads in your AdSense account. See <a "
2928
  "href=\"https://support.google.com/adsense/answer/6245304\" target=\"_blank\">"
2929
  "AdSense Help</a> (requires AdSense-login) for more information."
2930
  msgstr ""
2931
 
2932
- #: modules/gadsense/admin/admin.php:237
2933
  #, php-format
2934
  msgid ""
2935
  "Please notice that this code might also activate QuickStart ads. Please read "
@@ -2937,11 +2979,11 @@ msgid ""
2937
  "random places</strong>."
2938
  msgstr ""
2939
 
2940
- #: modules/gadsense/admin/admin.php:250
2941
  msgid "Disable warnings about potential violations of the AdSense terms."
2942
  msgstr ""
2943
 
2944
- #: modules/gadsense/admin/admin.php:251
2945
  #, php-format
2946
  msgid ""
2947
  "Our <a href=\"%s\" target=\"_blank\">Ad Health</a> feature monitors if "
@@ -2949,22 +2991,22 @@ msgid ""
2949
  "managed with Advanced Ads. Enable this option to remove these checks"
2950
  msgstr ""
2951
 
2952
- #: modules/gadsense/admin/admin.php:262
2953
  msgid ""
2954
  "Enable this option in case your theme adds an unfortunate background color "
2955
  "to AdSense ads."
2956
  msgstr ""
2957
 
2958
- #: modules/gadsense/admin/admin.php:280
2959
  #: modules/gadsense/includes/class-ad-type-adsense.php:73
2960
  msgid "The Publisher ID has an incorrect format. (must start with \"pub-\")"
2961
  msgstr ""
2962
 
2963
- #: modules/gadsense/admin/admin.php:302
2964
  msgid "AdSense"
2965
  msgstr ""
2966
 
2967
- #: modules/gadsense/admin/admin.php:354
2968
  #, php-format
2969
  msgid ""
2970
  "Responsive AdSense ads don’t work reliably with <em>Position</em> set to "
@@ -2973,14 +3015,14 @@ msgid ""
2973
  "wrapped in text."
2974
  msgstr ""
2975
 
2976
- #: modules/gadsense/admin/admin.php:360
2977
  #, php-format
2978
  msgid ""
2979
  "<a href=\"%s\" target=\"_blank\">Install the free AdSense In-feed add-on</a> "
2980
  "in order to place ads between posts."
2981
  msgstr ""
2982
 
2983
- #: modules/gadsense/admin/admin.php:367
2984
  #, php-format
2985
  msgid ""
2986
  "Use the <a href=\"%s\" target=\"_blank\">Responsive add-on</a> in order to "
3
  msgstr ""
4
  "Project-Id-Version: Advanved Ads\n"
5
  "Report-Msgid-Bugs-To: http://wordpress.org/plugins/plugin-name\n"
6
+ "POT-Creation-Date: 2018-02-08 11:52+0000\n"
7
  "POT-Revision-Date: Wed Jul 13 2016 13:23:05 GMT+0200 (CEST)\n"
8
  "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
9
  "Last-Translator: Thomas Maier <post@webzunft.de>\n"
42
  msgid "time of %s"
43
  msgstr ""
44
 
45
+ #: admin/class-advanced-ads-admin.php:368 admin/includes/class-menu.php:106
46
+ #: admin/includes/class-menu.php:109 admin/views/settings.php:26
47
  msgid "Support"
48
  msgstr ""
49
 
85
  msgstr ""
86
 
87
  #: classes/ad-debug.php:118 classes/ad-debug.php:167 classes/ad-debug.php:169
88
+ #: public/class-advanced-ads.php:635 admin/views/ad-group-list-ads.php:2
89
  msgid "Ad"
90
  msgstr ""
91
 
92
+ #: classes/ad-debug.php:121 public/class-advanced-ads.php:598
93
  msgctxt "ad group singular name"
94
  msgid "Ad Group"
95
  msgstr ""
98
  msgid "Placement"
99
  msgstr ""
100
 
101
+ #: classes/ad-debug.php:152 admin/includes/class-meta-box.php:67
102
  msgid "Display Conditions"
103
  msgstr ""
104
 
105
+ #: classes/ad-debug.php:239 admin/includes/class-meta-box.php:70
106
  msgid "Visitor Conditions"
107
  msgstr ""
108
 
173
  "widget."
174
  msgstr ""
175
 
176
+ #: classes/ad_placements.php:222
177
  #, php-format
178
  msgid "paragraph (%s)"
179
  msgstr ""
180
 
181
+ #: classes/ad_placements.php:223
182
  #, php-format
183
  msgid "paragraph without image (%s)"
184
  msgstr ""
185
 
186
+ #: classes/ad_placements.php:224
187
  #, php-format
188
  msgid "headline 2 (%s)"
189
  msgstr ""
190
 
191
+ #: classes/ad_placements.php:225
192
  #, php-format
193
  msgid "headline 3 (%s)"
194
  msgstr ""
195
 
196
+ #: classes/ad_placements.php:226
197
  #, php-format
198
  msgid "headline 4 (%s)"
199
  msgstr ""
200
 
201
+ #: classes/ad_placements.php:556
202
  #, php-format
203
  msgid "Set <em>%s</em> to show more ads"
204
  msgstr ""
205
 
206
+ #: classes/ad_placements.php:557 admin/includes/class-settings.php:141
207
  msgid "Disable level limitation"
208
  msgstr ""
209
 
239
  "display and visitor conditions to all ads in that group."
240
  msgstr ""
241
 
242
+ #: classes/ad_type_group.php:92
243
+ msgid "The ad cannot use an ad group it is also assigned to."
244
+ msgstr ""
245
+
246
+ #: classes/ad_type_group.php:96
247
  msgid "ad group"
248
  msgstr ""
249
 
281
 
282
  #: classes/ad_type_plain.php:32
283
  msgid ""
284
+ "Any ad network, Amazon, customized AdSense codes, shortcodes, and code like "
285
+ "JavaScript, HTML or PHP."
 
286
  msgstr ""
287
 
288
  #: classes/ad_type_plain.php:52
289
  msgid "Insert plain text or code into this field."
290
  msgstr ""
291
 
292
+ #: classes/ad_type_plain.php:88
293
  msgid "Allow PHP"
294
  msgstr ""
295
 
296
+ #: classes/ad_type_plain.php:90
297
  msgid "Execute PHP code (wrapped in <code>&lt;?php ?&gt;</code>)"
298
  msgstr ""
299
 
300
+ #: classes/ad_type_plain.php:103
301
+ msgid "Allow shortcodes"
302
+ msgstr ""
303
+
304
+ #: classes/ad_type_plain.php:106
305
+ msgid "Execute shortcodes"
306
+ msgstr ""
307
+
308
+ #: classes/checks.php:222
309
  #, php-format
310
  msgid ""
311
  "Possible conflict between jQueryUI library, used by Advanced Ads and other "
501
  msgid "Random AdSense ads"
502
  msgstr ""
503
 
504
+ #: classes/frontend_checks.php:92 admin/includes/class-settings.php:456
505
  msgid "You look like a bot"
506
  msgstr ""
507
 
581
  msgid "Everything is fine"
582
  msgstr ""
583
 
584
+ #: classes/frontend_checks.php:354
585
+ msgid ""
586
+ "the following code is used for automatic error detection and only visible to "
587
+ "admins"
588
+ msgstr ""
589
+
590
+ #: classes/frontend_checks.php:469
591
  #, php-format
592
  msgid ""
593
+ "This ad was automatically placed here by AdSense. <a href=\"%s\" "
594
  "target=\"_blank\" style=\"color:#fff;border-color:#fff;\">Click here to "
595
  "learn more</a>."
596
  msgstr ""
701
  msgstr ""
702
 
703
  #: classes/widget.php:76 admin/includes/class-shortcode-creator.php:91
704
+ #: admin/views/placements-item.php:4 admin/views/placements.php:192
705
  msgid "Ad Groups"
706
  msgstr ""
707
 
708
+ #: classes/widget.php:83 public/class-advanced-ads.php:634
709
  #: admin/includes/class-menu.php:62 admin/includes/class-menu.php:62
710
  #: admin/includes/class-shortcode-creator.php:84
711
  #: admin/views/ad-group-list-form-row.php:68
712
  #: admin/views/ad-group-list-header.php:5 admin/views/placements-item.php:11
713
+ #: admin/views/placements.php:199 modules/import-export/views/page.php:23
714
  msgid "Ads"
715
  msgstr ""
716
 
740
  msgid "Individual Posts, Pages and Public Post Types"
741
  msgstr ""
742
 
743
+ #: public/class-advanced-ads.php:329
744
  msgid "Advanced Ads Error following:"
745
  msgstr ""
746
 
747
+ #: public/class-advanced-ads.php:332
748
  #, php-format
749
  msgid "Advanced Ads Error: %s"
750
  msgstr ""
751
 
752
+ #: public/class-advanced-ads.php:597
753
  msgctxt "ad group general name"
754
  msgid "Ad Groups & Rotations"
755
  msgstr ""
756
 
757
+ #: public/class-advanced-ads.php:599
758
  msgid "Search Ad Groups"
759
  msgstr ""
760
 
761
+ #: public/class-advanced-ads.php:600
762
  msgid "All Ad Groups"
763
  msgstr ""
764
 
765
+ #: public/class-advanced-ads.php:601
766
  msgid "Parent Ad Groups"
767
  msgstr ""
768
 
769
+ #: public/class-advanced-ads.php:602
770
  msgid "Parent Ad Groups:"
771
  msgstr ""
772
 
773
+ #: public/class-advanced-ads.php:603
774
  msgid "Edit Ad Group"
775
  msgstr ""
776
 
777
+ #: public/class-advanced-ads.php:604
778
  msgid "Update Ad Group"
779
  msgstr ""
780
 
781
+ #: public/class-advanced-ads.php:605
782
  msgid "Add New Ad Group"
783
  msgstr ""
784
 
785
+ #: public/class-advanced-ads.php:606
786
  msgid "New Ad Groups Name"
787
  msgstr ""
788
 
789
+ #: public/class-advanced-ads.php:607 modules/import-export/views/page.php:24
790
  msgid "Groups"
791
  msgstr ""
792
 
793
+ #: public/class-advanced-ads.php:608
794
  msgid "No Ad Group found"
795
  msgstr ""
796
 
797
+ #: public/class-advanced-ads.php:636 public/class-advanced-ads.php:640
798
  #: admin/includes/class-menu.php:79 admin/views/ad-group-list-ads.php:17
799
  msgid "New Ad"
800
  msgstr ""
801
 
802
+ #: public/class-advanced-ads.php:637 admin/includes/class-menu.php:79
803
  msgid "Add New Ad"
804
  msgstr ""
805
 
806
+ #: public/class-advanced-ads.php:638
807
+ #: admin/includes/class-ad-groups-list.php:313
808
  #: modules/import-export/classes/import.php:146
809
  #: modules/import-export/classes/import.php:186
810
  #: modules/import-export/classes/import.php:562
811
  msgid "Edit"
812
  msgstr ""
813
 
814
+ #: public/class-advanced-ads.php:639
815
  msgid "Edit Ad"
816
  msgstr ""
817
 
818
+ #: public/class-advanced-ads.php:641
819
  msgid "View"
820
  msgstr ""
821
 
822
+ #: public/class-advanced-ads.php:642
823
  msgid "View the Ad"
824
  msgstr ""
825
 
826
+ #: public/class-advanced-ads.php:643
827
  msgid "Search Ads"
828
  msgstr ""
829
 
830
+ #: public/class-advanced-ads.php:644
831
  msgid "No Ads found"
832
  msgstr ""
833
 
834
+ #: public/class-advanced-ads.php:645
835
  msgid "No Ads found in Trash"
836
  msgstr ""
837
 
838
+ #: public/class-advanced-ads.php:646
839
  msgid "Parent Ad"
840
  msgstr ""
841
 
842
+ #: public/class-advanced-ads.php:771
843
  msgctxt "label above ads"
844
  msgid "Advertisements"
845
  msgstr ""
846
 
847
+ #: admin/includes/class-ad-groups-list.php:165
848
  msgid "Ad weight"
849
  msgstr ""
850
 
851
+ #: admin/includes/class-ad-groups-list.php:176
852
  #: admin/views/ad-list-timing-column.php:4
853
  #, php-format
854
  msgid "starts %s"
855
  msgstr ""
856
 
857
+ #: admin/includes/class-ad-groups-list.php:196
858
  #: admin/views/ad-list-timing-column.php:28
859
  #, php-format
860
  msgid "expires %s"
861
  msgstr ""
862
 
863
+ #: admin/includes/class-ad-groups-list.php:198
864
  #: admin/views/ad-list-timing-column.php:30
865
  #, php-format
866
  msgid "<strong>expired</strong> %s"
867
  msgstr ""
868
 
869
+ #: admin/includes/class-ad-groups-list.php:213
870
  #, php-format
871
  msgid "show %d more ads"
872
  msgstr ""
873
 
874
+ #: admin/includes/class-ad-groups-list.php:217
875
  msgid "all published ads are displayed"
876
  msgstr ""
877
 
878
+ #: admin/includes/class-ad-groups-list.php:219
879
  #, php-format
880
  msgid "up to %d ads displayed"
881
  msgstr ""
882
 
883
+ #: admin/includes/class-ad-groups-list.php:222
884
  msgid "No ads assigned"
885
  msgstr ""
886
 
887
+ #: admin/includes/class-ad-groups-list.php:223
888
  msgid "Add some"
889
  msgstr ""
890
 
891
+ #: admin/includes/class-ad-groups-list.php:289
892
  msgid "Random ads"
893
  msgstr ""
894
 
895
+ #: admin/includes/class-ad-groups-list.php:290
896
  msgid "Display random ads based on ad weight"
897
  msgstr ""
898
 
899
+ #: admin/includes/class-ad-groups-list.php:293
900
  msgid "Ordered ads"
901
  msgstr ""
902
 
903
+ #: admin/includes/class-ad-groups-list.php:294
904
  msgid "Display ads with the highest ad weight first"
905
  msgstr ""
906
 
907
+ #: admin/includes/class-ad-groups-list.php:314
908
  msgid "Usage"
909
  msgstr ""
910
 
911
+ #: admin/includes/class-ad-groups-list.php:323
912
  msgid "Delete"
913
  msgstr ""
914
 
915
+ #: admin/includes/class-ad-groups-list.php:344
916
+ #: admin/includes/class-ad-groups-list.php:394
917
  msgid "Invalid Ad Group"
918
  msgstr ""
919
 
920
+ #: admin/includes/class-ad-groups-list.php:349
921
+ #: admin/includes/class-ad-groups-list.php:399
922
  msgid "You don’t have permission to change the ad groups"
923
  msgstr ""
924
 
925
+ #: admin/includes/class-ad-groups-list.php:379
926
  msgid "No ad group created"
927
  msgstr ""
928
 
981
  msgstr[0] ""
982
  msgstr[1] ""
983
 
984
+ #: admin/includes/class-ad-type.php:539 admin/includes/class-ad-type.php:540
985
  msgid "Ad updated."
986
  msgstr ""
987
 
988
  #. translators: %s: date and time of the revision
989
+ #: admin/includes/class-ad-type.php:542
990
  #, php-format
991
  msgid "Ad restored to revision from %s"
992
  msgstr ""
993
 
994
+ #: admin/includes/class-ad-type.php:543 admin/includes/class-ad-type.php:544
995
  msgid "Ad saved."
996
  msgstr ""
997
 
998
+ #: admin/includes/class-ad-type.php:545
999
  msgid "Ad submitted."
1000
  msgstr ""
1001
 
1002
+ #: admin/includes/class-ad-type.php:547
1003
  #, php-format
1004
  msgid "Ad scheduled for: <strong>%1$s</strong>."
1005
  msgstr ""
1006
 
1007
  #. translators: Publish box date format, see http://php.net/date
1008
+ #: admin/includes/class-ad-type.php:549
1009
  msgid "M j, Y @ G:i"
1010
  msgstr ""
1011
 
1012
+ #: admin/includes/class-ad-type.php:551
1013
  msgid "Ad draft updated."
1014
  msgstr ""
1015
 
1016
+ #: admin/includes/class-ad-type.php:638
1017
  msgid ""
1018
  "You don’t have access to ads. Please deactivate and re-enable Advanced Ads "
1019
  "again to fix this."
1060
  msgid "Error while trying to disable the license. Please contact support."
1061
  msgstr ""
1062
 
1063
+ #: admin/includes/class-licenses.php:245 admin/includes/class-licenses.php:262
1064
  msgid "License couldn’t be deactivated. Please try again later."
1065
  msgstr ""
1066
 
1067
+ #: admin/includes/class-licenses.php:469
1068
  #, php-format
1069
  msgid "Download failed. <a href=\"%s\">Click here to try another method</a>."
1070
  msgstr ""
1071
 
1072
+ #: admin/includes/class-licenses.php:471
1073
  #, php-format
1074
  msgid ""
1075
  "Download failed. <a href=\"%s\" target=\"_blank\">Click here to learn why</a>"
1101
  msgid "Settings"
1102
  msgstr ""
1103
 
1104
+ #: admin/includes/class-menu.php:191 admin/includes/class-menu.php:218
1105
  msgid "Sorry, you are not allowed to access this feature."
1106
  msgstr ""
1107
 
1108
+ #: admin/includes/class-menu.php:204
1109
  msgid ""
1110
  "You attempted to edit an ad group that doesn&#8217;t exist. Perhaps it was "
1111
  "deleted?"
1112
  msgstr ""
1113
 
1114
+ #: admin/includes/class-meta-box.php:55
1115
  msgid "Ad Type"
1116
  msgstr ""
1117
 
1118
+ #: admin/includes/class-meta-box.php:61
1119
  msgid "Ad Parameters"
1120
  msgstr ""
1121
 
1122
+ #: admin/includes/class-meta-box.php:64
1123
  msgid "Layout / Output"
1124
  msgstr ""
1125
 
1126
+ #: admin/includes/class-meta-box.php:74
1127
  msgid "Increase your ad revenue"
1128
  msgstr ""
1129
 
1130
+ #: admin/includes/class-meta-box.php:79
1131
  msgid "Ad Stats"
1132
  msgstr ""
1133
 
1134
+ #: admin/includes/class-meta-box.php:140 admin/includes/class-meta-box.php:151
1135
+ #: admin/includes/class-meta-box.php:156 admin/includes/class-settings.php:554
1136
  #: admin/views/ad-output-metabox.php:51
1137
  msgid "Manual"
1138
  msgstr ""
1139
 
1140
+ #: admin/includes/class-meta-box.php:150
1141
  msgid "Video"
1142
  msgstr ""
1143
 
1144
+ #: admin/includes/class-meta-box.php:244
1145
  msgid "Ad Settings"
1146
  msgstr ""
1147
 
1148
+ #: admin/includes/class-meta-box.php:346 admin/views/overview.php:6
1149
  msgid "Ads Dashboard"
1150
  msgstr ""
1151
 
1152
+ #: admin/includes/class-meta-box.php:357
1153
  #, php-format
1154
  msgid "%d ads – <a href=\"%s\">manage</a> - <a href=\"%s\">new</a>"
1155
  msgstr ""
1156
 
1157
+ #: admin/includes/class-meta-box.php:369
1158
  msgid "plugin manual and homepage"
1159
  msgstr ""
1160
 
1161
+ #: admin/includes/class-meta-box.php:376
1162
  msgid "Get the tutorial via email"
1163
  msgstr ""
1164
 
1165
+ #: admin/includes/class-meta-box.php:383
1166
  msgid "Get AdSense tips via email"
1167
  msgstr ""
1168
 
1169
+ #: admin/includes/class-meta-box.php:439
1170
  msgid "From the ad optimization universe"
1171
  msgstr ""
1172
 
1173
+ #: admin/includes/class-meta-box.php:448
1174
  msgid "Advanced Ads Tutorials"
1175
  msgstr ""
1176
 
1177
+ #: admin/includes/class-notices.php:458
1178
  #, php-format
1179
  msgid ""
1180
  "You don’t seem to have an email address. Please use <a href=\"%s\" "
1181
  "target=\"_blank\">this form</a> to sign up."
1182
  msgstr ""
1183
 
1184
+ #: admin/includes/class-notices.php:476
1185
  msgid ""
1186
  "How embarrassing. The email server seems to be down. Please try again later."
1187
  msgstr ""
1188
 
1189
+ #: admin/includes/class-notices.php:481
1190
  #, php-format
1191
  msgid ""
1192
  "Please check your email (%s) for the confirmation message. If you didn’t "
1206
  msgid "Create your first ad"
1207
  msgstr ""
1208
 
1209
+ #: admin/includes/class-overview-widgets.php:75
1210
  msgid "Join the newsletter for more benefits"
1211
  msgstr ""
1212
 
1213
+ #: admin/includes/class-overview-widgets.php:77
1214
  msgid "Get 2 free add-ons"
1215
  msgstr ""
1216
 
1217
+ #: admin/includes/class-overview-widgets.php:78
1218
  msgid "Get the first steps and more tutorials to your inbox"
1219
  msgstr ""
1220
 
1221
+ #: admin/includes/class-overview-widgets.php:79
1222
  msgid "How to earn more with AdSense"
1223
  msgstr ""
1224
 
1225
+ #: admin/includes/class-overview-widgets.php:82
1226
  msgid "Join now"
1227
  msgstr ""
1228
 
1229
+ #: admin/includes/class-overview-widgets.php:90 admin/includes/notices.php:48
1230
+ msgid ""
1231
+ "Do you find Advanced Ads useful and would like to keep us motivated? Please "
1232
+ "help us with a review."
1233
+ msgstr ""
1234
+
1235
+ #: admin/includes/class-overview-widgets.php:92 admin/includes/notices.php:51
1236
+ msgid "Sure, I’ll rate the plugin"
1237
+ msgstr ""
1238
+
1239
+ #: admin/includes/class-overview-widgets.php:94 admin/includes/notices.php:52
1240
+ msgid "I already did"
1241
+ msgstr ""
1242
+
1243
+ #: admin/includes/class-overview-widgets.php:100
1244
  msgid "Manage your ads"
1245
  msgstr ""
1246
 
1247
+ #: admin/includes/class-overview-widgets.php:104
1248
+ msgid "Get the All Access pass"
1249
+ msgstr ""
1250
+
1251
+ #: admin/includes/class-overview-widgets.php:130
1252
  #, php-format
1253
  msgid "<a href=\"%s\" target=\"_blank\">Manual</a>"
1254
  msgstr ""
1255
 
1256
+ #: admin/includes/class-overview-widgets.php:131
1257
  #, php-format
1258
  msgid "<a href=\"%s\" target=\"_blank\">FAQ and Support</a>"
1259
  msgstr ""
1260
 
1261
+ #: admin/includes/class-overview-widgets.php:132
1262
  #, php-format
1263
  msgid ""
1264
  "Thank the developer with a &#9733;&#9733;&#9733;&#9733;&#9733; review on <a "
1265
  "href=\"%s\" target=\"_blank\">wordpress.org</a>"
1266
  msgstr ""
1267
 
1268
+ #: admin/includes/class-overview-widgets.php:149
1269
  msgid "The solution for professional websites."
1270
  msgstr ""
1271
 
1272
+ #: admin/includes/class-overview-widgets.php:152
1273
  #: admin/views/pitch-pro-tab.php:7
1274
  msgid "support for cached sites"
1275
  msgstr ""
1276
 
1277
+ #: admin/includes/class-overview-widgets.php:155
1278
+ #: admin/includes/class-overview-widgets.php:156
1279
+ #: admin/includes/class-overview-widgets.php:157
1280
+ #: admin/includes/class-overview-widgets.php:158
1281
  #, php-format
1282
  msgid "integrates with <strong>%s</strong>"
1283
  msgstr ""
1284
 
1285
+ #: admin/includes/class-overview-widgets.php:159
1286
  msgid "click fraud protection, lazy load, ad-block ads"
1287
  msgstr ""
1288
 
1289
+ #: admin/includes/class-overview-widgets.php:160
1290
  #: admin/views/pitch-pro-tab.php:8
1291
  msgid "11 more display and visitor conditions"
1292
  msgstr ""
1293
 
1294
+ #: admin/includes/class-overview-widgets.php:161
1295
  #: admin/views/pitch-pro-tab.php:9
1296
  msgid "6 more placements"
1297
  msgstr ""
1298
 
1299
+ #: admin/includes/class-overview-widgets.php:162
1300
  #: admin/views/pitch-pro-tab.php:10
1301
  msgid "placement tests for ad optimization"
1302
  msgstr ""
1303
 
1304
+ #: admin/includes/class-overview-widgets.php:163
1305
  #: admin/views/pitch-pro-tab.php:11
1306
  msgid "ad grids and many more advanced features"
1307
  msgstr ""
1308
 
1309
+ #: admin/includes/class-overview-widgets.php:170
1310
  msgid ""
1311
  "Analyze clicks and impressions of your ads locally or in Google Analytics, "
1312
  "share reports, and limit ads to a specific number of impressions or clicks."
1313
  msgstr ""
1314
 
1315
+ #: admin/includes/class-overview-widgets.php:176
1316
  msgid ""
1317
  "Display ads based on the device or the size of your visitor’s browser, and "
1318
  "control ads on AMP pages."
1319
  msgstr ""
1320
 
1321
+ #: admin/includes/class-overview-widgets.php:189
1322
  msgid ""
1323
  "Earn more money and let advertisers pay for ad space directly on the "
1324
  "frontend of your site."
1325
  msgstr ""
1326
 
1327
+ #: admin/includes/class-overview-widgets.php:195
1328
  msgid ""
1329
  "Target visitors with ads that match their geo location and make more money "
1330
  "with regional campaigns."
1331
  msgstr ""
1332
 
1333
+ #: admin/includes/class-overview-widgets.php:201
1334
  msgid ""
1335
  "Increase click rates on your ads by placing them in sticky positions above, "
1336
  "next or below your site."
1337
  msgstr ""
1338
 
1339
+ #: admin/includes/class-overview-widgets.php:207
1340
  msgid ""
1341
  "Users will never miss an ad or other information in a PopUp. Choose when it "
1342
  "shows up and for how long a user can close it."
1343
  msgstr ""
1344
 
1345
+ #: admin/includes/class-overview-widgets.php:213
1346
  msgid ""
1347
  "Create a beautiful and simple slider from your ads to show more information "
1348
  "on less space."
1349
  msgstr ""
1350
 
1351
+ #: admin/includes/class-overview-widgets.php:219
1352
  msgid ""
1353
  "Place AdSense In-feed ads between posts on homepage, category, and archive "
1354
  "pages."
1355
  msgstr ""
1356
 
1357
+ #: admin/includes/class-overview-widgets.php:222
1358
+ #: admin/includes/class-overview-widgets.php:397
1359
+ #: admin/includes/class-overview-widgets.php:413
1360
  msgid "Install now"
1361
  msgstr ""
1362
 
1363
+ #: admin/includes/class-overview-widgets.php:240
1364
+ #: admin/includes/class-overview-widgets.php:261
 
1365
  #: admin/includes/class-overview-widgets.php:286
1366
  #: admin/includes/class-overview-widgets.php:304
1367
  #: admin/includes/class-overview-widgets.php:322
1368
  #: admin/includes/class-overview-widgets.php:340
1369
  #: admin/includes/class-overview-widgets.php:358
1370
+ #: admin/includes/class-overview-widgets.php:376
1371
  msgid "Activate now"
1372
  msgstr ""
1373
 
1374
+ #: admin/includes/class-overview-widgets.php:269
1375
  msgid "Visit your ad stats"
1376
  msgstr ""
1377
 
1378
+ #: admin/includes/class-overview-widgets.php:393
1379
  msgid "Use Genesis specific ad positions."
1380
  msgstr ""
1381
 
1382
+ #: admin/includes/class-overview-widgets.php:409
1383
  msgid "Manage ad positions with Visual Composer."
1384
  msgstr ""
1385
 
1386
+ #: admin/includes/class-overview-widgets.php:425
1387
+ msgid "Our best deal with all add-ons included."
1388
  msgstr ""
1389
 
1390
+ #: admin/includes/class-overview-widgets.php:427
1391
+ msgid "Get full access"
1392
  msgstr ""
1393
 
1394
+ #: admin/includes/class-overview-widgets.php:441
1395
  #: admin/views/ad-display-metabox.php:31 admin/views/ad-visitor-metabox.php:39
1396
  msgid "Visit the manual"
1397
  msgstr ""
1398
 
1399
+ #: admin/includes/class-overview-widgets.php:444
1400
  msgid "Get this add-on"
1401
  msgstr ""
1402
 
1557
  "limitation and ads might show up again."
1558
  msgstr ""
1559
 
1560
+ #: admin/includes/class-settings.php:458
1561
+ msgid "Read this first"
 
 
 
 
1562
  msgstr ""
1563
 
1564
+ #: admin/includes/class-settings.php:459
1565
+ msgid "Hide ads from crawlers, bots and empty user agents."
 
 
 
1566
  msgstr ""
1567
 
1568
+ #: admin/includes/class-settings.php:472
1569
  msgid ""
1570
  "Disable internal notices like tips, tutorials, email newsletters and update "
1571
  "notices. Disabling notices is recommended if you run multiple blogs with "
1572
  "Advanced Ads already."
1573
  msgstr ""
1574
 
1575
+ #: admin/includes/class-settings.php:489
1576
  msgid ""
1577
  "Prefix of class or id attributes in the frontend. Change it if you don’t "
1578
  "want <strong>ad blockers</strong> to mark these blocks as ads.<br/>You might "
1579
  "need to <strong>rewrite css rules afterwards</strong>."
1580
  msgstr ""
1581
 
1582
+ #: admin/includes/class-settings.php:510
1583
  msgid ""
1584
  "Remove the ID attribute from widgets in order to not make them an easy "
1585
  "target of ad blockers."
1586
  msgstr ""
1587
 
1588
+ #: admin/includes/class-settings.php:513
1589
  msgid ""
1590
  "If checked, the Advanced Ads Widget will not work with the fixed option of "
1591
  "the <strong>Q2W3 Fixed Widget</strong> plugin."
1592
  msgstr ""
1593
 
1594
+ #: admin/includes/class-settings.php:535
1595
  msgid "Allow editors to also manage and publish ads."
1596
  msgstr ""
1597
 
1598
+ #: admin/includes/class-settings.php:536
1599
  #, php-format
1600
  msgid ""
1601
  "You can assign different ad-related roles on a user basis with <a "
1602
  "href=\"%s\" target=\"_blank\">Advanced Ads Pro</a>."
1603
  msgstr ""
1604
 
1605
+ #: admin/includes/class-settings.php:547
1606
  msgctxt "label before ads"
1607
  msgid "Advertisements"
1608
  msgstr ""
1609
 
1610
+ #: admin/includes/class-settings.php:554
1611
  msgid "Displayed above ads."
1612
  msgstr ""
1613
 
1614
+ #: admin/includes/class-settings.php:588
1615
  msgid "Clean up all data related to Advanced Ads when removing the plugin."
1616
  msgstr ""
1617
 
1618
+ #: admin/includes/class-settings.php:601
1619
  msgid "Disable shortcode button in visual editor."
1620
  msgstr ""
1621
 
1677
 
1678
  #: admin/includes/notices.php:47
1679
  #, php-format
1680
+ msgid "You’ve successfully <strong>created %s ads using Advanced Ads</strong>."
 
 
 
1681
  msgstr ""
1682
 
1683
  #: admin/includes/notices.php:53
1684
+ msgid "I am not happy, please help"
1685
+ msgstr ""
1686
+
1687
+ #: admin/includes/notices.php:54
1688
+ msgid "Ask me later"
 
 
 
 
1689
  msgstr ""
1690
 
1691
+ #: admin/includes/notices.php:61
1692
  #, php-format
1693
  msgid ""
1694
  "Some assets were changed. Please <strong>rebuild the asset folder</strong> "
1850
  msgstr ""
1851
 
1852
  #: admin/views/ad-group-list-row.php:8 admin/views/ad-info.php:3
1853
+ #: admin/views/placements.php:66
1854
  msgid "shortcode"
1855
  msgstr ""
1856
 
2249
  msgid "not on mobile devices"
2250
  msgstr ""
2251
 
2252
+ #: admin/views/checks.php:10
2253
+ #, php-format
2254
+ msgid ""
2255
+ "Your <strong>PHP version (%s) is too low</strong>. Advanced Ads is built for "
2256
+ "PHP 5.3 and higher. It might work, but updating PHP is highly recommended. "
2257
+ "Please ask your hosting provider for more information."
2258
+ msgstr ""
2259
+
2260
+ #: admin/views/checks.php:13
2261
+ #, php-format
2262
+ msgid ""
2263
+ "Your <strong>website uses cache</strong>. Some dynamic features like ad "
2264
+ "rotation or visitor conditions might not work properly. Use the cache-"
2265
+ "busting feature of <a href=\"%s\" target=\"_blank\">Advanced Ads Pro</a> to "
2266
+ "load ads dynamically."
2267
+ msgstr ""
2268
+
2269
+ #: admin/views/checks.php:16
2270
+ msgid ""
2271
+ "There is a <strong>new WordPress version available</strong>. Please update."
2272
+ msgstr ""
2273
+
2274
+ #: admin/views/checks.php:19
2275
+ msgid "There are <strong>plugin updates available</strong>. Please update."
2276
+ msgstr ""
2277
+
2278
+ #: admin/views/checks.php:22
2279
+ #, php-format
2280
+ msgid ""
2281
+ "<strong>Autoptimize plugin detected</strong>. While this plugin is great for "
2282
+ "site performance, it is known to alter code, including scripts from ad "
2283
+ "networks. <a href=\"%s\" target=\"_blank\">Advanced Ads Pro</a> has a build-"
2284
+ "in support for Autoptimize."
2285
+ msgstr ""
2286
+
2287
+ #: admin/views/checks.php:25
2288
+ #, php-format
2289
+ msgid ""
2290
+ "Plugins that are known to cause (partial) problems: <strong>%1$s</strong>. "
2291
+ "<a href=\"%2$s\" target=\"_blank\">Learn more</a>."
2292
+ msgstr ""
2293
+
2294
+ #: admin/views/checks.php:28
2295
+ #, php-format
2296
+ msgid ""
2297
+ "Missing PHP extensions could cause issues. Please ask your hosting provider "
2298
+ "to enable them: %s"
2299
+ msgstr ""
2300
+
2301
+ #: admin/views/checks.php:31
2302
+ #, php-format
2303
+ msgid ""
2304
+ "Ads are disabled for all or some pages. See \"disabled ads\" in <a "
2305
+ "href=\"%s\">settings</a>."
2306
+ msgstr ""
2307
+
2308
+ #: admin/views/checks.php:34
2309
+ msgid "This site is hosted on wordpress.com."
2310
+ msgstr ""
2311
+
2312
  #: admin/views/feedback-disable.php:4
2313
  msgid "Why did you decide to disable Advanced Ads?"
2314
  msgstr ""
2371
  msgstr ""
2372
 
2373
  #: admin/views/pitch-bundle.php:1
2374
+ msgid "All Access – with all available add-ons"
2375
  msgstr ""
2376
 
2377
  #: admin/views/pitch-bundle.php:12
2527
  msgid "start counting from bottom"
2528
  msgstr ""
2529
 
2530
+ #: admin/views/placements-item.php:2 admin/views/placements.php:190
2531
  msgid "--not selected--"
2532
  msgstr ""
2533
 
2569
  msgid "show usage"
2570
  msgstr ""
2571
 
2572
+ #: admin/views/placements.php:69
2573
  msgid "template (PHP)"
2574
  msgstr ""
2575
 
2576
+ #: admin/views/placements.php:84
2577
  msgid "Item"
2578
  msgstr ""
2579
 
2580
+ #: admin/views/placements.php:95
2581
  msgid "position"
2582
  msgstr ""
2583
 
2584
+ #: admin/views/placements.php:99
2585
  msgid "Important Notice"
2586
  msgstr ""
2587
 
2588
+ #: admin/views/placements.php:99
2589
  msgid ""
2590
  "Your server is missing an extension. This might break the content injection."
2591
  "<br/>Ignore this warning if everything works fine or else ask your hosting "
2592
  "provider to enable <em>mbstring</em>."
2593
  msgstr ""
2594
 
2595
+ #: admin/views/placements.php:120
2596
  msgid "ad label"
2597
  msgstr ""
2598
 
2600
  msgid "show all options"
2601
  msgstr ""
2602
 
2603
+ #: admin/views/placements.php:137
2604
  #, php-format
2605
  msgid ""
2606
  "Tutorial: <a href=\"%s\" target=\"_blank\">How to place visible ads in the "
2607
  "header of your website</a>."
2608
  msgstr ""
2609
 
2610
+ #: admin/views/placements.php:144
2611
  msgctxt "checkbox to remove placement"
2612
  msgid "delete"
2613
  msgstr ""
2614
 
2615
+ #: admin/views/placements.php:151
2616
  msgid "Save Placements"
2617
  msgstr ""
2618
 
2619
+ #: admin/views/placements.php:153
2620
  msgid "Create a new placement"
2621
  msgstr ""
2622
 
2623
+ #: admin/views/placements.php:154
2624
  msgid "New Placement"
2625
  msgstr ""
2626
 
2627
+ #: admin/views/placements.php:163
2628
  msgid "Choose a placement type"
2629
  msgstr ""
2630
 
2631
+ #: admin/views/placements.php:164
2632
  #, php-format
2633
  msgid ""
2634
  "Placement types define where the ad is going to be displayed. Learn more "
2635
  "about the different types from the <a href=\"%s\">manual</a>"
2636
  msgstr ""
2637
 
2638
+ #: admin/views/placements.php:181
2639
  msgid "Please select a placement type."
2640
  msgstr ""
2641
 
2642
+ #: admin/views/placements.php:183
2643
  msgid "Choose a Name"
2644
  msgstr ""
2645
 
2646
+ #: admin/views/placements.php:184
2647
  msgid ""
2648
  "The name of the placement is only visible to you. Tip: choose a descriptive "
2649
  "one, e.g. <em>Below Post Headline</em>."
2650
  msgstr ""
2651
 
2652
+ #: admin/views/placements.php:185
2653
  msgid "Placement Name"
2654
  msgstr ""
2655
 
2656
+ #: admin/views/placements.php:186
2657
  msgid "Please enter a name for your placement."
2658
  msgstr ""
2659
 
2660
+ #: admin/views/placements.php:187
2661
  msgid "Choose the Ad or Group"
2662
  msgstr ""
2663
 
2664
+ #: admin/views/placements.php:188
2665
  msgid "The ad or group that should be displayed."
2666
  msgstr ""
2667
 
2668
+ #: admin/views/placements.php:207
2669
  msgid "Save New Placement"
2670
  msgstr ""
2671
 
2685
  #, php-format
2686
  msgid ""
2687
  "Click on %2$s if you renewed it or have a subscription or <a href=\"%1$s\" "
2688
+ "target=\"_blank\">renew your license</a>."
2689
  msgstr ""
2690
 
2691
  #: admin/views/setting-license.php:27
2765
  msgid "General"
2766
  msgstr ""
2767
 
2768
+ #: admin/views/settings.php:39
2769
  msgid "Save settings on this page"
2770
  msgstr ""
2771
 
2772
+ #: admin/views/settings.php:46 modules/import-export/main.php:15
2773
  #: modules/import-export/main.php:15
2774
  msgid "Import &amp; Export"
2775
  msgstr ""
2776
 
2777
+ #: admin/views/support.php:6
2778
  msgid ""
2779
  "Please fix the red highlighted issues on this page or try to understand "
2780
  "their consequences before contacting support."
2781
  msgstr ""
2782
 
2783
+ #: admin/views/support.php:8
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2784
  msgid "Possible Issues"
2785
  msgstr ""
2786
 
2787
+ #: admin/views/support.php:10
2788
  msgid "Ads not showing up"
2789
  msgstr ""
2790
 
2791
+ #: admin/views/support.php:11
2792
  msgid "Purchase & Licenses"
2793
  msgstr ""
2794
 
2795
+ #: admin/views/support.php:12
2796
  msgid "General Issues"
2797
  msgstr ""
2798
 
2799
+ #: admin/views/support.php:13
2800
  msgid "Issues with Add-Ons"
2801
  msgstr ""
2802
 
2803
+ #: admin/views/support.php:15
2804
  msgid ""
2805
  "Use the following form to search for solutions in the manual on "
2806
  "wpadvancedads.com"
2807
  msgstr ""
2808
 
2809
+ #: admin/views/support.php:18
2810
  msgid "search"
2811
  msgstr ""
2812
 
2813
+ #: admin/views/support.php:20
2814
  #, php-format
2815
  msgid ""
2816
  "Take a look at more common issues or contact us directly through the <a "
2821
  msgid " at "
2822
  msgstr ""
2823
 
2824
+ #: public/views/ad-debug.php:20
2825
  msgid "Ad debug output"
2826
  msgstr ""
2827
 
2828
+ #: public/views/ad-debug.php:22
2829
  msgid "Find solutions in the manual"
2830
  msgstr ""
2831
 
2890
  msgid "Responsive"
2891
  msgstr ""
2892
 
2893
+ #: modules/gadsense/admin/admin.php:46
2894
  msgid "The ad details couldn't be retrieved from the ad code"
2895
  msgstr ""
2896
 
2897
+ #: modules/gadsense/admin/admin.php:47
2898
  msgid ""
2899
  "Warning : The AdSense account from this code does not match the one set with "
2900
  "the Advanced Ads Plugin. This ad might cause troubles when used in the front "
2901
  "end."
2902
  msgstr ""
2903
 
2904
+ #: modules/gadsense/admin/admin.php:51
2905
+ msgid ""
2906
+ "This type of ad code is set up in the AdSense settings. Click on the "
2907
+ "following button to enable it now."
2908
+ msgstr ""
2909
+
2910
+ #: modules/gadsense/admin/admin.php:52
2911
+ msgid "Activate"
2912
+ msgstr ""
2913
+
2914
+ #: modules/gadsense/admin/admin.php:138
2915
  msgid "AdSense ID"
2916
  msgstr ""
2917
 
2918
+ #: modules/gadsense/admin/admin.php:147
2919
  msgid "Limit to 3 ads"
2920
  msgstr ""
2921
 
2922
+ #: modules/gadsense/admin/admin.php:156
2923
  msgid "Activate Page-Level ads"
2924
  msgstr ""
2925
 
2926
+ #: modules/gadsense/admin/admin.php:165
2927
  msgid "Disable violation warnings"
2928
  msgstr ""
2929
 
2930
+ #: modules/gadsense/admin/admin.php:173
2931
  msgid "Transparent background"
2932
  msgstr ""
2933
 
2934
+ #: modules/gadsense/admin/admin.php:193
2935
  #, php-format
2936
  msgid ""
2937
  "Please enter your Publisher ID in order to use AdSense on your page. See the "
2938
  "<a href=\"%s\" target=\"_blank\">manual</a> for more information."
2939
  msgstr ""
2940
 
2941
+ #: modules/gadsense/admin/admin.php:207
2942
  msgid "Your AdSense Publisher ID <em>(pub-xxxxxxxxxxxxxx)</em>"
2943
  msgstr ""
2944
 
2945
+ #: modules/gadsense/admin/admin.php:219
2946
  #, php-format
2947
  msgid "Limit to %d AdSense ads"
2948
  msgstr ""
2949
 
2950
+ #: modules/gadsense/admin/admin.php:223
2951
  msgid ""
2952
  "There is no explicit limit for AdSense ads anymore, but you can still use "
2953
  "this setting to prevent too many AdSense ads to show accidentally on your "
2954
  "site."
2955
  msgstr ""
2956
 
2957
+ #: modules/gadsense/admin/admin.php:227
2958
  msgid ""
2959
  "Due to technical restrictions, the limit does not work on placements with "
2960
  "cache-busting enabled."
2961
  msgstr ""
2962
 
2963
+ #: modules/gadsense/admin/admin.php:241
2964
  msgid "Insert Page-Level ads code on all pages."
2965
  msgstr ""
2966
 
2967
+ #: modules/gadsense/admin/admin.php:242
2968
  msgid ""
2969
  "You still need to enable Page-Level ads in your AdSense account. See <a "
2970
  "href=\"https://support.google.com/adsense/answer/6245304\" target=\"_blank\">"
2971
  "AdSense Help</a> (requires AdSense-login) for more information."
2972
  msgstr ""
2973
 
2974
+ #: modules/gadsense/admin/admin.php:243
2975
  #, php-format
2976
  msgid ""
2977
  "Please notice that this code might also activate QuickStart ads. Please read "
2979
  "random places</strong>."
2980
  msgstr ""
2981
 
2982
+ #: modules/gadsense/admin/admin.php:256
2983
  msgid "Disable warnings about potential violations of the AdSense terms."
2984
  msgstr ""
2985
 
2986
+ #: modules/gadsense/admin/admin.php:257
2987
  #, php-format
2988
  msgid ""
2989
  "Our <a href=\"%s\" target=\"_blank\">Ad Health</a> feature monitors if "
2991
  "managed with Advanced Ads. Enable this option to remove these checks"
2992
  msgstr ""
2993
 
2994
+ #: modules/gadsense/admin/admin.php:268
2995
  msgid ""
2996
  "Enable this option in case your theme adds an unfortunate background color "
2997
  "to AdSense ads."
2998
  msgstr ""
2999
 
3000
+ #: modules/gadsense/admin/admin.php:286
3001
  #: modules/gadsense/includes/class-ad-type-adsense.php:73
3002
  msgid "The Publisher ID has an incorrect format. (must start with \"pub-\")"
3003
  msgstr ""
3004
 
3005
+ #: modules/gadsense/admin/admin.php:308
3006
  msgid "AdSense"
3007
  msgstr ""
3008
 
3009
+ #: modules/gadsense/admin/admin.php:360
3010
  #, php-format
3011
  msgid ""
3012
  "Responsive AdSense ads don’t work reliably with <em>Position</em> set to "
3015
  "wrapped in text."
3016
  msgstr ""
3017
 
3018
+ #: modules/gadsense/admin/admin.php:366
3019
  #, php-format
3020
  msgid ""
3021
  "<a href=\"%s\" target=\"_blank\">Install the free AdSense In-feed add-on</a> "
3022
  "in order to place ads between posts."
3023
  msgstr ""
3024
 
3025
+ #: modules/gadsense/admin/admin.php:373
3026
  #, php-format
3027
  msgid ""
3028
  "Use the <a href=\"%s\" target=\"_blank\">Responsive add-on</a> in order to "
modules/ad-blocker/admin/admin.php CHANGED
@@ -23,11 +23,11 @@ class Advanced_Ads_Ad_Blocker_Admin
23
  protected $search_file_pattern = '/(css|js|png|gif)$/';
24
 
25
  /**
26
- * pattern to exclide directories from search. The string does not contain 'vendor/composer' or '/admin/'
27
  *
28
  * @var string
29
  */
30
- protected $exclude_dir_pattern = '/(vendor\/composer|\/admin\/)/';
31
 
32
  /**
33
  * Array, containing path information on the currently configured uploads directory
@@ -152,6 +152,9 @@ class Advanced_Ads_Ad_Blocker_Admin
152
  if ( $wp_filesystem instanceof WP_Filesystem_Base && is_wp_error( $wp_filesystem->errors ) && $wp_filesystem->errors->get_error_code() ) {
153
  $message = esc_html( $wp_filesystem->errors->get_error_message() );
154
  }
 
 
 
155
  } else {
156
  $output = $this->process_form();
157
  if ( is_wp_error( $output ) ) {
@@ -239,14 +242,14 @@ class Advanced_Ads_Ad_Blocker_Admin
239
  if ( ! empty( $this->options['folder_name'] ) ) {
240
  $new_options['folder_name'] = $new_options_error['folder_name'] = $this->options['folder_name'];
241
 
242
- $old_folder_normalized = Advanced_Ads_Filesystem::get_instance()->normalize_path( trailingslashit( $this->upload_dir['basedir'] ) . $this->options['folder_name'] );
243
 
244
  if ( $wp_filesystem->exists( $old_folder_normalized ) ) {
245
 
246
  if ( $need_assign_new_name ) {
247
  $existing_files[] = (string) $new_options['folder_name'];
248
  $new_folder_name = $this->generate_unique_name( $existing_files );
249
- $new_folder_normalized = Advanced_Ads_Filesystem::get_instance()->normalize_path( trailingslashit( $this->upload_dir['basedir'] ) . $new_folder_name );
250
 
251
  if ( ! $wp_filesystem->move( $old_folder_normalized, $new_folder_normalized ) ) {
252
  $message = sprintf( __( 'Unable to rename "%s" directory', 'advanced-ads' ), $old_folder_normalized );
@@ -317,18 +320,18 @@ class Advanced_Ads_Ad_Blocker_Admin
317
  global $wp_filesystem;
318
 
319
  // Are we completely rebuilding the assets folder?
320
- $normalized_asset_path = Advanced_Ads_Filesystem::get_instance()->normalize_path( trailingslashit( $this->upload_dir['basedir'] ) . $folder_name );
321
  $asset_path = trailingslashit( $this->upload_dir['basedir'] ) . $folder_name ;
 
322
 
323
  // already saved associations (original name => replaced name)
324
  $rand_asset_names = array();
325
 
326
  if ( $need_assign_new_name ) {
327
  // Check if there is a previous asset folder
328
- if ( $wp_filesystem->exists( $normalized_asset_path ) ) {
329
  // Remove the old directory and its contents
330
- if ( ! $wp_filesystem->rmdir( trailingslashit( $normalized_asset_path ), true ) ) {
331
- $message = sprintf( __( 'We do not have direct write access to the "%s" directory', 'advanced-ads' ), $normalized_asset_path );
332
  $this->error_messages->add( 'copy_assets_1', $message);
333
  return false;
334
  }
@@ -346,13 +349,6 @@ class Advanced_Ads_Ad_Blocker_Admin
346
  }
347
  }
348
 
349
- if ( ! $wp_filesystem->exists( $normalized_asset_path ) ) {
350
- if ( ! $wp_filesystem->mkdir( $normalized_asset_path ) ) {
351
- $message = sprintf( __( 'We do not have direct write access to the "%s" directory', 'advanced-ads' ), $this->upload_dir['basedir'] );
352
- $this->error_messages->add( 'copy_assets_2', $message);
353
- return false;
354
- }
355
- }
356
 
357
  // lookup_table contains associations between the original path of the asset and it path within our magic folder
358
  // i.e: [advanced-ads-layer/admin/assets/css/admin.css] => array( path => /12/34/56/78/1347107783.css, size => 99 )
@@ -393,39 +389,43 @@ class Advanced_Ads_Ad_Blocker_Admin
393
  }
394
 
395
  $new_dir_full = trailingslashit( $asset_path ) . trailingslashit( implode( '/', $path_components_new ) );
 
396
  $new_dir = trailingslashit( implode( '/', $path_components_new ) );
397
 
398
 
 
 
399
  if ( ! in_array( $first_cleanup_filename, $not_rename_assets ) && ( $first_cleanup_file_extension == 'js' || $first_cleanup_file_extension == 'css' ) ) {
400
  if ( array_key_exists( $first_cleanup_filename, $rand_asset_names ) ) {
401
- $new_abs_file = $new_dir_full . $rand_asset_names[$first_cleanup_filename];
402
  $new_rel_file = $new_dir . $rand_asset_names[$first_cleanup_filename];
403
  } else {
404
  $new_filename = $this->generate_unique_name( array_values( $rand_asset_names ) ) . '.' . $first_cleanup_file_extension;
405
  $rand_asset_names[$first_cleanup_filename] = (string) $new_filename;
406
- $new_abs_file = $new_dir_full . $new_filename;
407
  $new_rel_file = $new_dir . $new_filename;
408
  }
409
  } else {
410
- $new_abs_file = $new_dir_full . $first_cleanup_filename;
411
  $new_rel_file = $new_dir . $first_cleanup_filename;
412
  }
413
 
414
- if ( ! file_exists( $new_dir_full ) ) {
 
415
  // Create the path if it doesn't exist (prevents the copy() function from failing)
416
- if ( ! wp_mkdir_p( $new_dir_full ) ) {
417
- $message = sprintf( __( 'Unable to create "%s" directory. Is its parent directory writable by the server?', 'advanced-ads' ), $asset_path );
418
  $this->error_messages->add( 'copy_assets_4', $message);
419
  return false;
420
  }
421
  }
422
 
423
- $file = Advanced_Ads_Filesystem::get_instance()->normalize_path( $file );
424
- $new_abs_file = Advanced_Ads_Filesystem::get_instance()->normalize_path( $new_abs_file );
425
 
426
  // Copy the file to our new magic directory
427
- if ( ! $wp_filesystem->copy( $file, $new_abs_file, true, FS_CHMOD_FILE ) ) {
428
- $message = sprintf( __( 'Unable to copy files to %s', 'advanced-ads' ), $normalized_asset_path );
429
  $this->error_messages->add( 'copy_assets_5', $message);
430
  return false;
431
  }
@@ -565,4 +565,5 @@ class Advanced_Ads_Ad_Blocker_Admin
565
  $wp_filesystem->rmdir( $path, true );
566
  }
567
  }
 
568
  }
23
  protected $search_file_pattern = '/(css|js|png|gif)$/';
24
 
25
  /**
26
+ * pattern to exclide directories from search. The string does not contain 'vendor/composer' or '/admin/' or /node_modules/
27
  *
28
  * @var string
29
  */
30
+ protected $exclude_dir_pattern = '/(vendor\/composer|\/admin\/|\/node_modules\/)/';
31
 
32
  /**
33
  * Array, containing path information on the currently configured uploads directory
152
  if ( $wp_filesystem instanceof WP_Filesystem_Base && is_wp_error( $wp_filesystem->errors ) && $wp_filesystem->errors->get_error_code() ) {
153
  $message = esc_html( $wp_filesystem->errors->get_error_message() );
154
  }
155
+ if ( is_wp_error( $fs_connect ) && $fs_connect->get_error_code() ) {
156
+ $message = esc_html( $fs_connect->get_error_message() );
157
+ }
158
  } else {
159
  $output = $this->process_form();
160
  if ( is_wp_error( $output ) ) {
242
  if ( ! empty( $this->options['folder_name'] ) ) {
243
  $new_options['folder_name'] = $new_options_error['folder_name'] = $this->options['folder_name'];
244
 
245
+ $old_folder_normalized = Advanced_Ads_Filesystem::get_instance()->normalize_path( trailingslashit( $this->upload_dir['basedir'] ) ) . $this->options['folder_name'];
246
 
247
  if ( $wp_filesystem->exists( $old_folder_normalized ) ) {
248
 
249
  if ( $need_assign_new_name ) {
250
  $existing_files[] = (string) $new_options['folder_name'];
251
  $new_folder_name = $this->generate_unique_name( $existing_files );
252
+ $new_folder_normalized = Advanced_Ads_Filesystem::get_instance()->normalize_path( trailingslashit( $this->upload_dir['basedir'] ) ) . $new_folder_name;
253
 
254
  if ( ! $wp_filesystem->move( $old_folder_normalized, $new_folder_normalized ) ) {
255
  $message = sprintf( __( 'Unable to rename "%s" directory', 'advanced-ads' ), $old_folder_normalized );
320
  global $wp_filesystem;
321
 
322
  // Are we completely rebuilding the assets folder?
 
323
  $asset_path = trailingslashit( $this->upload_dir['basedir'] ) . $folder_name ;
324
+ $asset_path_normalized = Advanced_Ads_Filesystem::get_instance()->normalize_path( trailingslashit( $this->upload_dir['basedir'] ) ) . $folder_name;
325
 
326
  // already saved associations (original name => replaced name)
327
  $rand_asset_names = array();
328
 
329
  if ( $need_assign_new_name ) {
330
  // Check if there is a previous asset folder
331
+ if ( $wp_filesystem->exists( $asset_path_normalized ) ) {
332
  // Remove the old directory and its contents
333
+ if ( ! $wp_filesystem->rmdir( trailingslashit( $asset_path_normalized ), true ) ) {
334
+ $message = sprintf( __( 'We do not have direct write access to the "%s" directory', 'advanced-ads' ), $asset_path_normalized );
335
  $this->error_messages->add( 'copy_assets_1', $message);
336
  return false;
337
  }
349
  }
350
  }
351
 
 
 
 
 
 
 
 
352
 
353
  // lookup_table contains associations between the original path of the asset and it path within our magic folder
354
  // i.e: [advanced-ads-layer/admin/assets/css/admin.css] => array( path => /12/34/56/78/1347107783.css, size => 99 )
389
  }
390
 
391
  $new_dir_full = trailingslashit( $asset_path ) . trailingslashit( implode( '/', $path_components_new ) );
392
+ $new_dir_full_normalized = trailingslashit( $asset_path_normalized ) . trailingslashit( implode( '/', $path_components_new ) );
393
  $new_dir = trailingslashit( implode( '/', $path_components_new ) );
394
 
395
 
396
+
397
+
398
  if ( ! in_array( $first_cleanup_filename, $not_rename_assets ) && ( $first_cleanup_file_extension == 'js' || $first_cleanup_file_extension == 'css' ) ) {
399
  if ( array_key_exists( $first_cleanup_filename, $rand_asset_names ) ) {
400
+ $new_abs_file = $new_dir_full_normalized . $rand_asset_names[$first_cleanup_filename];
401
  $new_rel_file = $new_dir . $rand_asset_names[$first_cleanup_filename];
402
  } else {
403
  $new_filename = $this->generate_unique_name( array_values( $rand_asset_names ) ) . '.' . $first_cleanup_file_extension;
404
  $rand_asset_names[$first_cleanup_filename] = (string) $new_filename;
405
+ $new_abs_file = $new_dir_full_normalized . $new_filename;
406
  $new_rel_file = $new_dir . $new_filename;
407
  }
408
  } else {
409
+ $new_abs_file = $new_dir_full_normalized . $first_cleanup_filename;
410
  $new_rel_file = $new_dir . $first_cleanup_filename;
411
  }
412
 
413
+
414
+ if ( ! file_exists( $new_dir_full_normalized ) ) {
415
  // Create the path if it doesn't exist (prevents the copy() function from failing)
416
+ if ( ! Advanced_Ads_Filesystem::get_instance()->mkdir_p( $new_dir_full_normalized ) ) {
417
+ $message = sprintf( __( 'We do not have direct write access to the "%s" directory', 'advanced-ads' ), $this->upload_dir['basedir'] );
418
  $this->error_messages->add( 'copy_assets_4', $message);
419
  return false;
420
  }
421
  }
422
 
423
+
424
+ $file_normalized = Advanced_Ads_Filesystem::get_instance()->normalize_path( trailingslashit( dirname( $file ) ) ) . basename( $file );
425
 
426
  // Copy the file to our new magic directory
427
+ if ( ! $wp_filesystem->copy( $file_normalized, $new_abs_file, true, FS_CHMOD_FILE ) ) {
428
+ $message = sprintf( __( 'Unable to copy files to %s', 'advanced-ads' ), $asset_path_normalized );
429
  $this->error_messages->add( 'copy_assets_5', $message);
430
  return false;
431
  }
565
  $wp_filesystem->rmdir( $path, true );
566
  }
567
  }
568
+
569
  }
readme.txt CHANGED
@@ -5,7 +5,7 @@ Tags: ads, ad manager, ad widget, ad rotation, adsense, advertise, advertisement
5
  Requires at least: 4.6
6
  Tested up to: 4.9
7
  Requires PHP: 5.2
8
- Stable tag: 1.8.23
9
  License: GPLv2 or later
10
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
11
 
@@ -233,6 +233,13 @@ Yes. Advanced Ads is based on WordPress standards and therefore easily customiza
233
 
234
  == Changelog ==
235
 
 
 
 
 
 
 
 
236
  = 1.8.23 =
237
 
238
  * moved support page into a tab on the settings page
5
  Requires at least: 4.6
6
  Tested up to: 4.9
7
  Requires PHP: 5.2
8
+ Stable tag: 1.8.24
9
  License: GPLv2 or later
10
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
11
 
233
 
234
  == Changelog ==
235
 
236
+ = 1.8.24 =
237
+
238
+ * fixed minor conflict caused by Bridge theme
239
+ * fixed links to support page
240
+ * fixed possibility to create an infinite loop by adding an ad (type: group) to a group which it represents
241
+ * fixed issue when rebuilding Ad Blocker file folder and using not direct filesystem method
242
+
243
  = 1.8.23 =
244
 
245
  * moved support page into a tab on the settings page