AdSense Plugin WP QUADS - Version 1.8.14

Version Description

Download this release

Release Info

Developer wpquads
Plugin Icon 128x128 AdSense Plugin WP QUADS
Version 1.8.14
Comparing to
See all releases

Code changes from version 1.8.13 to 1.8.14

Gruntfile.js CHANGED
@@ -62,7 +62,7 @@ module.exports = function (grunt) {
62
  },
63
  options: {
64
  replacements: [{
65
- pattern: /1.8.13/g,
66
  replacement: '<%= pkg.version %>'
67
  }]
68
  }
62
  },
63
  options: {
64
  replacements: [{
65
+ pattern: /1.8.14/g,
66
  replacement: '<%= pkg.version %>'
67
  }]
68
  }
assets/css/quads-admin-all.css CHANGED
@@ -119,3 +119,35 @@
119
  width: 20px;
120
  -webkit-font-smoothing: antialiased;
121
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
119
  width: 20px;
120
  -webkit-font-smoothing: antialiased;
121
  }
122
+ .wpquads_hide{
123
+ display: none;
124
+ }
125
+ #systeminfo{
126
+ display: inline-block;
127
+ width: 100%;
128
+ margin: 20px 0px 10px;
129
+ }
130
+
131
+ .wpquads-query-error {
132
+ color: red;
133
+ font-weight: 700;
134
+ }
135
+ .wpquads-query-success {
136
+ color: green;
137
+ font-weight: 700;
138
+ }
139
+
140
+ #quads_tab_container li.quads-tabs {
141
+ background-color: white;
142
+ }
143
+ .quads_admin .nav-tab{
144
+ color: #555;
145
+ }
146
+ .quads-tabs a {
147
+ color: #000;
148
+ text-transform: capitalize;
149
+ }
150
+ .nav-tab {
151
+ padding: 10px 15px !important;
152
+ }
153
+
assets/css/quads-admin.css CHANGED
@@ -108,7 +108,9 @@ input.medium-text, textarea.medium-text {
108
 
109
  #quads_tab_container ul {
110
  /*height: 200px;*/
 
111
  list-style: none;
 
112
  margin: 0;
113
  padding: 0;
114
  background: #fff;
@@ -144,7 +146,7 @@ input.medium-text, textarea.medium-text {
144
  text-transform: uppercase;
145
  }
146
  .quads-tabs a strong {
147
- font-weight: 700;
148
  }
149
 
150
  li.quads-tabs {
@@ -180,6 +182,7 @@ li.quads-tabs {
180
  text-align:left;
181
  margin-bottom:10px;
182
  max-width: 640px;
 
183
  float: left;
184
  clear:both;
185
  }
@@ -250,10 +253,7 @@ li.quads-tabs {
250
  }
251
 
252
  #quads_tab_container ul li.quads-tabs a {
253
- display: block;
254
- padding:10px 10px 10px 10px;
255
- text-decoration: none;
256
- font-weight: bold;
257
  }
258
  #quads_tab_container ul li.quads-tabs a:hover {
259
  color:#383838;
@@ -488,8 +488,8 @@ li.quads-tabs {
488
  .quads_admin .nav-tab{
489
  border:0px;
490
  text-transform: uppercase;
491
- color: #a1a1a1;
492
  font-weight: 700;
 
493
  }
494
 
495
  .quads-h1 {
108
 
109
  #quads_tab_container ul {
110
  /*height: 200px;*/
111
+ max-width: 680px;
112
  list-style: none;
113
+ width: 681px;
114
  margin: 0;
115
  padding: 0;
116
  background: #fff;
146
  text-transform: uppercase;
147
  }
148
  .quads-tabs a strong {
149
+ font-weight: 600;
150
  }
151
 
152
  li.quads-tabs {
182
  text-align:left;
183
  margin-bottom:10px;
184
  max-width: 640px;
185
+ width: 640px;
186
  float: left;
187
  clear:both;
188
  }
253
  }
254
 
255
  #quads_tab_container ul li.quads-tabs a {
256
+ display: block; padding: 15px 15px 10px 17px; text-decoration: none; font-weight: 600; text-transform: capitalize;
 
 
 
257
  }
258
  #quads_tab_container ul li.quads-tabs a:hover {
259
  color:#383838;
488
  .quads_admin .nav-tab{
489
  border:0px;
490
  text-transform: uppercase;
 
491
  font-weight: 700;
492
+ color: #555;
493
  }
494
 
