PluginProbe ʕ •ᴥ•ʔ
Contact Form 7 / 1.10
Contact Form 7 v1.10
6.1.6 5.0.2 5.0.3 5.0.4 5.0.5 5.1 5.1.1 5.1.2 5.1.3 5.1.4 5.1.5 5.1.6 5.1.7 5.1.8 5.1.9 5.2 5.2.1 5.2.2 5.3 5.3.1 5.3.2 5.4 5.4.1 5.4.2 5.5 5.5.1 5.5.2 5.5.3 5.5.4 5.5.5 5.5.6 5.5.6.1 5.6 5.6.1 5.6.2 5.6.3 5.6.4 5.7 5.7.1 5.7.2 5.7.3 5.7.4 5.7.5 5.7.5.1 5.7.6 5.7.7 5.8 5.8.1 5.8.2 5.8.3 5.8.4 5.8.5 5.8.6 5.8.7 5.9 5.9.2 5.9.3 5.9.4 5.9.5 5.9.6 5.9.7 5.9.8 6.0 6.0.1 6.0.2 6.0.3 6.0.4 6.0.5 6.0.6 6.1 6.1.1 6.1.2 6.1.3 6.1.4 6.1.5 trunk 1.1 1.10 1.10.0.1 1.10.1 1.2 1.3 1.3.1 1.3.2 1.4 1.4.1 1.4.2 1.4.3 1.4.4 1.5 1.6 1.6.1 1.7 1.7.1 1.7.2 1.7.4 1.7.5 1.7.6 1.7.6.1 1.7.7 1.7.7.1 1.7.8 1.8 1.8.0.1 1.8.0.2 1.8.0.3 1.8.0.4 1.8.1 1.8.1.1 1.9 1.9.1 1.9.2 1.9.2.1 1.9.2.2 1.9.3 1.9.4 1.9.5 1.9.5.1 2.0 2.0-beta 2.0.1 2.0.2 2.0.3 2.0.4 2.0.5 2.0.6 2.0.7 2.1 2.1.1 2.1.2 2.2 2.2.1 2.3 2.3.1 2.4 2.4.1 2.4.2 2.4.3 2.4.4 2.4.5 2.4.6 3.0 3.0-beta 3.0.1 3.0.2 3.0.2.1 3.1 3.1.1 3.1.2 3.2 3.2.1 3.3 3.3.1 3.3.2 3.3.3 3.4 3.4.1 3.4.2 3.5 3.5.1 3.5.2 3.5.3 3.5.4 3.6 3.7 3.7.1 3.7.2 3.8 3.8.1 3.9 3.9-beta 3.9.1 3.9.2 3.9.3 4.0 4.0.1 4.0.2 4.0.3 4.1 4.1-beta 4.1.1 4.1.2 4.2 4.2-beta 4.2.1 4.2.2 4.3 4.3.1 4.4 4.4.1 4.4.2 4.5 4.5.1 4.6 4.6.1 4.7 4.8 4.8.1 4.9 4.9.1 4.9.2 5.0 5.0.1
contact-form-7 / admin / wpcf7-admin.js
contact-form-7 / admin Last commit date
admin-panel.php 17 years ago admin-stylesheet-rtl.css 17 years ago admin-stylesheet.css 17 years ago admin.php 17 years ago wpcf7-admin.js 17 years ago
wpcf7-admin.js
807 lines
1 jQuery(document).ready(function() {
2 try {
3 jQuery('#tag-generator-div').append(tagGenerator());
4
5 jQuery('input#wpcf7-title:enabled').css({
6 cursor: 'pointer'
7 });
8
9 jQuery('input#wpcf7-title').mouseover(function() {
10 jQuery(this).not('.focus').css({
11 'background-color': '#ffffdd'
12 });
13 });
14
15 jQuery('input#wpcf7-title').mouseout(function() {
16 jQuery(this).css({
17 'background-color': '#fff'
18 });
19 });
20
21 jQuery('input#wpcf7-title').focus(function() {
22 jQuery(this).addClass('focus');
23 jQuery(this).css({
24 cursor: 'text',
25 color: '#333',
26 border: '1px solid #777',
27 font: 'normal 13px Verdana, Arial, Helvetica, sans-serif',
28 'background-color': '#fff'
29 });
30 });
31
32 jQuery('input#wpcf7-title').blur(function() {
33 jQuery(this).removeClass('focus');
34 jQuery(this).css({
35 cursor: 'pointer',
36 color: '#555',
37 border: 'none',
38 font: 'bold 20px serif',
39 'background-color': '#fff'
40 });
41 });
42
43 jQuery('input#wpcf7-title').change(function() {
44 updateTag();
45 });
46
47 updateTag();
48
49 if (! jQuery('#wpcf7-mail-2-active').is(':checked'))
50 jQuery('#mail-2-fields').hide();
51
52 jQuery('#wpcf7-mail-2-active').click(function() {
53 if (jQuery('#wpcf7-mail-2-active').is(':checked')) {
54 if (jQuery('#mail-2-fields').is(':hidden'))
55 jQuery('#mail-2-fields').slideDown('fast');
56 } else {
57 if (jQuery('#mail-2-fields').is(':visible'))
58 jQuery('#mail-2-fields').hide('fast');
59 }
60 });
61
62 jQuery('#message-fields-toggle-switch').text(_wpcf7L10n.show);
63 jQuery('#message-fields').hide();
64
65 jQuery('#message-fields-toggle-switch').click(function() {
66 if (jQuery('#message-fields').is(':hidden')) {
67 jQuery('#message-fields').slideDown('fast');
68 jQuery('#message-fields-toggle-switch').text(_wpcf7L10n.hide);
69 } else {
70 jQuery('#message-fields').hide('fast');
71 jQuery('#message-fields-toggle-switch').text(_wpcf7L10n.show);
72 }
73 });
74
75 if ('' == jQuery.trim(jQuery('#wpcf7-additional-settings').text())) {
76 jQuery('#additional-settings-fields-toggle-switch').text(_wpcf7L10n.show);
77 jQuery('#additional-settings-fields').hide();
78 } else {
79 jQuery('#additional-settings-fields-toggle-switch').text(_wpcf7L10n.hide);
80 jQuery('#additional-settings-fields').show();
81 }
82
83 jQuery('#additional-settings-fields-toggle-switch').click(function() {
84 if (jQuery('#additional-settings-fields').is(':hidden')) {
85 jQuery('#additional-settings-fields').slideDown('fast');
86 jQuery('#additional-settings-fields-toggle-switch').text(_wpcf7L10n.hide);
87 } else {
88 jQuery('#additional-settings-fields').hide('fast');
89 jQuery('#additional-settings-fields-toggle-switch').text(_wpcf7L10n.show);
90 }
91 });
92
93 jQuery('.actions-link input').mouseover(function() {
94 jQuery(this).css({
95 'border-bottom': '1px solid'
96 });
97 });
98
99 jQuery('.actions-link input').mouseout(function() {
100 jQuery(this).css({
101 'border-bottom': 'none'
102 });
103 });
104 } catch (e) {
105 }
106 });
107
108 function updateTag() {
109 var title = jQuery('input#wpcf7-title').val();
110 if (title)
111 title = title.replace(/["'\[\]]/g, '');
112 jQuery('input#wpcf7-title').val(title);
113 var current = jQuery('input#wpcf7-id').val();
114 var tag = '[contact-form ' + current + ' "' + title + '"]';
115 jQuery('input#contact-form-anchor-text').val(tag);
116 }
117
118 function tagGenerator() {
119 var menu = jQuery('<div class="tag-generator"></div>');
120
121 var dropdown_icon = jQuery('<img src="../wp-content/plugins/contact-form-7/images/dropdown.gif" />');
122 dropdown_icon.css({ 'vertical-align': 'bottom' });
123
124 var selector = jQuery('<span>' + _wpcf7L10n.generateTag + '</span>');
125 selector.append(dropdown_icon);
126 selector.css({
127 border: '1px solid #ddd',
128 padding: '2px 4px',
129 background: '#fff url( ../wp-admin/images/fade-butt.png ) repeat-x 0 0',
130 '-moz-border-radius': '3px',
131 '-khtml-border-radius': '3px',
132 '-webkit-border-radius': '3px',
133 'border-radius': '3px'
134 });
135 selector.mouseover(function() {
136 jQuery(this).css({ 'border-color': '#bbb' });
137 });
138 selector.mouseout(function() {
139 jQuery(this).css({ 'border-color': '#ddd' });
140 });
141 selector.mousedown(function() {
142 jQuery(this).css({ background: '#ddd' });
143 });
144 selector.mouseup(function() {
145 jQuery(this).css({ background: '#fff url( ../wp-admin/images/fade-butt.png ) repeat-x 0 0' });
146 });
147 selector.click(function() {
148 dropdown.slideDown('fast');
149 return false;
150 });
151 jQuery('body').click(function() {
152 dropdown.hide();
153 });
154 menu.append(selector);
155
156 var pane = jQuery('<div class="tg-pane"></div>');
157 pane.hide();
158 menu.append(pane);
159
160 var dropdown = jQuery('<div class="tg-dropdown"></div>');
161 dropdown.hide();
162
163 var tag_types = [
164 'textField', 'emailField', 'textArea', 'menu', 'checkboxes', 'radioButtons',
165 'acceptance', 'quiz', 'captcha', 'fileUpload', 'submit'];
166
167 jQuery.each(tag_types, function(i, n) {
168 var submenu = jQuery('<div>' + _wpcf7L10n[n] + '</div>');
169 submenu.css({
170 margin: 0,
171 padding: '0 4px',
172 'line-height': '180%',
173 background: '#fff'
174 });
175 submenu.mouseover(function() {
176 jQuery(this).css({ background: '#d4f2f2' });
177 });
178 submenu.mouseout(function() {
179 jQuery(this).css({ background: '#fff' });
180 });
181 submenu.click(function() {
182 dropdown.hide();
183 pane.hide();
184 pane.empty();
185 tgPane(pane, n);
186 pane.slideDown('fast');
187 return false;
188 });
189 dropdown.append(submenu);
190 });
191
192 menu.append(dropdown);
193
194 return menu;
195 }
196
197 function tgPane(pane, tagType) {
198 var closeButtonDiv = jQuery('<div></div>');
199 closeButtonDiv.css({ float: 'right' });
200 var closeButton = jQuery('<span class="tg-closebutton">&#215;</span>');
201 closeButton.click(function() {
202 pane.slideUp('fast').empty();
203 });
204 closeButtonDiv.append(closeButton);
205 pane.append(closeButtonDiv);
206
207 var paneTitle = jQuery('<div class="tg-panetitle">' + _wpcf7L10n[tagType] + '</div>');
208 pane.append(paneTitle);
209
210 var tgInputs = {};
211 jQuery.each([ 'tagName', 'tagId', 'tagClasses', 'tagId2', 'tagClasses2', 'defaultValue',
212 'tagSize', 'tagMaxLength', 'tagFileSizeLimit', 'tagAcceptableFileTypes', 'tagCols', 'tagRows', 'label', 'fgColor', 'bgColor' ], function(i, n) {
213 tgInputs[n] = jQuery('<input type="text" />');
214 tgInputs[n].css({ width: '98%', 'font-size': 'smaller' });
215 tgInputs[n].change(function() {
216 tgCreateTag(tagType, tgInputs, n);
217 });
218 });
219 tgInputs.tagName.css({ 'border-color': '#555' });
220 jQuery.each([ 'isRequiredField', 'allowsMultipleSelections', 'insertFirstBlankOption', 'makeCheckboxesExclusive',
221 'isAcceptanceDefaultOn', 'isAcceptanceInvert',
222 'akismetAuthor', 'akismetAuthorEmail', 'akismetAuthorUrl',
223 'imageSizeSmall', 'imageSizeMedium', 'imageSizeLarge' ], function(i, n) {
224 tgInputs[n] = jQuery('<input type="checkbox" />');
225 tgInputs[n].change(function() {
226 tgCreateTag(tagType, tgInputs, n);
227 });
228 });
229 jQuery.each([ 'menuChoices' ], function(i, n) {
230 tgInputs[n] = jQuery('<textarea></textarea>');
231 tgInputs[n].css({ width: '98%', height: '100px', 'font-size': 'smaller' });
232 tgInputs[n].change(function() {
233 tgCreateTag(tagType, tgInputs, n);
234 });
235 });
236 jQuery.each([ 'tag1st', 'tag2nd' ], function(i, n) {
237 tgInputs[n] = jQuery('<input type="text" class="tag" readonly="readonly" onfocus="this.select()" />');
238 tgInputs[n].css({ width: '98%' });
239 });
240
241 switch (tagType) {
242 case 'textField':
243 case 'emailField':
244 var table1 = jQuery('<table></table>');
245 pane.append(table1);
246 table1.append(tgTr(
247 jQuery('<span>&nbsp;' + _wpcf7L10n.isRequiredField + '</span>').prepend(tgInputs.isRequiredField)
248 ));
249 table1.append(tgTr(
250 jQuery('<span>' + _wpcf7L10n.tagName + '<br /></span>').append(tgInputs.tagName),
251 jQuery('<span></span>')
252 ));
253
254 var table2 = jQuery('<table></table>');
255 pane.append(table2);
256 table2.append(tgTr(
257 jQuery('<span><code>size</code> (' + _wpcf7L10n.optional + ')<br /></span>').append(tgInputs.tagSize),
258 jQuery('<span><code>maxlength</code> (' + _wpcf7L10n.optional + ')<br /></span>').append(tgInputs.tagMaxLength)
259 ));
260 table2.append(tgTr(
261 jQuery('<span><code>id</code> (' + _wpcf7L10n.optional + ')<br /></span>').append(tgInputs.tagId),
262 jQuery('<span><code>class</code> (' + _wpcf7L10n.optional + ')<br /></span>').append(tgInputs.tagClasses)
263 ));
264 var akismetOpts = jQuery('<span>' + _wpcf7L10n.akismet + ' (' + _wpcf7L10n.optional + ')<br /></span>');
265 if ('textField' == tagType) {
266 akismetOpts.append(tgInputs.akismetAuthor).append('&nbsp;' + _wpcf7L10n.akismetAuthor);
267 akismetOpts.append('<br />');
268 akismetOpts.append(tgInputs.akismetAuthorUrl).append('&nbsp;' + _wpcf7L10n.akismetAuthorUrl);
269 } else if ('emailField' == tagType) {
270 akismetOpts.append(tgInputs.akismetAuthorEmail).append('&nbsp;' + _wpcf7L10n.akismetAuthorEmail);
271 }
272 table2.append(tgTr(
273 akismetOpts,
274 jQuery('<span>' + _wpcf7L10n.defaultValue + ' (' + _wpcf7L10n.optional + ')<br /></span>').append(tgInputs.defaultValue)
275 ));
276 pane.append(jQuery('<div class="tg-tag">' + _wpcf7L10n.generatedTag + '<br /></div>').append(tgInputs.tag1st));
277 break;
278 case 'textArea':
279 var table1 = jQuery('<table></table>');
280 pane.append(table1);
281 table1.append(tgTr(
282 jQuery('<span>&nbsp;' + _wpcf7L10n.isRequiredField + '</span>').prepend(tgInputs.isRequiredField)
283 ));
284 table1.append(tgTr(
285 jQuery('<span>' + _wpcf7L10n.tagName + '<br /></span>').append(tgInputs.tagName),
286 jQuery('<span></span>')
287 ));
288
289 var table2 = jQuery('<table></table>');
290 pane.append(table2);
291 table2.append(tgTr(
292 jQuery('<span><code>cols</code> (' + _wpcf7L10n.optional + ')<br /></span>').append(tgInputs.tagCols),
293 jQuery('<span><code>rows</code> (' + _wpcf7L10n.optional + ')<br /></span>').append(tgInputs.tagRows)
294 ));
295 table2.append(tgTr(
296 jQuery('<span><code>id</code> (' + _wpcf7L10n.optional + ')<br /></span>').append(tgInputs.tagId),
297 jQuery('<span><code>class</code> (' + _wpcf7L10n.optional + ')<br /></span>').append(tgInputs.tagClasses)
298 ));
299 table2.append(tgTr(
300 jQuery('<span>' + _wpcf7L10n.defaultValue + ' (' + _wpcf7L10n.optional + ')<br /></span>').append(tgInputs.defaultValue)
301 ));
302 pane.append(jQuery('<div class="tg-tag">' + _wpcf7L10n.generatedTag + '<br /></div>').append(tgInputs.tag1st));
303 break;
304 case 'menu':
305 case 'checkboxes':
306 case 'radioButtons':
307 var table1 = jQuery('<table></table>');
308 pane.append(table1);
309 if ('radioButtons' != tagType)
310 table1.append(tgTr(
311 jQuery('<span>&nbsp;' + _wpcf7L10n.isRequiredField + '</span>').prepend(tgInputs.isRequiredField)
312 ));
313 table1.append(tgTr(
314 jQuery('<span>' + _wpcf7L10n.tagName + '<br /></span>').append(tgInputs.tagName),
315 jQuery('<span></span>')
316 ));
317
318 var table2 = jQuery('<table></table>');
319 pane.append(table2);
320 table2.append(tgTr(
321 jQuery('<span><code>id</code> (' + _wpcf7L10n.optional + ')<br /></span>').append(tgInputs.tagId),
322 jQuery('<span><code>class</code> (' + _wpcf7L10n.optional + ')<br /></span>').append(tgInputs.tagClasses)
323 ));
324
325 if ('menu' == tagType) {
326 var menuOpt1 = jQuery('<span>&nbsp;' + _wpcf7L10n.allowsMultipleSelections + '</span>').prepend(tgInputs.allowsMultipleSelections).prepend('<br />');
327 var menuOpt2 = jQuery('<span>&nbsp;' + _wpcf7L10n.insertFirstBlankOption + '</span>').prepend(tgInputs.insertFirstBlankOption).prepend('<br />');
328
329 table2.append(tgTr(
330 jQuery('<span>' + _wpcf7L10n.menuChoices + '<br /></span>').append(tgInputs.menuChoices)
331 .append('<br /><span style="font-size: smaller">' + _wpcf7L10n.oneChoicePerLine + '</span>'),
332 menuOpt1.append(menuOpt2)
333 ));
334 } else if ('checkboxes' == tagType) {
335 table2.append(tgTr(
336 jQuery('<span>' + _wpcf7L10n.menuChoices + '<br /></span>').append(tgInputs.menuChoices)
337 .append('<br /><span style="font-size: smaller">' + _wpcf7L10n.oneChoicePerLine + '</span>'),
338 jQuery('<span>&nbsp;' + _wpcf7L10n.makeCheckboxesExclusive + '</span>').prepend(tgInputs.makeCheckboxesExclusive).prepend('<br />')
339 ));
340 } else {
341 table2.append(tgTr(
342 jQuery('<span>' + _wpcf7L10n.menuChoices + '<br /></span>').append(tgInputs.menuChoices)
343 .append('<br /><span style="font-size: smaller">' + _wpcf7L10n.oneChoicePerLine + '</span>')
344 ));
345 }
346
347 pane.append(jQuery('<div class="tg-tag">' + _wpcf7L10n.generatedTag + '<br /></div>').append(tgInputs.tag1st));
348 break;
349 case 'acceptance':
350 var table1 = jQuery('<table></table>');
351 pane.append(table1);
352
353 table1.append(tgTr(
354 jQuery('<span>' + _wpcf7L10n.tagName + '<br /></span>').append(tgInputs.tagName),
355 jQuery('<span></span>')
356 ));
357
358 var table2 = jQuery('<table></table>');
359 pane.append(table2);
360 table2.append(tgTr(
361 jQuery('<span><code>id</code> (' + _wpcf7L10n.optional + ')<br /></span>').append(tgInputs.tagId),
362 jQuery('<span><code>class</code> (' + _wpcf7L10n.optional + ')<br /></span>').append(tgInputs.tagClasses)
363 ));
364
365 var menuOpt1 = jQuery('<span>&nbsp;' + _wpcf7L10n.isAcceptanceDefaultOn + '</span>').prepend(tgInputs.isAcceptanceDefaultOn).prepend('<br />');
366 var menuOpt2 = jQuery('<span>&nbsp;' + _wpcf7L10n.isAcceptanceInvert + '</span>').prepend(tgInputs.isAcceptanceInvert).prepend('<br />');
367 menuOpt2.append('<br /><span style="font-size: smaller;">' + _wpcf7L10n.isAcceptanceInvertMeans + '</span>');
368
369 table2.append(jQuery('<tr></tr>').append(jQuery('<td colspan="2"></td>').append(menuOpt1).append(menuOpt2)));
370
371 pane.append(jQuery('<div class="tg-tag">' + _wpcf7L10n.generatedTag + '<br /></div>').append(tgInputs.tag1st));
372 break;
373 case 'quiz':
374 var table1 = jQuery('<table></table>');
375 pane.append(table1);
376
377 table1.append(tgTr(
378 jQuery('<span>' + _wpcf7L10n.tagName + '<br /></span>').append(tgInputs.tagName),
379 jQuery('<span></span>')
380 ));
381
382 var table2 = jQuery('<table></table>');
383 pane.append(table2);
384 table2.append(tgTr(
385 jQuery('<span><code>size</code> (' + _wpcf7L10n.optional + ')<br /></span>').append(tgInputs.tagSize),
386 jQuery('<span><code>maxlength</code> (' + _wpcf7L10n.optional + ')<br /></span>').append(tgInputs.tagMaxLength)
387 ));
388 table2.append(tgTr(
389 jQuery('<span><code>id</code> (' + _wpcf7L10n.optional + ')<br /></span>').append(tgInputs.tagId),
390 jQuery('<span><code>class</code> (' + _wpcf7L10n.optional + ')<br /></span>').append(tgInputs.tagClasses)
391 ));
392 table2.append(tgTr(
393 jQuery('<span>' + _wpcf7L10n.quizzes + '<br /></span>').append(tgInputs.menuChoices)
394 .append('<br /><span style="font-size: smaller">' + _wpcf7L10n.quizFormatDesc + '</span>')
395 ));
396 pane.append(jQuery('<div class="tg-tag">' + _wpcf7L10n.generatedTag + '<br /></div>').append(tgInputs.tag1st));
397 break;
398 case 'captcha':
399 var table1 = jQuery('<table></table>');
400 pane.append(table1);
401
402 if (! _wpcf7.captchaMod) {
403 table1.append('<tr><td colspan="2"><strong style="color: #e6255b">' +
404 _wpcf7L10n.needReallySimpleCaptcha + '</strong><br />' +
405 '<a href="http://wordpress.org/extend/plugins/really-simple-captcha/">' +
406 'http://wordpress.org/extend/plugins/really-simple-captcha/</a></td></tr>');
407 }
408
409 table1.append(tgTr(
410 jQuery('<span>' + _wpcf7L10n.tagName + '<br /></span>').append(tgInputs.tagName),
411 jQuery('<span></span>')
412 ));
413
414 var table2 = jQuery('<table></table>');
415 pane.append(table2);
416 table2.append('<caption>' + _wpcf7L10n.imageSettings + '</caption>');
417 var imageSizeOpts = jQuery('<span>' + _wpcf7L10n.imageSize + ' (' + _wpcf7L10n.optional + ')<br /></span>');
418 imageSizeOpts.append(tgInputs.imageSizeSmall).append('&nbsp;' + _wpcf7L10n.imageSizeSmall);
419 imageSizeOpts.append('&emsp;');
420 imageSizeOpts.append(tgInputs.imageSizeMedium).append('&nbsp;' + _wpcf7L10n.imageSizeMedium);
421 imageSizeOpts.append('&emsp;');
422 imageSizeOpts.append(tgInputs.imageSizeLarge).append('&nbsp;' + _wpcf7L10n.imageSizeLarge);
423 table2.append(jQuery('<tr></tr>').append(jQuery('<td colspan="2"></td>').append(imageSizeOpts)));
424 table2.append(tgTr(
425 jQuery('<span>' + _wpcf7L10n.fgColor + ' (' + _wpcf7L10n.optional + ')<br /></span>').append(tgInputs.fgColor),
426 jQuery('<span>' + _wpcf7L10n.bgColor + ' (' + _wpcf7L10n.optional + ')<br /></span>').append(tgInputs.bgColor)
427 ));
428 table2.append(tgTr(
429 jQuery('<span><code>id</code> (' + _wpcf7L10n.optional + ')<br /></span>').append(tgInputs.tagId),
430 jQuery('<span><code>class</code> (' + _wpcf7L10n.optional + ')<br /></span>').append(tgInputs.tagClasses)
431 ));
432
433 var table3 = jQuery('<table></table>');
434 pane.append(table3);
435 table3.append('<caption>' + _wpcf7L10n.inputFieldSettings + '</caption>');
436 table3.append(tgTr(
437 jQuery('<span><code>size</code> (' + _wpcf7L10n.optional + ')<br /></span>').append(tgInputs.tagSize),
438 jQuery('<span><code>maxlength</code> (' + _wpcf7L10n.optional + ')<br /></span>').append(tgInputs.tagMaxLength)
439 ));
440 table3.append(tgTr(
441 jQuery('<span><code>id</code> (' + _wpcf7L10n.optional + ')<br /></span>').append(tgInputs.tagId2),
442 jQuery('<span><code>class</code> (' + _wpcf7L10n.optional + ')<br /></span>').append(tgInputs.tagClasses2)
443 ));
444 pane.append(
445 jQuery('<div class="tg-tag">' + _wpcf7L10n.generatedTag + '</div>')
446 .append('<br />').append('1) ' + _wpcf7L10n.tagForImage)
447 .append(tgInputs.tag1st)
448 .append('<br />').append('2) ' + _wpcf7L10n.tagForInputField)
449 .append(tgInputs.tag2nd)
450 );
451 break;
452 case 'fileUpload':
453 var table1 = jQuery('<table></table>');
454 pane.append(table1);
455 table1.append(tgTr(
456 jQuery('<span>&nbsp;' + _wpcf7L10n.isRequiredField + '</span>').prepend(tgInputs.isRequiredField)
457 ));
458 table1.append(tgTr(
459 jQuery('<span>' + _wpcf7L10n.tagName + '<br /></span>').append(tgInputs.tagName),
460 jQuery('<span></span>')
461 ));
462
463 var table2 = jQuery('<table></table>');
464 pane.append(table2);
465 table2.append(tgTr(
466 jQuery('<span>' + _wpcf7L10n.fileSizeLimit + ' (' + _wpcf7L10n.bytes + ') (' + _wpcf7L10n.optional + ')<br /></span>').append(tgInputs.tagFileSizeLimit),
467 jQuery('<span>' + _wpcf7L10n.acceptableFileTypes + ' (' + _wpcf7L10n.optional + ')<br /></span>').append(tgInputs.tagAcceptableFileTypes)
468 ));
469 table2.append(tgTr(
470 jQuery('<span><code>id</code> (' + _wpcf7L10n.optional + ')<br /></span>').append(tgInputs.tagId),
471 jQuery('<span><code>class</code> (' + _wpcf7L10n.optional + ')<br /></span>').append(tgInputs.tagClasses)
472 ));
473 pane.append(jQuery('<div class="tg-tag">' + _wpcf7L10n.generatedTag + '<br /></div>').append(tgInputs.tag1st));
474 break;
475 case 'submit':
476 var table = jQuery('<table></table>');
477 pane.append(table);
478
479 table.append(tgTr(
480 jQuery('<span><code>id</code> (' + _wpcf7L10n.optional + ')<br /></span>').append(tgInputs.tagId),
481 jQuery('<span><code>class</code> (' + _wpcf7L10n.optional + ')<br /></span>').append(tgInputs.tagClasses)
482 ));
483
484 table.append(tgTr(
485 jQuery('<span>' + _wpcf7L10n.label + '<br /></span>').append(tgInputs.label),
486 jQuery('<span></span>')
487 ));
488 pane.append(jQuery('<div class="tg-tag">' + _wpcf7L10n.generatedTag + '<br /></div>').append(tgInputs.tag1st));
489 break;
490 }
491
492 tgCreateTag(tagType, tgInputs);
493 }
494
495 function tgTr() {
496 var tr = jQuery('<tr></tr>');
497 jQuery.each(arguments, function(i, n) {
498 var td = jQuery('<td></td>').append(n);
499 tr.append(td);
500 });
501 return tr;
502 }
503
504 function tgCreateTag(tagType, tgInputs, trigger) {
505 tgInputs.tag1st.empty();
506 tgInputs.tag2nd.empty();
507
508 jQuery.each([ 'tagName' ], function(i, n) {
509 var val = tgInputs[n].val();
510 val = val.replace(/[^0-9a-zA-Z:._-]/g, '').replace(/^[^a-zA-Z]+/, '');
511 if ('' == val)
512 val = tgDefaultName(tagType);
513 tgInputs[n].val(val);
514 });
515
516 jQuery.each([ 'tagSize', 'tagMaxLength', 'tagCols', 'tagRows' ], function(i, n) {
517 var val = tgInputs[n].val();
518 val = val.replace(/[^0-9]/g, '');
519 tgInputs[n].val(val);
520 });
521
522 jQuery.each([ 'tagId', 'tagId2' ], function(i, n) {
523 var val = tgInputs[n].val();
524 val = val.replace(/[^-0-9a-zA-Z_]/g, '');
525 tgInputs[n].val(val);
526 });
527
528 jQuery.each([ 'tagClasses', 'tagClasses2' ], function(i, n) {
529 var val = tgInputs[n].val();
530 val = jQuery.map(val.split(' '), function(n) {
531 return n.replace(/[^-0-9a-zA-Z_]/g, '');
532 }).join(' ');
533 val = jQuery.trim(val.replace(/\s+/g, ' '));
534 tgInputs[n].val(val);
535 });
536
537 jQuery.each([ 'fgColor', 'bgColor' ], function(i, n) {
538 var val = tgInputs[n].val();
539 val = val.replace(/[^0-9a-fA-F]/g, '');
540 tgInputs[n].val(val);
541 });
542
543 jQuery.each([ 'tagFileSizeLimit' ], function(i, n) {
544 var val = tgInputs[n].val();
545 val = val.replace(/[^0-9kKmMbB]/g, '');
546 tgInputs[n].val(val);
547 });
548
549 jQuery.each([ 'tagAcceptableFileTypes' ], function(i, n) {
550 var val = tgInputs[n].val();
551 val = val.replace(/[^0-9a-zA-Z.\s]/g, '');
552 tgInputs[n].val(val);
553 });
554
555 if ('akismetAuthor' == trigger && tgInputs.akismetAuthor.is(':checked')) {
556 tgInputs.akismetAuthorUrl.removeAttr('checked');
557 tgInputs.akismetAuthorEmail.removeAttr('checked');
558 } else if ('akismetAuthorUrl' == trigger && tgInputs.akismetAuthorUrl.is(':checked')) {
559 tgInputs.akismetAuthor.removeAttr('checked');
560 tgInputs.akismetAuthorEmail.removeAttr('checked');
561 } else if ('akismetAuthorEmail' == trigger && tgInputs.akismetAuthorEmail.is(':checked')) {
562 tgInputs.akismetAuthor.removeAttr('checked');
563 tgInputs.akismetAuthorUrl.removeAttr('checked');
564 }
565
566 if ('imageSizeSmall' == trigger && tgInputs.imageSizeSmall.is(':checked')) {
567 tgInputs.imageSizeMedium.removeAttr('checked');
568 tgInputs.imageSizeLarge.removeAttr('checked');
569 } else if ('imageSizeMedium' == trigger && tgInputs.imageSizeMedium.is(':checked')) {
570 tgInputs.imageSizeSmall.removeAttr('checked');
571 tgInputs.imageSizeLarge.removeAttr('checked');
572 } else if ('imageSizeLarge' == trigger && tgInputs.imageSizeLarge.is(':checked')) {
573 tgInputs.imageSizeSmall.removeAttr('checked');
574 tgInputs.imageSizeMedium.removeAttr('checked');
575 }
576
577 switch (tagType) {
578 case 'textField':
579 case 'emailField':
580 var type = ('emailField' == tagType) ? 'email' : 'text';
581 if (tgInputs.isRequiredField.is(':checked'))
582 type += '*';
583 var name = tgInputs.tagName.val();
584 var options = [];
585 if (tgInputs.tagSize.val() || tgInputs.tagMaxLength.val())
586 options.push(tgInputs.tagSize.val() + '/' + tgInputs.tagMaxLength.val());
587 if (tgInputs.tagId.val())
588 options.push('id:' + tgInputs.tagId.val());
589 if (tgInputs.tagClasses.val())
590 jQuery.each(tgInputs.tagClasses.val().split(' '), function(i, n) {
591 options.push('class:' + n);
592 });
593 if (tgInputs.akismetAuthor.is(':checked'))
594 options.push('akismet:author');
595 if (tgInputs.akismetAuthorUrl.is(':checked'))
596 options.push('akismet:author_url');
597 if (tgInputs.akismetAuthorEmail.is(':checked'))
598 options.push('akismet:author_email');
599 options = (options.length > 0) ? ' ' + options.join(' ') : '';
600 var dv = '';
601 if (tgInputs.defaultValue.val()) {
602 dv = ' "' + tgInputs.defaultValue.val().replace(/["]/g, '&quot;') + '"';
603 }
604 var tag = name ? '[' + type + ' ' + name + options + dv + ']' : '';
605 tgInputs.tag1st.val(tag);
606 break;
607 case 'textArea':
608 var type = 'textarea';
609 if (tgInputs.isRequiredField.is(':checked'))
610 type += '*';
611 var name = tgInputs.tagName.val();
612 var options = [];
613 if (tgInputs.tagCols.val() || tgInputs.tagRows.val())
614 options.push(tgInputs.tagCols.val() + 'x' + tgInputs.tagRows.val());
615 if (tgInputs.tagId.val())
616 options.push('id:' + tgInputs.tagId.val());
617 if (tgInputs.tagClasses.val())
618 jQuery.each(tgInputs.tagClasses.val().split(' '), function(i, n) {
619 options.push('class:' + n);
620 });
621 options = (options.length > 0) ? ' ' + options.join(' ') : '';
622 var dv = '';
623 if (tgInputs.defaultValue.val()) {
624 dv = ' "' + tgInputs.defaultValue.val().replace(/["]/g, '&quot;') + '"';
625 }
626 var tag = name ? '[' + type + ' ' + name + options + dv + ']' : '';
627 tgInputs.tag1st.val(tag);
628 break;
629 case 'menu':
630 case 'checkboxes':
631 case 'radioButtons':
632 var type = '';
633 if ('menu' == tagType)
634 type = 'select';
635 else if ('checkboxes' == tagType)
636 type = 'checkbox';
637 else if ('radioButtons' == tagType)
638 type = 'radio';
639 if (tgInputs.isRequiredField.is(':checked'))
640 type += '*';
641
642 var name = tgInputs.tagName.val();
643 var options = [];
644 if (tgInputs.allowsMultipleSelections.is(':checked'))
645 options.push('multiple');
646 if (tgInputs.insertFirstBlankOption.is(':checked'))
647 options.push('include_blank');
648 if (tgInputs.makeCheckboxesExclusive.is(':checked'))
649 options.push('exclusive');
650 if (tgInputs.tagId.val())
651 options.push('id:' + tgInputs.tagId.val());
652 if (tgInputs.tagClasses.val())
653 jQuery.each(tgInputs.tagClasses.val().split(' '), function(i, n) {
654 options.push('class:' + n);
655 });
656 options = (options.length > 0) ? ' ' + options.join(' ') : '';
657 var choices = '';
658 if (tgInputs.menuChoices.val())
659 jQuery.each(tgInputs.menuChoices.val().split("\n"), function(i, n) {
660 choices += ' "' + n.replace(/["]/g, '&quot;') + '"';
661 });
662 var tag = name ? '[' + type + ' ' + name + options + choices + ']' : '';
663 tgInputs.tag1st.val(tag);
664 break;
665 case 'acceptance':
666 var type = 'acceptance';
667 var name = tgInputs.tagName.val();
668 var options = [];
669 if (tgInputs.isAcceptanceDefaultOn.is(':checked'))
670 options.push('default:on');
671 if (tgInputs.isAcceptanceInvert.is(':checked'))
672 options.push('invert');
673 if (tgInputs.tagId.val())
674 options.push('id:' + tgInputs.tagId.val());
675 if (tgInputs.tagClasses.val())
676 jQuery.each(tgInputs.tagClasses.val().split(' '), function(i, n) {
677 options.push('class:' + n);
678 });
679 options = (options.length > 0) ? ' ' + options.join(' ') : '';
680 var tag = name ? '[' + type + ' ' + name + options + ']' : '';
681 tgInputs.tag1st.val(tag);
682 break;
683 case 'quiz':
684 var type = 'quiz';
685 var name = tgInputs.tagName.val();
686 var options = [];
687 if (tgInputs.tagSize.val() || tgInputs.tagMaxLength.val())
688 options.push(tgInputs.tagSize.val() + '/' + tgInputs.tagMaxLength.val());
689 if (tgInputs.tagId.val())
690 options.push('id:' + tgInputs.tagId.val());
691 if (tgInputs.tagClasses.val())
692 jQuery.each(tgInputs.tagClasses.val().split(' '), function(i, n) {
693 options.push('class:' + n);
694 });
695 options = (options.length > 0) ? ' ' + options.join(' ') : '';
696 var choices = '';
697 if (tgInputs.menuChoices.val())
698 jQuery.each(tgInputs.menuChoices.val().split("\n"), function(i, n) {
699 choices += ' "' + n.replace(/["]/g, '&quot;') + '"';
700 });
701 var tag = name ? '[' + type + ' ' + name + options + choices + ']' : '';
702 tgInputs.tag1st.val(tag);
703 break;
704 case 'captcha':
705 // for captchac
706 var type = 'captchac';
707 var name = tgInputs.tagName.val();
708 var options = [];
709 if (tgInputs.imageSizeSmall.is(':checked'))
710 options.push('size:s');
711 if (tgInputs.imageSizeMedium.is(':checked'))
712 options.push('size:m');
713 if (tgInputs.imageSizeLarge.is(':checked'))
714 options.push('size:l');
715 if (tgInputs.fgColor.val())
716 options.push('fg:#' + tgInputs.fgColor.val());
717 if (tgInputs.bgColor.val())
718 options.push('bg:#' + tgInputs.bgColor.val());
719 if (tgInputs.tagId.val())
720 options.push('id:' + tgInputs.tagId.val());
721 if (tgInputs.tagClasses.val())
722 jQuery.each(tgInputs.tagClasses.val().split(' '), function(i, n) {
723 options.push('class:' + n);
724 });
725 options = (options.length > 0) ? ' ' + options.join(' ') : '';
726 var tag = name ? '[' + type + ' ' + name + options + ']' : '';
727 tgInputs.tag1st.val(tag);
728 // for captchar
729 var type = 'captchar';
730 var options = [];
731 if (tgInputs.tagSize.val() || tgInputs.tagMaxLength.val())
732 options.push(tgInputs.tagSize.val() + '/' + tgInputs.tagMaxLength.val());
733 if (tgInputs.tagId2.val())
734 options.push('id:' + tgInputs.tagId2.val());
735 if (tgInputs.tagClasses2.val())
736 jQuery.each(tgInputs.tagClasses2.val().split(' '), function(i, n) {
737 options.push('class:' + n);
738 });
739 options = (options.length > 0) ? ' ' + options.join(' ') : '';
740 var tag = name ? '[' + type + ' ' + name + options + ']' : '';
741 tgInputs.tag2nd.val(tag);
742 break;
743 case 'fileUpload':
744 var type = 'file';
745 if (tgInputs.isRequiredField.is(':checked'))
746 type += '*';
747 var name = tgInputs.tagName.val();
748 var options = [];
749 if (tgInputs.tagId.val())
750 options.push('id:' + tgInputs.tagId.val());
751 if (tgInputs.tagClasses.val())
752 jQuery.each(tgInputs.tagClasses.val().split(' '), function(i, n) {
753 options.push('class:' + n);
754 });
755 if (tgInputs.tagFileSizeLimit.val())
756 options.push('limit:' + tgInputs.tagFileSizeLimit.val());
757 if (tgInputs.tagAcceptableFileTypes.val())
758 options.push('filetypes:' + tgInputs.tagAcceptableFileTypes.val().split(' ').join('|'));
759 options = (options.length > 0) ? ' ' + options.join(' ') : '';
760 var tag = name ? '[' + type + ' ' + name + options + ']' : '';
761 tgInputs.tag1st.val(tag);
762 break;
763 case 'submit':
764 var type = 'submit';
765
766 var options = [];
767 if (tgInputs.tagId.val())
768 options.push('id:' + tgInputs.tagId.val());
769 if (tgInputs.tagClasses.val())
770 jQuery.each(tgInputs.tagClasses.val().split(' '), function(i, n) {
771 options.push('class:' + n);
772 });
773 options = (options.length > 0) ? ' ' + options.join(' ') : '';
774
775 var label = tgInputs.label.val();
776 if (label)
777 label = ' "' + label.replace(/["]/g, '&quot;') + '"';
778 var tag = '[' + type + options + label + ']';
779 tgInputs.tag1st.val(tag);
780 break;
781 }
782 }
783
784 function tgDefaultName(tagType) {
785 var rand = Math.floor(Math.random() * 1000);
786 if ('textField' == tagType) {
787 return 'text-' + rand;
788 } else if ('emailField' == tagType) {
789 return 'email-' + rand;
790 } else if ('textArea' == tagType) {
791 return 'textarea-' + rand;
792 } else if ('menu' == tagType) {
793 return 'menu-' + rand;
794 } else if ('checkboxes' == tagType) {
795 return 'checkbox-' + rand;
796 } else if ('radioButtons' == tagType) {
797 return 'radio-' + rand;
798 } else if ('acceptance' == tagType) {
799 return 'acceptance-' + rand;
800 } else if ('quiz' == tagType) {
801 return 'quiz-' + rand;
802 } else if ('captcha' == tagType) {
803 return 'captcha-' + rand;
804 } else if ('fileUpload' == tagType) {
805 return 'file-' + rand;
806 }
807 }