PluginProbe ʕ •ᴥ•ʔ
Advanced Ads – Ad Manager & AdSense / 1.2.7
Advanced Ads – Ad Manager & AdSense v1.2.7
2.0.25 2.0.24 2.0.23 2.0.22 2.0.21 1.38.0 1.39.0 1.39.1 1.39.2 1.39.3 1.39.4 1.4.0 1.4.1 1.4.2 1.4.3 1.4.4 1.4.5 1.4.6 1.4.7 1.4.8 1.4.9 1.40.0 1.40.1 1.40.2 1.41.0 1.42.0 1.42.1 1.42.2 1.43.0 1.44.0 1.44.1 1.45.0 1.45.1 1.46.0 1.47.0 1.47.1 1.47.2 1.47.3 1.47.4 1.47.5 1.48.0 1.48.1 1.49.0 1.5.0 1.5.0.1 1.5.1 1.5.2 1.5.2.1 1.5.4 1.5.4.1 1.5.5 1.50.0 1.51.0 1.51.1 1.51.2 1.51.3 1.52.0 1.52.1 1.52.2 1.52.3 1.52.4 1.53.0 1.53.1 1.53.2 1.54.0 1.54.1 1.55.0 1.56.0 1.56.1 1.56.2 1.56.3 1.56.4 1.6 1.6.1 1.6.10 1.6.10.1 1.6.10.2 1.6.11 1.6.11.1 1.6.12 1.6.13 1.6.14 1.6.15 1.6.16 1.6.17 1.6.17.1 1.6.17.2 1.6.2 1.6.2.1 1.6.3 1.6.4 1.6.4.1 1.6.5 1.6.6 1.6.6.1 1.6.7 1.6.7.1 1.6.8 1.6.8.1 1.6.8.2 1.6.8.3 1.6.9 1.6.9.1 1.6.9.2 1.6.9.3 1.6.9.4 1.7 1.7.0.1 1.7.0.2 1.7.0.3 1.7.1 1.7.1.1 1.7.1.2 1.7.1.3 1.7.1.4 1.7.1.5 1.7.10 trunk 1.7.11 1.0.1 1.7.12 1.0.2 1.7.13 1.0.3 1.7.14 1.1.0 1.7.15 1.1.1 1.7.16 1.1.2 1.7.17 1.1.3 1.7.18 1.10 1.7.19 1.10.1 1.7.2 1.10.10 1.7.2.1 1.10.11 1.7.20 1.10.12 1.7.21 1.10.2 1.7.22 1.10.3 1.7.23 1.10.4 1.7.24 1.10.5 1.7.25 1.10.6 1.7.3 1.10.7 1.7.4 1.10.8 1.7.4.1 1.10.9 1.7.4.2 1.11 1.7.4.3 1.11.1 1.7.4.4 1.11.2 1.7.4.5 1.12 1.7.5 1.13 1.7.5.1 1.13.1 1.7.6 1.13.2 1.7.7 1.13.3 1.7.8 1.13.4 1.7.9 1.13.5 1.7.9.1 1.13.6 1.7.9.2 1.13.7 1.7.9.3 1.13.8 1.8 1.14 1.8.1 1.14.1 1.8.10 1.14.10 1.8.11 1.14.11 1.8.12 1.14.2 1.8.13 1.14.3 1.8.14 1.14.4 1.8.15 1.14.5 1.8.16 1.14.6 1.8.17 1.14.7 1.8.18 1.14.8 1.8.19 1.14.9 1.8.2 1.15 1.8.20 1.16 1.8.21 1.16.1 1.8.22 1.17 1.8.23 1.17.1 1.8.24 1.17.10 1.8.25 1.17.10-rc.1 1.8.26 1.17.11 1.8.27 1.17.12 1.8.28 1.17.12-rc.1 1.8.29 1.17.2 1.8.3 1.17.3 1.8.30 1.17.4 1.8.4 1.17.5 1.8.5 1.17.6 1.8.6 1.17.7 1.8.7 1.17.8 1.8.8 1.17.9 1.8.9 1.17.9-beta.1 1.9 1.18.0 2.0.0 1.19.0 2.0.1 1.19.1 2.0.10 1.2 2.0.11 1.2.1 2.0.12 1.2.2 2.0.13 1.2.3 2.0.14 1.2.4 2.0.15 1.2.5 2.0.16 1.2.6 2.0.17 1.2.7 2.0.18 1.20.0 2.0.19 1.20.0-rc.1 2.0.2 1.20.0-rc.2 2.0.20 1.20.1 2.0.3 1.20.2 2.0.4 1.20.3 2.0.5 1.21.0 2.0.6 1.21.1 2.0.7 1.22.0 2.0.8 1.22.1 2.0.9 1.22.2 1.23.0 1.23.1 1.23.2 1.24.0 1.24.1 1.24.2 1.25.0 1.25.1 1.26.0 1.27.0 1.28.0 1.29.0 1.29.1 1.3 1.3.1 1.3.10 1.3.11 1.3.12 1.3.13 1.3.14 1.3.15 1.3.16 1.3.17 1.3.18 1.3.2 1.3.3 1.3.4 1.3.5 1.3.6 1.3.7 1.3.8 1.3.9 1.30.0 1.30.1 1.30.2 1.30.2-rc.1 1.30.3 1.30.4 1.30.4-rc.1 1.30.5 1.31.0 1.31.1 1.32.0 1.32.0-rc.1 1.33.0 1.33.1 1.33.2 1.34.0 1.35.0 1.35.1 1.36.0 1.36.1 1.36.2 1.36.3 1.37.0 1.37.1 1.37.2
advanced-ads / admin / assets / js / admin.js
advanced-ads / admin / assets / js Last commit date
admin.js 11 years ago index.php 12 years ago inline-edit-group-ads.js 12 years ago
admin.js
215 lines
1 jQuery(document).ready(function ($) {
2 "use strict";
3
4 function advads_load_ad_type_parameter_metabox(ad_type) {
5 $('#advanced-ads-ad-parameters').html('<span class="spinner advads-ad-parameters-spinner"></span>');
6 $.ajax({
7 type: 'POST',
8 url: ajaxurl,
9 data: {
10 'action': 'load_ad_parameters_metabox',
11 'ad_type': ad_type,
12 'ad_id': $('#post_ID').val()
13 },
14 success: function (data, textStatus, XMLHttpRequest) {
15 // toggle main content field
16 if (data) {
17 $('#advanced-ads-ad-parameters').html(data);
18 }
19 },
20 error: function (MLHttpRequest, textStatus, errorThrown) {
21 $('#advanced-ads-ad-parameters').html(errorThrown);
22 }
23 });
24 }
25 ;
26
27 $(document).on('change', '#advanced-ad-type input', function () {
28 var ad_type = $(this).val()
29 advads_load_ad_type_parameter_metabox(ad_type);
30 });
31
32 // empty / clear input condition fields in the same row as the clear button
33 $('#advanced-ad-conditions .clear-radio').click(function () {
34 $(this).closest('tr').find('input[type="radio"]').prop('checked', false);
35 $(this).closest('tr').find('input[type="text"]').val('');
36 });
37
38 // toggle display conditions
39 $('#advanced-ad-conditions-enable input').click(function () {
40 advads_toggle_display_conditions(this.value);
41 });
42 // display on load
43 advads_toggle_display_conditions($('#advanced-ad-conditions-enable input:checked').val());
44
45 // display / hide options if all-option is checked for display condition
46 $('.advanced-ad-display-condition .advads-conditions-all input').click(function () {
47 advads_toggle_single_display_conditions(this);
48 });
49 // display / hide options if all-option is checked for display condition – on load
50 $('.advanced-ad-display-condition .advads-conditions-all input').each(function () {
51 advads_toggle_single_display_conditions(this);
52 });
53
54 // toggle single display condition checkboxes that have a counterpart
55 $('.advads-conditions-single input[type="checkbox"]').click(function () {
56 advads_toggle_single_display_condition_checkbox(this);
57 });
58 // toggle single display condition checkboxes that have a counterpart on load
59 $('.advads-conditions-single input[type="checkbox"]').each(function () {
60 advads_toggle_single_display_condition_checkbox(this);
61 });
62 // display input field to search for post, page, etc.
63 $('.advads-conditions-postids-list .show-search a').click(function (e) {
64 e.preventDefault();
65 // display input field
66 $('#advads-display-conditions-individual-post').show();
67 $(this).hide();
68 });
69 // register autocomplete to display condition posts
70 var response = [];
71 $("#advads-display-conditions-individual-post").autocomplete({
72 source: function(request, callback){
73 var searchParam = request.term;
74 advads_post_search(searchParam, callback);
75 },
76 minLength: 2,
77 select: function( event, ui ) {
78 // append new line with input fields
79 var newline = $('<li></li>');
80 $('<a class="remove" href="#">remove</a>').appendTo(newline);
81 $('<span>' + ui.item.label + '</span><input type="hidden" name="advanced_ad[conditions][postids][ids][]" value="'+ ui.item.value +'">').appendTo(newline);
82 newline.insertBefore('.advads-conditions-postids-list .show-search');
83
84 // show / hide other elements
85 $('#advads-display-conditions-individual-post').hide();
86 $('.advads-conditions-postids-list .show-search a').show();
87 },
88 close: function( event, ui ) {
89 $('#advads-display-conditions-individual-post').val('');
90 }
91 });
92
93 // remove individual posts from the display conditions post list
94 $(document).on('click', '.advads-conditions-postids-list .remove', function(e){
95 e.preventDefault();
96 $(this).parent('li').remove();
97 });
98
99 });
100
101 /**
102 * callback for post search autocomplete
103 *
104 * @param {type} query
105 * @param {type} callback
106 * @returns {obj} json object with labels and values
107 */
108 function advads_post_search(query, callback) {
109
110 // return ['post', 'poster'];
111 var query = {
112 action: 'wp-link-ajax',
113 _ajax_linking_nonce: jQuery('#_ajax_linking_nonce').val()
114 };
115
116 query.search = jQuery('#advads-display-conditions-individual-post').val();
117
118 var querying = true;
119
120 var results = {};
121 jQuery.post(ajaxurl, query, function (r) {
122 querying = false;
123 var results = [];
124 if(r){
125 r.map(function(element, index){
126 results[index] = {
127 label: element.title,
128 value: element.ID
129 };
130 });
131 }
132 callback(results);
133 }, 'json');
134
135 // results = [{huch:'post', hach:'poster', hoch:'position'}];
136 //return results;
137
138 }
139
140 /**
141 * toggle content elements (hide/show)
142 *
143 * @param selector jquery selector
144 */
145 function advads_toggle(selector) {
146 jQuery(selector).slideToggle();
147 }
148
149 /**
150 * toggle content elements with a checkbox (hide/show)
151 *
152 * @param selector jquery selector
153 */
154 function advads_toggle_box(e, selector) {
155 if (jQuery(e).is(':checked')) {
156 jQuery(selector).slideDown();
157 } else {
158 jQuery(selector).slideUp();
159 }
160 }
161
162 /**
163 * disable content of one box when selecting another
164 * only grey/disable it, don’t hide it
165 *
166 * @param selector jquery selector
167 */
168 function advads_toggle_box_enable(e, selector) {
169 if (jQuery(e).is(':checked')) {
170 jQuery(selector).find('input').removeAttr('disabled', '');
171 } else {
172 jQuery(selector).find('input').attr('disabled', 'disabled');
173 }
174 }
175
176 /**
177 * toggle display conditions
178 * @param {bool} value
179 */
180 function advads_toggle_display_conditions(value) {
181 if (value == 1) {
182 jQuery('#advanced-ad-conditions').fadeIn();
183 } else {
184 jQuery('#advanced-ad-conditions').fadeOut();
185 }
186 }
187
188 /**
189 * disable new display conditions
190 * @param {string} checkbox element
191 */
192 function advads_toggle_single_display_conditions(checkbox) {
193 // console.log(jQuery(checkbox).parent('div').find('label:not(.advads-conditions-all) input').css('border', 'solid'));
194 if (jQuery(checkbox).is(':checked')) {
195 jQuery(checkbox).parents('.advanced-ad-display-condition').find('.advads-conditions-single').addClass('disabled').find('input').attr('disabled', 'disabled');
196 } else {
197 jQuery(checkbox).parents('.advanced-ad-display-condition').find('.advads-conditions-single').removeClass('disabled').find('input').removeAttr('disabled');
198 }
199 }
200
201 /**
202 * toggle display condition checkboxes
203 * @param {string} checkbox element
204 */
205 function advads_toggle_single_display_condition_checkbox(checkbox) {
206 // get the counterpart (same value, but not current element)
207 var counterpart = jQuery(checkbox).parents('.advads-conditions-single').find('input[type="checkbox"][value="' + checkbox.value + '"]').not(checkbox);
208 // toggle counterpart
209 if (jQuery(checkbox).is(':checked')) {
210 counterpart.attr('checked', false);
211 counterpart.attr('disabled', 'disabled');
212 } else {
213 counterpart.removeAttr('disabled');
214 }
215 }