495
  .quads-h1 {
assets/css/quads-admin.min.css CHANGED
@@ -108,6 +108,7 @@ input.medium-text, textarea.medium-text {
108
 
109
  #quads_tab_container ul {
110
  /*height: 200px;*/
 
111
  list-style: none;
112
  margin: 0;
113
  padding: 0;
@@ -144,7 +145,7 @@ input.medium-text, textarea.medium-text {
144
  text-transform: uppercase;
145
  }
146
  .quads-tabs a strong {
147
- font-weight: 700;
148
  }
149
 
150
  li.quads-tabs {
@@ -179,9 +180,11 @@ li.quads-tabs {
179
  overflow:auto;
180
  text-align:left;
181
  margin-bottom:10px;
182
- max-width: 640px;
 
183
  float: left;
184
  clear:both;
 
185
  }
186
 
187
  .form-table{
@@ -250,10 +253,7 @@ li.quads-tabs {
250
  }
251
 
252
  #quads_tab_container ul li.quads-tabs a {
253
- display: block;
254
- padding:10px 10px 10px 10px;
255
- text-decoration: none;
256
- font-weight: bold;
257
  }
258
  #quads_tab_container ul li.quads-tabs a:hover {
259
  color:#383838;
@@ -488,7 +488,7 @@ li.quads-tabs {
488
  .quads_admin .nav-tab{
489
  border:0px;
490
  text-transform: uppercase;
491
- color: #a1a1a1;
492
  font-weight: 700;
493
  }
494
 
108
 
109
  #quads_tab_container ul {
110
  /*height: 200px;*/
111
+
112
  list-style: none;
113
  margin: 0;
114
  padding: 0;
145
  text-transform: uppercase;
146
  }
147
  .quads-tabs a strong {
148
+ font-weight: 600;
149
  }
150
 
151
  li.quads-tabs {
180
  overflow:auto;
181
  text-align:left;
182
  margin-bottom:10px;
183
+ max-width: 690px;
184
+ width: 690px;
185
  float: left;
186
  clear:both;
187
+
188
  }
189
 
190
  .form-table{
253
  }
254
 
255
  #quads_tab_container ul li.quads-tabs a {
256
+ display: block; padding: 15px 17px 12px 17px; text-decoration: none; font-weight: 600; text-transform: capitalize;
 
 
 
257
  }
258
  #quads_tab_container ul li.quads-tabs a:hover {
259
  color:#383838;
488
  .quads_admin .nav-tab{
489
  border:0px;
490
  text-transform: uppercase;
491
+ color: #555;
492
  font-weight: 700;
493
  }
494
 
assets/js/blocks.js DELETED
@@ -1,21 +0,0 @@
1
- var el = wp.element.createElement,
2
- registerBlockType = wp.blocks.registerBlockType,
3
- blockStyle = { backgroundColor: '#900', color: '#fff', padding: '20px' };
4
-
5
- registerBlockType( 'wpquads/blocks', {
6
- title: 'Hello World (Step 1)',
7
-
8
- icon: 'universal-access-alt',
9
-
10
- category: 'layout',
11
-
12
- edit: function() {
13
- return el( 'p', { style: blockStyle }, 'Hello editor.' );
14
- },
15
-
16
- save: function() {
17
- return el( 'p', { style: blockStyle }, 'Hello saved content.' );
18
- },
19
- } );
20
-
21
-
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
assets/js/quads-admin.js CHANGED
@@ -2,6 +2,55 @@ var strict;
2
 
3
 
4
  jQuery(document).ready(function ($) {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5
  // show / hide helper description
6
  $('.quads-tooltip').click(function (e) {
7
  e.preventDefault();
2
 
3
 
4
  jQuery(document).ready(function ($) {
5
+ $(".wpquads-send-query").on("click", function(e){
6
+ e.preventDefault();
7
+ var message = $("#wpquads_query_message").val();
8
+ var email = $("#wpquads_query_email").val();
9
+ var premium_cus = $("#wpquads_query_premium_cus").val();
10
+ var wpnonce = quads.nonce;
11
+ if($.trim(message) !='' && premium_cus && $.trim(email) !='' && wpquadsIsEmail(email) == true){
12
+ $.ajax({
13
+ type: "POST",
14
+ url:ajaxurl,
15
+ dataType: "json",
16
+ data:{action:"wpquads_send_query_message", premium_cus:premium_cus,message:message,email:email, wpquads_security_nonce:wpnonce},
17
+ success:function(response){
18
+ $(".wpquads_support_div ul").hide();
19
+ if(response['status'] =='t'){
20
+ $(".wpquads-query-success").show();
21
+ $(".wpquads-query-error").hide();
22
+ }else{
23
+ $(".wpquads-query-success").hide();
24
+ $(".wpquads-query-error").show();
25
+ }
26
+ },
27
+ error: function(response){
28
+ console.log(response);
29
+ }
30
+ });
31
+ }else{
32
+ if($.trim(message) =='' && premium_cus =='' && $.trim(email) ==''){
33
+ alert('Please enter the message, email and select customer type');
34
+ }else{
35
+ if(premium_cus ==''){
36
+ alert('Select Customer type');
37
+ }
38
+ if($.trim(message) == ''){
39
+ alert('Please enter the message');
40
+ }
41
+ if($.trim(email) == ''){
42
+ alert('Please enter the email');
43
+ }
44
+ if(wpquadsIsEmail(email) == false){
45
+ alert('Please enter a valid email');
46
+ }
47
+ }
48
+ }
49
+ });
50
+ function wpquadsIsEmail(email) {
51
+ var regex = /^([a-zA-Z0-9_.+-])+\@(([a-zA-Z0-9-])+\.)+([a-zA-Z0-9]{2,4})+$/;
52
+ return regex.test(email);
53
+ }
54
  // show / hide helper description
55
  $('.quads-tooltip').click(function (e) {
56
  e.preventDefault();
assets/js/quads-admin.min.js CHANGED
@@ -3,6 +3,55 @@ var strict;
3
 
4
  jQuery(document).ready(function ($) {
5
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6
  // show / hide helper description
7
  $('.quads-tooltip').click(function (e) {
8
  e.preventDefault();
3
 
4
  jQuery(document).ready(function ($) {
5
 
6
+ $(".wpquads-send-query").on("click", function(e){
7
+ e.preventDefault();
8
+ var message = $("#wpquads_query_message").val();
9
+ var email = $("#wpquads_query_email").val();
10
+ var premium_cus = $("#wpquads_query_premium_cus").val();
11
+ var wpnonce = quads.nonce;
12
+ if($.trim(message) !='' && premium_cus && $.trim(email) !='' && wpquadsIsEmail(email) == true){
13
+ $.ajax({
14
+ type: "POST",
15
+ url:ajaxurl,
16
+ dataType: "json",
17
+ data:{action:"wpquads_send_query_message", premium_cus:premium_cus,message:message,email:email, wpquads_security_nonce:wpnonce},
18
+ success:function(response){
19
+ $(".wpquads_support_div ul").hide();
20
+ if(response['status'] =='t'){
21
+ $(".wpquads-query-success").show();
22
+ $(".wpquads-query-error").hide();
23
+ }else{
24
+ $(".wpquads-query-success").hide();
25
+ $(".wpquads-query-error").show();
26
+ }
27
+ },
28
+ error: function(response){
29
+ console.log(response);
30
+ }
31
+ });
32
+ }else{
33
+ if($.trim(message) =='' && premium_cus =='' && $.trim(email) ==''){
34
+ alert('Please enter the message, email and select customer type');
35
+ }else{
36
+ if(premium_cus ==''){
37
+ alert('Select Customer type');
38
+ }
39
+ if($.trim(message) == ''){
40
+ alert('Please enter the message');
41
+ }
42
+ if($.trim(email) == ''){
43
+ alert('Please enter the email');
44
+ }
45
+ if(wpquadsIsEmail(email) == false){
46
+ alert('Please enter a valid email');
47
+ }
48
+ }
49
+ }
50
+ });
51
+ function wpquadsIsEmail(email) {
52
+ var regex = /^([a-zA-Z0-9_.+-])+\@(([a-zA-Z0-9-])+\.)+([a-zA-Z0-9]{2,4})+$/;
53
+ return regex.test(email);
54
+ }
55
  // show / hide helper description
56
  $('.quads-tooltip').click(function (e) {
57
  e.preventDefault();
assets/js/quads-newsletter.js ADDED
@@ -0,0 +1,73 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+
2
+ jQuery(document).ready(function ($) {
3
+
4
+ if(quadsnewsletter.do_tour){
5
+ var content = '<h3>Thanks for using WP QUADS!</h3>';
6
+ content += '<p>Do you want the latest on <b>WP QUADS update</b> before others and some best resources on monetization in a single email? - Free just for users of WP QUADS!</p>';
7
+ content += '<style type="text/css">';
8
+ content += '.wp-pointer-buttons{ padding:0; overflow: hidden; }';
9
+ content += '.wp-pointer-content .button-secondary{ left: -25px;background: transparent;top: 5px; border: 0;position: relative; padding: 0; box-shadow: none;margin: 0;color: #0085ba;} .wp-pointer-content .button-primary{ display:none} #afw_mc_embed_signup{background:#fff; clear:left; font:14px Helvetica,Arial,sans-serif; }';
10
+ content += '</style>';
11
+ content += '<div id="afw_mc_embed_signup">';
12
+ content += '<form class="ml-block-form" action="//app.mailerlite.com/webforms/submit/k6b7m4" data-id="258182" data-code="k6b7m4" method="POST" target="_blank">';
13
+ content += '<div id="afw_mc_embed_signup_scroll">';
14
+ content += '<div class="afw-mc-field-group" style=" margin-left: 15px; width: 195px; float: left;">';
15
+ content += '<input type="text" name="fields[name]" class="form-control" placeholder="Name" hidden value="'+quadsnewsletter.current_user_name+'" style="display:none">';
16
+ content += '<input type="text" value="'+quadsnewsletter.current_user_email+'" name="fields[email]" class="form-control" placeholder="Email*" style=" width: 180px; padding: 6px 5px;">';
17
+ content += '<input type="text" name="fields[company]" class="form-control" placeholder="Website" hidden style=" display:none; width: 168px; padding: 6px 5px;" value="'+quadsnewsletter.path+'">';
18
+ content += '<input type="hidden" name="ml-submit" value="1" />';
19
+ content += '</div>';
20
+ content += '<div id="mce-responses">';
21
+ content += '<div class="response" id="mce-error-response" style="display:none"></div>';
22
+ content += '<div class="response" id="mce-success-response" style="display:none"></div>';
23
+ content += '</div>';
24
+ content += '<div style="position: absolute; left: -5000px;" aria-hidden="true"><input type="text" name="b_a631df13442f19caede5a5baf_c9a71edce6" tabindex="-1" value=""></div>';
25
+ content += '<input type="submit" value="Subscribe" name="subscribe" id="pointer-close" class="button mc-newsletter-sent" style=" background: #0085ba; border-color: #006799; padding: 0px 16px; text-shadow: 0 -1px 1px #006799,1px 0 1px #006799,0 1px 1px #006799,-1px 0 1px #006799; height: 30px; margin-top: 1px; color: #fff; box-shadow: 0 1px 0 #006799;">';
26
+ content += '</div>';
27
+ content += '</form>';
28
+ content += '</div>';
29
+
30
+ var setup;
31
+ var wp_pointers_tour_opts = {
32
+ content:content,
33
+ position:{
34
+ edge:"top",
35
+ align:"left"
36
+ }
37
+ };
38
+
39
+ wp_pointers_tour_opts = $.extend (wp_pointers_tour_opts, {
40
+ buttons: function (event, t) {
41
+ button= jQuery ('<a id="pointer-close" class="button-secondary">No Thanks</a>');
42
+ button_2= jQuery ('#pointer-close.button');
43
+ button.bind ('click.pointer', function () {
44
+ t.element.pointer ('close');
45
+ });
46
+ button_2.on('click', function() {
47
+ t.element.pointer ('close');
48
+ } );
49
+ return button;
50
+ },
51
+ close: function () {
52
+ $.post (ajaxurl, {
53
+ pointer: 'wpquads_subscribe_pointer',
54
+ action: 'dismiss-wp-pointer'
55
+ });
56
+ },
57
+ show: function(event, t){
58
+ t.pointer.css({'left':'170px', 'top':'160px'});
59
+ }
60
+ });
61
+ setup = function () {
62
+ $("#toplevel_page_quads-settings").pointer(wp_pointers_tour_opts).pointer('open');
63
+ };
64
+ if (wp_pointers_tour_opts.position && wp_pointers_tour_opts.position.defer_loading) {
65
+ $(window).bind('load.wp-pointers', setup);
66
+ }
67
+ else {
68
+ setup ();
69
+ }
70
+ }
71
+ });
72
+
73
+
includes/admin/settings/display-settings.php CHANGED
@@ -121,7 +121,7 @@ function quads_do_settings_fields($page, $section) {
121
  }else if (!empty($field['title']) && !quads_is_excluded_title( $field['args']['id'] ) ){
122
  echo '<tr class="quads-row">';
123
  echo '<td class="quads-row th">';
124
- echo '<div class="col-title">' . $field['title'] . '</div>';
125
  echo '</td></tr>';
126
  }
127
 
121
  }else if (!empty($field['title']) && !quads_is_excluded_title( $field['args']['id'] ) ){
122
  echo '<tr class="quads-row">';
123
  echo '<td class="quads-row th">';
124
+ echo '<div class="col-title" id="'.$field['args']['id'].'">' . $field['title'] . '</div>';
125
  echo '</td></tr>';
126
  }
127
 
includes/admin/settings/register-settings.php CHANGED
@@ -57,6 +57,32 @@ function quads_get_settings() {
57
  return apply_filters( 'quads_get_settings', $settings );
58
  }
59
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
60
  /**
61
  * Add all settings sections and fields
62
  *
@@ -78,22 +104,28 @@ function quads_register_settings() {
78
  foreach ( $settings as $option ) {
79
 
80
  $name = isset( $option['name'] ) ? $option['name'] : '';
 
81
 
82
  add_settings_field(
83
- 'quads_settings[' . $option['id'] . ']', $name, function_exists( 'quads_' . $option['type'] . '_callback' ) ? 'quads_' . $option['type'] . '_callback' : 'quads_missing_callback', 'quads_settings_' . $tab, 'quads_settings_' . $tab, array(
84
- 'id' => isset( $option['id'] ) ? $option['id'] : null,
85
- 'desc' => !empty( $option['desc'] ) ? $option['desc'] : '',
86
- 'desc2' => !empty( $option['desc2'] ) ? $option['desc2'] : '',
87
- 'helper-desc' => !empty( $option['helper-desc'] ) ? $option['helper-desc'] : '',
88
- 'name' => isset( $option['name'] ) ? $option['name'] : null,
89
- 'section' => $tab,
90
- 'size' => isset( $option['size'] ) ? $option['size'] : null,
91
- 'options' => isset( $option['options'] ) ? $option['options'] : '',
92
- 'std' => isset( $option['std'] ) ? $option['std'] : '',
93
- 'placeholder' => isset( $option['placeholder'] ) ? $option['placeholder'] : '',
94
- 'textarea_rows' => isset( $option['textarea_rows'] ) ? $option['textarea_rows'] : ''
95
- )
96
- );
 
 
 
 
 
97
  }
98
  }
99
 
@@ -360,7 +392,7 @@ function quads_get_registered_settings() {
360
  'id' => 'uninstall_on_delete',
361
  'name' => __( 'Delete Data on Uninstall?', 'quick-adsense-reloaded' ),
362
  //'desc' => __( 'Check this box if you would like <strong>Settings->WPQUADS</strong> to completely remove all of its data when the plugin is deleted.', 'quick-adsense-reloaded' ),
363
- 'helper-desc' => __( 'Check this box if you would to completely remove all of its data when the plugin is deleted.', 'quick-adsense-reloaded' ),
364
  'desc' => 'Delete data',
365
  'type' => 'checkbox'
366
  ),
@@ -408,11 +440,12 @@ function quads_get_registered_settings() {
408
  )
409
  ),
410
  'help' => apply_filters( 'quads_settings_help', array(
411
- 'help_header' => array(
412
- 'id' => 'help_header',
413
- 'name' => '<strong>' . __( 'Help', 'quick-adsense-reloaded' ) . '</strong>',
414
- 'desc' => quads_is_extra() ? sprintf( __( 'Something not working as expected? Open a <a href="%1s" target="_blank">support ticket</a>', 'quick-adsense-reloaded' ), 'http://wpquads.com/support/' ) : sprintf( __( 'Something not working as expected? Visit the WP<strong>QUADS</strong> <a href="%1s" target="_blank">Support Forum</a>', 'quick-adsense-reloaded' ), 'https://wordpress.org/support/plugin/quick-adsense-reloaded' ),
415
- 'type' => 'header'
 
416
  ),
417
  'systeminfo' => array(
418
  'id' => 'systeminfo',
@@ -426,6 +459,49 @@ function quads_get_registered_settings() {
426
 
427
  return $quads_settings;
428
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
429
 
430
  /**
431
  * return empty settings
@@ -1911,6 +1987,46 @@ function quads_adsense_code_callback( $args ) {
1911
  $code = isset( $quads_options['ads'][$args['id']]['code'] ) ? $quads_options['ads'][$args['id']]['code'] : '';
1912
 
1913
  $margin = isset( $quads_options['ads'][$args['id']]['margin'] ) ? esc_attr( stripslashes( $quads_options['ads'][$args['id']]['margin'] ) ) : 0;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1914
 
1915
  $g_data_ad_client = isset( $quads_options['ads'][$args['id']]['g_data_ad_client'] ) ? $quads_options['ads'][$args['id']]['g_data_ad_client'] : '';
1916
 
@@ -1991,8 +2107,18 @@ function quads_adsense_code_callback( $args ) {
1991
  if( !quads_is_extra() ) {
1992
  ?>
1993
  <br />
1994
- <label class="quads-label-left" for="quads_settings[ads][<?php echo $id; ?>][margin]"><?php _e( 'Margin', 'quick-adsense-reloaded' ); ?></label>
1995
- <input type="number" step="1" max="" min="" class="small-text" id="quads_settings[ads][<?php echo $id; ?>][margin]" name="quads_settings[ads][<?php echo $id; ?>][margin]" value="<?php echo esc_attr( stripslashes( $margin ) ); ?>"/>px
 
 
 
 
 
 
 
 
 
 
1996
  <?php } echo apply_filters( 'quads_render_margin', '', $id ); ?>
1997
  </div>
1998
  <?php
57
  return apply_filters( 'quads_get_settings', $settings );
58
  }
59
 
60
+ function wpquads_support_page_callback(){
61
+ ?>
62
+ <div class="wpquads_support_div">
63
+ <?php echo esc_html__('If you have any query, please write the query in below box or email us at', 'quick-adsense-reloaded') ?> <a href="mailto:team@wpquads.com">team@wpquads.com</a>. <?php echo esc_html__('We will reply to your email address shortly', 'quick-adsense-reloaded') ?><br><br>
64
+ <span class="wpquads-query-success wpquads_hide"><?php echo esc_html__('Message sent successfully, Please wait we will get back to you shortly', 'quick-adsense-reloaded'); ?></span>
65
+ <span class="wpquads-query-error wpquads_hide"><?php echo esc_html__('Message not sent. please check your network connection', 'quick-adsense-reloaded'); ?></span>
66
+ <ul>
67
+ <li>
68
+ <input type="text" id="wpquads_query_email" name="wpquads_query_email" placeholder="Your Email">
69
+ </li>
70
+ <li>
71
+ <div><textarea rows="5" cols="60" id="wpquads_query_message" name="wpquads_query_message" placeholder="Write your query"></textarea></div>
72
+ </li>
73
+ <li>
74
+ <strong><?php echo esc_html__('Are you a premium customer ?', 'quick-adsense-reloaded'); ?></strong>
75
+ <select id="wpquads_query_premium_cus" name="wpquads_query_premium_cus">
76
+ <option value=""><?php echo esc_html__('Select', 'quick-adsense-reloaded'); ?></option>
77
+ <option value="yes"><?php echo esc_html__('Yes', 'quick-adsense-reloaded'); ?></option>
78
+ <option value="no"><?php echo esc_html__('No', 'quick-adsense-reloaded'); ?></option>
79
+ </select>
80
+ </li>
81
+ <li><button class="button wpquads-send-query"><?php echo esc_html__('Send Message', 'quick-adsense-reloaded'); ?></button></li>
82
+ </ul>
83
+ </div>
84
+ <?php
85
+ }
86
  /**
87
  * Add all settings sections and fields
88
  *
104
  foreach ( $settings as $option ) {
105
 
106
  $name = isset( $option['name'] ) ? $option['name'] : '';
107
+ if($tab=='help' && $option['id'] == 'wpquads_support'){
108
 
109
  add_settings_field(
110
+ 'quads_settings[' . $option['id'] . ']', $name, 'wpquads_support_page_callback', 'quads_settings_' . $tab, 'quads_settings_' . $tab
111
+ );
112
+ }else{
113
+ add_settings_field(
114
+ 'quads_settings[' . $option['id'] . ']', $name, function_exists( 'quads_' . $option['type'] . '_callback' ) ? 'quads_' . $option['type'] . '_callback' : 'quads_missing_callback', 'quads_settings_' . $tab, 'quads_settings_' . $tab, array(
115
+ 'id' => isset( $option['id'] ) ? $option['id'] : null,
116
+ 'desc' => !empty( $option['desc'] ) ? $option['desc'] : '',
117
+ 'desc2' => !empty( $option['desc2'] ) ? $option['desc2'] : '',
118
+ 'helper-desc' => !empty( $option['helper-desc'] ) ? $option['helper-desc'] : '',
119
+ 'name' => isset( $option['name'] ) ? $option['name'] : null,
120
+ 'section' => $tab,
121
+ 'size' => isset( $option['size'] ) ? $option['size'] : null,
122
+ 'options' => isset( $option['options'] ) ? $option['options'] : '',
123
+ 'std' => isset( $option['std'] ) ? $option['std'] : '',
124
+ 'placeholder' => isset( $option['placeholder'] ) ? $option['placeholder'] : '',
125
+ 'textarea_rows' => isset( $option['textarea_rows'] ) ? $option['textarea_rows'] : ''
126
+ )
127
+ );
128
+ }
129
  }
130
  }
131
 
392
  'id' => 'uninstall_on_delete',
393
  'name' => __( 'Delete Data on Uninstall?', 'quick-adsense-reloaded' ),
394
  //'desc' => __( 'Check this box if you would like <strong>Settings->WPQUADS</strong> to completely remove all of its data when the plugin is deleted.', 'quick-adsense-reloaded' ),
395
+ 'helper-desc' => __( 'Check this box if you would like <strong>Settings->WPQUADS</strong> to completely remove all of its data when the plugin is deleted.', 'quick-adsense-reloaded' ),
396
  'desc' => 'Delete data',
397
  'type' => 'checkbox'
398
  ),
440
  )
441
  ),
442
  'help' => apply_filters( 'quads_settings_help', array(
443
+
444
+ 'support' => array(
445
+ 'id' => 'wpquads_support',
446
+ 'name' => __( 'Get help from our development team', 'quick-adsense-reloaded' ),
447
+ 'desc' => __( '', 'quick-adsense-reloaded' ),
448
+ 'type' => 'header'
449
  ),
450
  'systeminfo' => array(
451
  'id' => 'systeminfo',
459
 
460
  return $quads_settings;
461
  }
462
+ add_action('wp_ajax_wpquads_send_query_message', 'wpquads_send_query_message');
463
+ function wpquads_send_query_message(){
464
+
465
+ if ( ! isset( $_POST['wpquads_security_nonce'] ) ){
466
+ return;
467
+ }
468
+ if ( !wp_verify_nonce( $_POST['wpquads_security_nonce'], 'quads_ajax_nonce' ) ){
469
+ return;
470
+ }
471
+ $customer_type = 'Are you a premium customer ? No';
472
+ $message = sanitize_textarea_field($_POST['message']);
473
+ $email = sanitize_textarea_field($_POST['email']);
474
+ $premium_cus = sanitize_textarea_field($_POST['premium_cus']);
475
+ $user = wp_get_current_user();
476
+
477
+ if($premium_cus == 'yes'){
478
+ $customer_type = 'Are you a premium customer ? Yes';
479
+ }
480
+
481
+ $message = '<p>'.$message.'</p><br><br>'. $customer_type. '<br><br> Query from plugin support tab';
482
+
483
+ if($user){
484
+ $user_data = $user->data;
485
+ $user_email = $user_data->user_email;
486
+ if($email){
487
+ $user_email = $email;
488
+ }
489
+ //php mailer variables
490
+ $sendto = 'team@magazine3.com';
491
+ $subject = "WP QUADS";
492
+ $headers[] = 'Content-Type: text/html; charset=UTF-8';
493
+ $headers[] = 'From: '. esc_attr($user_email);
494
+ $headers[] = 'Reply-To: ' . esc_attr($user_email);
495
+ // Load WP components, no themes.
496
+ $sent = wp_mail($sendto, $subject, $message, $headers);
497
+ if($sent){
498
+ echo json_encode(array('status'=>'t'));
499
+ }else{
500
+ echo json_encode(array('status'=>'f'));
501
+ }
502
+ }
503
+ wp_die();
504
+ }
505
 
506
  /**
507
  * return empty settings
1987
  $code = isset( $quads_options['ads'][$args['id']]['code'] ) ? $quads_options['ads'][$args['id']]['code'] : '';
1988
 
1989
  $margin = isset( $quads_options['ads'][$args['id']]['margin'] ) ? esc_attr( stripslashes( $quads_options['ads'][$args['id']]['margin'] ) ) : 0;
1990
+ $margintop = 0;
1991
+ $marginright = 0;
1992
+ $marginbottom = 0;
1993
+ $marginleft = 0;
1994
+ if(isset( $quads_options['ads'][$args['id']]['margin'] )){
1995
+ $margintop = esc_attr( stripslashes($quads_options['ads'][$args['id']]['margin']));
1996
+ $marginright = esc_attr( stripslashes($quads_options['ads'][$args['id']]['margin']));
1997
+ $marginbottom = esc_attr( stripslashes($quads_options['ads'][$args['id']]['margin']));
1998
+ $marginleft = esc_attr( stripslashes($quads_options['ads'][$args['id']]['margin']));
1999
+ }
2000
+ if(isset( $quads_options['ads'][$args['id']]['margintop'] )){
2001
+ $margintop = esc_attr( stripslashes($quads_options['ads'][$args['id']]['margintop']));
2002
+ }
2003
+ if(isset( $quads_options['ads'][$args['id']]['marginright'] )){
2004
+ $marginright = esc_attr( stripslashes($quads_options['ads'][$args['id']]['marginright']));
2005
+ }
2006
+ if(isset( $quads_options['ads'][$args['id']]['marginbottom'] )){
2007
+ $marginbottom = esc_attr( stripslashes($quads_options['ads'][$args['id']]['marginbottom']));
2008
+ }
2009
+ if(isset( $quads_options['ads'][$args['id']]['marginleft'] )){
2010
+ $marginleft = esc_attr( stripslashes($quads_options['ads'][$args['id']]['marginleft']));
2011
+ }
2012
+ // padding
2013
+ $paddingtop = 0;
2014
+ $paddingright = 0;
2015
+ $paddingbottom = 0;
2016
+ $paddingleft = 0;
2017
+
2018
+ if(isset( $quads_options['ads'][$args['id']]['paddingtop'] )){
2019
+ $paddingtop = esc_attr( stripslashes($quads_options['ads'][$args['id']]['paddingtop']));
2020
+ }
2021
+ if(isset( $quads_options['ads'][$args['id']]['paddingright'] )){
2022
+ $paddingright = esc_attr( stripslashes($quads_options['ads'][$args['id']]['paddingright']));
2023
+ }
2024
+ if(isset( $quads_options['ads'][$args['id']]['paddingbottom'] )){
2025
+ $paddingbottom = esc_attr( stripslashes($quads_options['ads'][$args['id']]['paddingbottom']));
2026
+ }
2027
+ if(isset( $quads_options['ads'][$args['id']]['paddingleft'] )){
2028
+ $paddingleft = esc_attr( stripslashes($quads_options['ads'][$args['id']]['paddingleft']));
2029
+ }
2030
 
2031
  $g_data_ad_client = isset( $quads_options['ads'][$args['id']]['g_data_ad_client'] ) ? $quads_options['ads'][$args['id']]['g_data_ad_client'] : '';
2032
 
2107
  if( !quads_is_extra() ) {
2108
  ?>
2109
  <br />
2110
+ <label class="quads-label-left" ><?php _e( 'Margin', 'quick-adsense-reloaded' ); ?></label>
2111
+ <input type="number" step="1" max="" min="" class="small-text" id="quads_settings[ads][<?php echo $id; ?>][margintop]" name="quads_settings[ads][<?php echo $id; ?>][margintop]" value="<?php echo esc_attr( stripslashes( $margintop ) ); ?>"/>
2112
+ <input type="number" step="1" max="" min="" class="small-text" id="quads_settings[ads][<?php echo $id; ?>][marginright]" name="quads_settings[ads][<?php echo $id; ?>][marginright]" value="<?php echo esc_attr( stripslashes( $marginright ) ); ?>"/>
2113
+ <input type="number" step="1" max="" min="" class="small-text" id="quads_settings[ads][<?php echo $id; ?>][marginbottom]" name="quads_settings[ads][<?php echo $id; ?>][marginbottom]" value="<?php echo esc_attr( stripslashes( $marginbottom ) ); ?>"/>
2114
+ <input type="number" step="1" max="" min="" class="small-text" id="quads_settings[ads][<?php echo $id; ?>][marginleft]" name="quads_settings[ads][<?php echo $id; ?>][marginleft]" value="<?php echo esc_attr( stripslashes( $marginleft ) ); ?>"/>px
2115
+ <br />
2116
+ <label class="quads-label-left" ><?php _e( 'Padding', 'quick-adsense-reloaded' ); ?></label>
2117
+ <input type="number" step="1" max="" min="" class="small-text" id="quads_settings[ads][<?php echo $id; ?>][paddingtop]" name="quads_settings[ads][<?php echo $id; ?>][paddingtop]" value="<?php echo esc_attr( stripslashes( $paddingtop ) ); ?>"/>
2118
+ <input type="number" step="1" max="" min="" class="small-text" id="quads_settings[ads][<?php echo $id; ?>][paddingright]" name="quads_settings[ads][<?php echo $id; ?>][paddingright]" value="<?php echo esc_attr( stripslashes( $paddingright ) ); ?>"/>
2119
+ <input type="number" step="1" max="" min="" class="small-text" id="quads_settings[ads][<?php echo $id; ?>][paddingbottom]" name="quads_settings[ads][<?php echo $id; ?>][paddingbottom]" value="<?php echo esc_attr( stripslashes( $paddingbottom ) ); ?>"/>
2120
+ <input type="number" step="1" max="" min="" class="small-text" id="quads_settings[ads][<?php echo $id; ?>][paddingleft]" name="quads_settings[ads][<?php echo $id; ?>][paddingleft]" value="<?php echo esc_attr( stripslashes( $paddingleft ) ); ?>"/>px
2121
+
2122
  <?php } echo apply_filters( 'quads_render_margin', '', $id ); ?>
2123
  </div>
2124
  <?php
includes/scripts.php CHANGED
@@ -54,6 +54,23 @@ function quads_check_ad_blocker() {
54
  * @return void
55
  */
56
  function quads_load_admin_scripts( $hook ) {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
57
  if( !apply_filters( 'quads_load_admin_scripts', quads_is_admin_page(), $hook ) ) {
58
  return;
59
  }
@@ -138,21 +155,6 @@ function quads_load_all_admin_scripts( $hook ) {
138
  wp_enqueue_style( 'quads-admin-all', $css_dir . 'quads-admin-all.css', QUADS_VERSION );
139
  }
140
 
141
- /**
142
- * Create Gutenberg block
143
- */
144
- //function quads_load_blocks() {
145
- // $js_dir = QUADS_PLUGIN_URL . 'assets/js/';
146
- //
147
- // wp_register_script( 'wpquads', $js_dir . 'blocks.js', array('wp-blocks', 'wp-element', 'wp-editor') );
148
- //
149
- // register_block_type( 'wpquads/blocks', array(
150
- // 'editor_script' => 'wpquads',
151
- // ) );
152
- //}
153
- //
154
- //add_action( 'init', 'quads_load_blocks' );
155
-
156
 
157
  /**
158
  * Register CSS Styles
54
  * @return void
55
  */
56
  function quads_load_admin_scripts( $hook ) {
57
+ global $current_user;
58
+ $dismissed = explode (',', get_user_meta (wp_get_current_user ()->ID, 'dismissed_wp_pointers', true));
59
+ $do_tour = !in_array ('wpquads_subscribe_pointer', $dismissed);
60
+
61
+ if ($do_tour) {
62
+ wp_enqueue_style ('wp-pointer');
63
+ wp_enqueue_script ('wp-pointer');
64
+ $js_dir = QUADS_PLUGIN_URL . 'assets/js/';
65
+ wp_register_script( 'quads-newsletter', $js_dir . 'quads-newsletter.js', array('jquery'), QUADS_VERSION, false );
66
+ wp_localize_script( 'quads-newsletter', 'quadsnewsletter', array(
67
+ 'current_user_email' => $current_user->user_email,
68
+ 'current_user_name' => $current_user->display_name,
69
+ 'do_tour' => $do_tour
70
+ ) );
71
+ wp_enqueue_script('quads-newsletter');
72
+ }
73
+
74
  if( !apply_filters( 'quads_load_admin_scripts', quads_is_admin_page(), $hook ) ) {
75
  return;
76
  }
155
  wp_enqueue_style( 'quads-admin-all', $css_dir . 'quads-admin-all.css', QUADS_VERSION );
156
  }
157
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
158
 
159
  /**
160
  * Register CSS Styles
includes/widgets.php CHANGED
@@ -26,13 +26,60 @@ function quads_get_inline_widget_ad_style( $id ) {
26
 
27
  // Alignment
28
  $adsalign = ( int )$quads_options['ads']['ad' . $id . '_widget']['align'];
29
-
30
  // Margin
31
- $adsmargin = isset( $quads_options['ads']['ad' . $id . '_widget']['margin'] ) ? $quads_options['ads']['ad' . $id . '_widget']['margin'] : '0';
32
- $margin = sprintf( $styleArray[$adsalign], $adsmargin );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
33
 
34
  // Do not create any inline style on AMP site
35
- $style = !quads_is_amp_endpoint() ? apply_filters( 'quads_filter_widget_margins', $margin, 'ad' . $id . '_widget') : '';
36
 
37
  return $style;
38
  }
26
 
27
  // Alignment
28
  $adsalign = ( int )$quads_options['ads']['ad' . $id . '_widget']['align'];
 
29
  // Margin
30
+ $adsmargin = '0';
31
+ $padding = 'padding:';
32
+ if(isset( $quads_options['ads']['ad' . $id . '_widget']['margin'] )){
33
+ $adsmargin = $quads_options['ads']['ad' . $id . '_widget']['margin'] ;
34
+ $margin = sprintf( $styleArray[$adsalign], $adsmargin );
35
+ }else{
36
+ $margin = 'margin:';
37
+ if(isset( $quads_options['ads']['ad' . $id . '_widget']['margintop'] )){
38
+ $margin .=$quads_options['ads']['ad' . $id . '_widget']['margintop'] ."px " ;
39
+ }else{
40
+ $margin .= "0px ";
41
+ }
42
+ if(isset( $quads_options['ads']['ad' . $id . '_widget']['marginright'] )){
43
+ $margin .=$quads_options['ads']['ad' . $id . '_widget']['marginright'] ."px " ;
44
+ }else{
45
+ $margin .= "0px ";
46
+ }
47
+ if(isset( $quads_options['ads']['ad' . $id . '_widget']['marginbottom'] )){
48
+ $margin .=$quads_options['ads']['ad' . $id . '_widget']['marginbottom'] ."px " ;
49
+ }else{
50
+ $margin .= "0px ";
51
+ }
52
+ if(isset( $quads_options['ads']['ad' . $id . '_widget']['marginleft'] )){
53
+ $margin .=$quads_options['ads']['ad' . $id . '_widget']['marginleft'] ."px" ;
54
+ }else{
55
+ $margin .= "0px ";
56
+ }
57
+ }
58
+ if(isset( $quads_options['ads']['ad' . $id . '_widget']['paddingtop'] )){
59
+ $padding .=$quads_options['ads']['ad' . $id . '_widget']['paddingtop'] ."px " ;
60
+ }else{
61
+ $padding .= "0px ";
62
+ }
63
+ if(isset( $quads_options['ads']['ad' . $id . '_widget']['paddingright'] )){
64
+ $padding .=$quads_options['ads']['ad' . $id . '_widget']['paddingright'] ."px " ;
65
+ }else{
66
+ $padding .= "0px ";
67
+ }
68
+ if(isset( $quads_options['ads']['ad' . $id . '_widget']['paddingbottom'] )){
69
+ $padding .=$quads_options['ads']['ad' . $id . '_widget']['paddingbottom'] ."px " ;
70
+ }else{
71
+ $padding .= "0px ";
72
+ }
73
+ if(isset( $quads_options['ads']['ad' . $id . '_widget']['paddingleft'] )){
74
+ $padding .=$quads_options['ads']['ad' . $id . '_widget']['paddingleft'] ."px" ;
75
+ }else{
76
+ $padding .= "0px ";
77
+ }
78
+
79
+ $css =$margin.'; '.$padding .'; ';
80
 
81
  // Do not create any inline style on AMP site
82
+ $style = !quads_is_amp_endpoint() ? apply_filters( 'quads_filter_widget_margins', $css, 'ad' . $id . '_widget') : '';
83
 
84
  return $style;
85
  }
quick-adsense-reloaded.php CHANGED
@@ -6,7 +6,7 @@
6
  * Description: Insert Google AdSense and other ad formats fully automatic into your website
7
  * Author: WP Quads
8
  * Author URI: https://wordpress.org/plugins/quick-adsense-reloaded/
9
- * Version: 1.8.13
10
  * Text Domain: quick-adsense-reloaded
11
  * Domain Path: languages
12
  * Credits: WP QUADS - Quick AdSense Reloaded is a fork of Quick AdSense
@@ -36,7 +36,7 @@ if( !defined( 'ABSPATH' ) )
36
 
37
  // Plugin version
38
  if( !defined( 'QUADS_VERSION' ) ) {
39
- define( 'QUADS_VERSION', '1.8.13' );
40
  }
41
 
42
  // Plugin name
6
  * Description: Insert Google AdSense and other ad formats fully automatic into your website
7
  * Author: WP Quads
8
  * Author URI: https://wordpress.org/plugins/quick-adsense-reloaded/
9
+ * Version: 1.8.14
10
  * Text Domain: quick-adsense-reloaded
11
  * Domain Path: languages
12
  * Credits: WP QUADS - Quick AdSense Reloaded is a fork of Quick AdSense
36
 
37
  // Plugin version
38
  if( !defined( 'QUADS_VERSION' ) ) {
39
+ define( 'QUADS_VERSION', '1.8.14' );
40
  }
41
 
42
  // Plugin name
readme.txt CHANGED
@@ -10,7 +10,7 @@ Tags: adsense, ads, ad, google adsense, advertising, amp, ad injection, ad inser
10
  Requires at least: 3.6+
11
  Tested up to: 5.3.2
12
  Requires PHP: 5.3
13
- Stable tag: 1.8.13
14
 
15
  Ads & AdSense Plugin is the quickest way to insert Google AdSense & other ads into your website. Google AdSense integration with Google AMP support.
16
 
@@ -129,6 +129,14 @@ Alternative Installation:
129
 
130
 
131
  == Changelog ==
 
 
 
 
 
 
 
 
132
  = 1.8.13 =
133
  * Feature: Created new mu-plugin for removing the WP QUADS shortcode when the plugin deactive/uninstall.
134
  * Fix: Assigned version number of Gutenberg module js and css files.
10
  Requires at least: 3.6+
11
  Tested up to: 5.3.2
12
  Requires PHP: 5.3
13
+ Stable tag: 1.8.14
14
 
15
  Ads & AdSense Plugin is the quickest way to insert Google AdSense & other ads into your website. Google AdSense integration with Google AMP support.
16
 
129
 
130
 
131
  == Changelog ==
132
+ = 1.8.4 =
133
+ * New: Added support form in help area.
134
+ * New: Added Email optin box with auto message
135
+ * New: Added Margin & Padding options for AD Widget
136
+ * New: Improve tab UX
137
+ * Fix: updated the dependency in package-lock.json
138
+ * Fix: Removed hello world block gutenberg module.
139
+
140
  = 1.8.13 =
141
  * Feature: Created new mu-plugin for removing the WP QUADS shortcode when the plugin deactive/uninstall.
142
  * Fix: Assigned version number of Gutenberg module js and css files.