PluginProbe
Formidable Forms – WordPress Form Builder for Contact Forms, Calculators, Quizzes & More / 1.07.11
Formidable Forms – WordPress Form Builder for Contact Forms, Calculators, Quizzes & More v1.07.11
6.35 6.34 6.33.1 6.33 6.32.1 6.32 6.31 6.25 6.25.1 6.26 6.26.1 6.27 6.28 6.29 6.3 6.3.1 6.3.2 6.30 6.4 6.4.1 6.4.2 6.5 6.5.1 6.5.2 6.5.3 All 141 releases
formidable / js / formidable_admin.js

formidable_admin.js in Formidable Forms – WordPress Form Builder for Contact Forms, Calculators, Quizzes & More 1.07.11, at js/formidable_admin.js

1,284 lines 48.0 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 jQuery(document).ready(function($){
2
3 window.onscroll=document.documentElement.onscroll=frmSetMenuOffset;
4 frmSetMenuOffset();
5 $("input[name='options[success_action]'], input[name='options[edit_action]']").change(frm_show_success_opt);
6
7 $('.wp-admin').click(function(e){
8 var t=$(e.target);
9 if($('.dropdown.open').length && !t.hasClass('dropdown') && !t.closest('.dropdown').length)
10 $('.dropdown.open').removeClass('open');
11 });
12
13 $('a[data-toggle]').click(frmToggleDiv);
14
15 if($('#new_fields').length){
16 $('#new_fields').sortable({
17 placeholder:'sortable-placeholder',axis:'y',cursor:'move',opacity:0.65,
18 cancel:'.widget,.frm_field_opts_list,input,textarea,select',
19 accepts:'field_type_list',revert:true,forcePlaceholderSize:true,
20 receive:function(event,ui){
21 var new_id=(ui.item).attr('id');
22 jQuery('#new_fields .frmbutton.frm_t'+new_id).replaceWith('<img class="frmbutton frmbutton_loadingnow" id="'+new_id+'" src="'+frm_js.images_url+'/ajax_loader.gif" alt="'+frm_js.loading+'" />');
23 jQuery.ajax({
24 type:"POST",url:ajaxurl,data:"action=frm_insert_field&form_id="+$('input[name="id"]').val()+"&field="+new_id,
25 success:function(msg){
26 $('.frm_no_fields').hide();
27 $('.frmbutton_loadingnow#'+new_id).replaceWith(msg);
28 var regex = /id="(\S+)"/; match=regex.exec(msg);
29 $('#'+match[1]+' .frm_ipe_field_label').mouseover().click();
30 var order= $('#new_fields').sortable('serialize');
31 $('select[name^="item_meta"], textarea[name^="item_meta"], input[name^="item_meta"]').not(':radio, :checkbox').css('float','left');
32 jQuery.ajax({type:"POST",url:ajaxurl,data:"action=frm_update_field_order&"+order});
33 }
34 });
35 },
36 update:function(){
37 var order= $('#new_fields').sortable('serialize');
38 jQuery.ajax({type:"POST",url:ajaxurl,data:"action=frm_update_field_order&"+order});
39 }
40 });
41 if($('input[name="name"]').val() == '')
42 $('input[name="name"]').focus();
43 }
44
45 $('#new_fields').on('mouseenter mouseleave', '.frm_field_box', frmFieldHover);
46 $('#new_fields').on('click', '.use_calc', frmPopCalcFields);
47 $('#new_fields').on('click', '.frm_req_field', frm_mark_required);
48 $('#new_fields').on('click', '.frm_reload_icon', frm_clear_on_focus);
49 $('#new_fields').on('click', '.frm_error_icon', frm_default_blank);
50 $('#new_fields').on('click', '.frm_single_option .frm_delete_icon', frm_delete_field_option);
51
52 $('.inside').on('click', '.frm_insert_code', frmInsertCode);
53 $(document).on('change', '.frm_insert_val', function(){
54 frmInsertFieldCode($(this).data('target'),$(this).val());
55 $(this).val('');
56 });
57
58 if($('#frm_adv_info').length || $('.frm_field_list').length){
59 $('#frm_adv_info').before('<div id="frm_position_ele"></div>');
60
61 $('.frm_code_list a').addClass('frm_noallow');
62
63 $(document).on('focusin click', 'form input, form textarea, #wpcontent', function(e){
64 e.stopPropagation();
65 if($(this).is(':not(:submit, input[type=button])')){ var id=$(this).attr('id');frmToggleAllowedShortcodes(id,e.type);}
66 });
67 $('#postbox-container-1').on('mousedown', '#frm_adv_info a, .frm_field_list a', function(e){e.preventDefault();});
68
69 if(typeof(tinymce)=='object'){
70 DOM=tinymce.DOM;
71 if(typeof(DOM.events) !='undefined' && typeof(DOM.events.add) !='undefined'){
72 DOM.events.add( DOM.select('.wp-editor-wrap'), 'mouseover', function(e){
73 if($('*:focus').length>0)return;
74 if(this.id)frmToggleAllowedShortcodes(this.id.slice(3,-5),'focusin');});
75 DOM.events.add( DOM.select('.wp-editor-wrap'), 'mouseout', function(e){
76 if($('*:focus').length>0)return;
77 if(this.id)frmToggleAllowedShortcodes(this.id.slice(3,-5),'focusin');});
78 }else{
79 $('#frm_dyncontent').on('mouseover mouseout', '.wp-editor-wrap', function(e){
80 if($('*:focus').length>0)return;
81 if(this.id)frmToggleAllowedShortcodes(this.id.slice(3,-5),'focusin');
82 });
83 }
84 }
85
86 $('.hide_dyncontent').hide();
87 frm_show_count($("input[name='show_count']:checked").val());
88 frm_show_loc($('#insert_loc').val());
89 }
90
91 $('#post_settings').on('change', '.frm_tax_selector', frmChangePosttaxRow);
92
93 if($('.hide_editable').length){
94 $('.hide_editable, .hide_ar, .hide_save_draft').hide();
95
96 if( $('#save_draft').is(':checked')) $('.hide_save_draft').show();
97 $('#save_draft').change(function(){if( $(this).is(':checked')) $('.hide_save_draft').fadeIn('slow'); else $('.hide_save_draft').fadeOut('slow');});
98
99 if( $('#editable').is(':checked')) $('.hide_editable').show();
100 $('#editable').change(function(){if( $(this).is(':checked')) $('.hide_editable').fadeIn('slow'); else $('.hide_editable').fadeOut('slow');});
101
102 if( $('#auto_responder').is(':checked')) $('.hide_ar').show();
103
104 $('.hide_logged_in, .hide_single_entry').frmInvisible();
105 if( $('#logged_in').is(':checked')) $('.hide_logged_in').frmVisible();
106 $('#logged_in').change(function(){if( $(this).is(':checked')) $('.hide_logged_in').frmVisible(); else $('.hide_logged_in').frmInvisible();});
107
108 if( $('#single_entry').is(':checked')) $('.hide_single_entry').frmVisible();
109 $('#single_entry').change(function(){if( $(this).is(':checked')) $('.hide_single_entry').frmVisible(); else $('.hide_single_entry').frmInvisible();});
110 }
111
112 if($('.widget-top').length){
113 $(document).on('click', '.widget-top', frmClickWidget);
114 $('.widget-top,a.widget-action').click(function(){frmPopCalcFields(this);$(this).closest('div.widget').siblings().children('.widget-inside').slideUp('fast');});
115 }
116
117 if($('.frm_ipe_form_desc').length){
118 var form_id=$('input[name="id"]').val();
119 $('.frm_form_builder form:first').submit(function(){$('.inplace_field').blur();})
120
121 $('.frm_ipe_form_key').editInPlace({
122 url:ajaxurl,params:"action=frm_form_key_in_place_edit&form_id="+form_id,
123 show_buttons:"true",value_required:"true",
124 save_button: '<a class="inplace_save save button button-small">'+frm_admin_js.ok+'</a>',
125 cancel_button:'<a class="inplace_cancel cancel">'+frm_admin_js.cancel+'</a>',
126 bg_over:"#fffbcc",bg_out:"#fffbcc"
127 });
128
129 $('.frm_ipe_form_desc').editInPlace({
130 url:ajaxurl,params:'action=frm_form_desc_in_place_edit&form_id='+form_id,
131 field_type:'textarea',textarea_rows:3,textarea_cols:60,default_text:frm_admin_js.desc,
132 show_buttons:'true',
133 save_button: '<a class="inplace_save save button button-small">'+frm_admin_js.ok+'</a>',
134 cancel_button:'<a class="inplace_cancel cancel">'+frm_admin_js.cancel+'</a>',
135 });
136
137 $('#new_fields').on('keypress', '.frm_ipe_field_label, .frm_ipe_field_option, .frm_ipe_field_option_key', frmBlurField);
138 $('#new_fields').on('mouseenter', '.frm_ipe_field_option, .frm_ipe_field_option_key', frmSetIPEOpts);
139 $('#new_fields').on('mouseenter', '.frm_ipe_field_key', frmSetIPEKey);
140 $('#new_fields').on('mouseenter', '.frm_ipe_field_label', frmSetIPELabel);
141 $('#new_fields').on('mouseenter', '.frm_ipe_field_desc', frmSetIPEDesc);
142
143 $('select[name^="item_meta"], textarea[name^="item_meta"]').css('float','left');
144 $('input[name^="item_meta"]').not(':radio, :checkbox').css('float','left');
145
146 if($('.frm_field_loading').length){
147 var load_field_id=$('.frm_field_loading').first().data('triggered',1).attr('id');
148 frmLoadFields(load_field_id);
149 }
150 }
151
152 // tabs
153 $('.frm-category-tabs a').click(function(){
154 var t = $(this).attr('href');
155 if(typeof(t)!='undefined'){
156 frmClickTab(t, $(this));
157 }
158 return false;
159 });
160
161 $('.item-list-form').submit(function(){
162 if($('#bulkaction').val()=='delete'){return confirm('Are you sure you want to delete each of the selected items below?');}
163 });
164
165 $('#frm_deauthorize_link').click(frm_deauthorize);
166
167 $("select[name='frm_theme_selector'] option").each(function(){
168 $(this).hover(function(){$('#frm_show_cal').removeClass().addClass($(this).attr('id'));},'');
169 });
170
171 $('.frm_reset_style').click(function(){
172 if(!confirm(frm_admin_js.confirm))
173 return false;
174 jQuery.ajax({
175 type:'POST',url:ajaxurl,
176 data:'action=frm_settings_reset',
177 success:function(errObj){
178 errObj=errObj.replace(/^\s+|\s+$/g,'');
179 if(errObj.indexOf('{') === 0)
180 var errObj=jQuery.parseJSON(errObj);
181 for (var key in errObj){
182 $('input[name="frm_'+key+'"], select[name="frm_'+key+'"]').val(errObj[key]);
183 }
184 $('select[name="frm_theme_selector"]').val(errObj['theme_css']).change();
185 $('#frm_submit_style, #frm_auto_width').prop('checked', false); //checkboxes
186 $('input.hex').validHex();
187 $('#frm_fieldset').change();
188 }
189 });
190 });
191
192 $("select[name='frm_theme_selector']").change(function(){
193 if($(this).val() == -1){
194 var themeName=-1;
195 var css=-1;
196 }else{
197 var css='https://ajax.googleapis.com/ajax/libs/jqueryui/1.7.3/themes/'+$(this).val()+'/jquery-ui.css';
198 var themeName=$("select[name='frm_theme_selector'] option[value='"+$(this).val()+"']").text();
199 }
200 frmUpdateUICSS(css);
201 $('input[name="frm_theme_css"]').val($(this).val()); $('input[name="frm_theme_name"]').val(themeName);
202 return false;
203 });
204
205 jQuery('.field_type_list > li').draggable({connectToSortable:'#new_fields',cursor:'move',helper:'clone',revert:'invalid',delay:10});
206 jQuery('ul.field_type_list, .field_type_list li, ul.frm_code_list, .frm_code_list li, .frm_code_list li a, #frm_adv_info #category-tabs li, #frm_adv_info #category-tabs li a').disableSelection();
207
208 $('#post_settings').on('change', 'select.frm_single_post_field', frmCheckDupPost);
209 $('#new_fields').on('mouseenter mouseleave', '.frm_single_option', frmHoverVis);
210 $('#new_fields').on('click', 'li.ui-state-default', frmClickVis);
211 $('.frm_form_builder').on('keyup', 'input[name^="item_meta"], textarea[name^="item_meta"]', frmTriggerDefaults);
212 $('.frm_form_builder').on('change', 'select[name^="item_meta"]', frmTriggerDefaults);
213 $('.wrap').on('mouseenter.frm', '.frm_help', function(){
214 $(this).off('mouseenter.frm');
215 $('.frm_help').tooltip(
216 {template:'<div class="frm_tooltip tooltip"><div class="tooltip-inner"></div></div>',placement:'bottom'}
217 );
218 $(this).tooltip('show');
219 });
220 $('.frm_help').tooltip({template:'<div class="frm_tooltip tooltip"><div class="tooltip-inner"></div></div>',placement:'bottom'});
221 $('.wrap').on('mouseenter.frm', '.frm_bstooltip', function(){$(this).off('mouseenter.frm');$('.frm_bstooltip').tooltip();$(this).tooltip('show');});
222 $('.frm_bstooltip').tooltip();
223
224
225 $('.frm_select_box').click(function(){this.select();});
226 $('.frm_select_box').focus(function(){this.select();});
227
228 jQuery('#frm_single_entry_type').change(function(){
229 if(jQuery('#frm_single_entry_type option:selected').val()=="cookie"){jQuery('#frm_cookie_expiration').fadeIn('slow');}
230 else{jQuery('#frm_cookie_expiration').fadeOut('slow');}
231 });
232
233 jQuery('#single_entry').change(function(){
234 if(jQuery('#single_entry').is(':checked') && jQuery('#frm_single_entry_type option:selected').val()=='cookie'){jQuery('#frm_cookie_expiration').fadeIn('slow');}
235 else{jQuery('#frm_cookie_expiration').fadeOut('slow');}
236 });
237
238 if($('.frm_exclude_cat_list .frm_catlevel_2').length){
239 $('.frm_exclude_cat_list').each(function(){frmShowLevCheck($(this));});
240 }
241
242 $('a.edit-frm_shortcode').click(function() {
243 if ($('#frm_shortcodediv').is(":hidden")) {
244 $('#frm_shortcodediv').slideDown('fast', function(){frmSetMenuOffset()});
245 $(this).hide();
246 }
247 return false;
248 });
249
250 $('.cancel-frm_shortcode', '#frm_shortcodediv').click(function() {
251 $('#frm_shortcodediv').slideUp('fast', function(){frmSetMenuOffset()});
252 $('#frm_shortcodediv').siblings('a.edit-frm_shortcode').show();
253 return false;
254 });
255
256 $('#wpbody').on('click', '.frm_remove_tag, .frm_remove_email', frm_remove_this_tag);
257 $('.frm_add_remove').on('click', '.frm_add_where_row', frm_add_where_row);
258 $('.frm_add_remove').on('click', '.frm_add_order_row', frm_add_order_row);
259 $('#new_fields').on('click', '.frm_add_logic_row', frmAddFieldLogicRow);
260 $('.frm_form_settings').on('click', '.frm_add_form_logic', frmAddFormLogicRow);
261 $('#post_settings').on('click', '.frm_add_postmeta_row', frm_add_postmeta_row);
262 $('#post_settings').on('click', '.frm_add_posttax_row', frm_add_posttax_row);
263 $('#post_settings').on('click', '.frm_toggle_cf_opts', frm_toggle_cf_opts);
264
265 //is export page
266 if($('#frm_export_xml').length){
267 $('#frm_export_xml').submit(frmValidateExport);
268 $('#frm_export_xml input, #frm_export_xml select').change(frmRemoveExportError);
269 $('input[name="frm_import_file"]').change(frmCheckCSVExtension);
270 $('select[name="format"]').change(frmCheckExportTypes);
271 }
272
273 });
274
275 function frmClickTab(t, link){
276 var c = t.replace('#', '.');
277 var pro=jQuery('#taxonomy-linkcategory .frm-category-tabs li').length > 2;
278 link.closest('li').addClass('tabs active').siblings('li').removeClass('tabs active');
279 if(link.closest('div').find('.tabs-panel').length) link.closest('div').children('.tabs-panel').hide();
280 else{link.closest('div.inside').find('.tabs-panel, .hide_with_tabs').hide();
281 if(link.closest('ul').hasClass('frm-form-setting-tabs')){
282 if(t=='#html_settings'){
283 if(pro){
284 jQuery('#taxonomy-linkcategory .frm-category-tabs li').hide();
285 jQuery('#frm_html_tab').show();
286 }
287 jQuery('#frm_html_tags_tab').click();
288 }else if(jQuery('#frm_html_tags_tab').is(':visible')){
289 if(pro){jQuery('#taxonomy-linkcategory .frm-category-tabs li').show();jQuery('#frm_html_tab').hide();}
290 jQuery('#frm_insert_fields_tab').click();
291 }
292 }}
293 jQuery(t).show();
294 jQuery(c).show();
295
296 if(jQuery(link).closest('#frm_adv_info').length){
297 return;
298 }
299
300 if(jQuery('.frm_form_settings').length){
301 jQuery('.frm_form_settings').attr('action', '?page=formidable&frm_action=settings&id='+jQuery('.frm_form_settings input[name="id"]').val()+'&t='+t.replace('#', ''));
302 }else{
303 jQuery('.frm_settings_form').attr('action', '?page=formidable-settings&t='+t.replace('#', ''));
304 }
305 }
306
307 function frmSettingsTab(tab, id){
308 var t = jQuery('.'+id+'_settings');
309 if(jQuery(t).length){
310 tab.parent().addClass('active').siblings('li').removeClass('active');
311 tab.closest('div.inside').children('.tabs-panel').hide();
312 jQuery(t).show();
313 }
314 return false;
315 }
316
317 function frmLoadFields(field_id){
318 if(jQuery.isFunction(jQuery.fn.addBack)){
319 var fields=jQuery('#'+field_id).nextAll("*:lt(14)").addBack();
320 }else{
321 var fields=jQuery('#'+field_id).nextAll("*:lt(14)").andSelf();
322 }
323 fields.addClass('frm_load_now');
324
325 var h = [];
326 jQuery.each(fields, function(k,v){
327 h.push(jQuery(v).find('.frm_hidden_fdata').html());
328 });
329
330 jQuery.ajax({
331 type:'POST',url:ajaxurl,
332 data:{action:'frm_load_field',field:h},
333 success:function(html){
334 html=html.replace(/^\s+|\s+$/g,'');
335 if(html.indexOf('{') !== 0){
336 jQuery('.frm_load_now').removeClass('.frm_load_now').html('Error');
337 return;
338 }
339 html = jQuery.parseJSON(html);
340
341 for(var key in html){
342 var t=jQuery('#frm_field_id_'+key).html(html[key]).removeClass('frm_field_loading frm_load_now').addClass('ui-state-default').children('.frm_form_fields').data('ftype');
343 jQuery('#frm_field_id_'+key).addClass('edit_field_type_'+t);
344 }
345
346 jQuery('select[name^="item_meta"], textarea[name^="item_meta"], input[name^="item_meta"]').not(':radio, :checkbox').css('float','left');
347 if(jQuery('#'+field_id).nextAll('.frm_field_loading').not('.frm_load_now').length){
348 frmLoadFields(jQuery('#'+field_id).nextAll('.frm_field_loading').not('.frm_load_now').attr('id'));
349 }
350 }
351 });
352 }
353
354 function frmSubmitBuild(b){
355 var p=jQuery(b).val();
356 frmPreFormSave(b);
357
358 var form=jQuery('#frm_build_form');
359 var v=JSON.stringify(form.serializeArray());
360 jQuery('#frm_compact_fields').val(v);
361 jQuery.ajax({
362 type:"POST",url:ajaxurl,
363 data:{action:'frm_save_form','frm_compact_fields':v},
364 success:function(msg){
365 jQuery(b).val(frm_admin_js.saved);
366 jQuery(b).nextAll('.frm-loading-img').css('visibility', 'hidden');
367 jQuery('#poststuff').prepend('<div id="message" class="frm_message updated" style="padding:5px;">'+msg+'</div>');
368 setTimeout(function(){
369 jQuery('#message.frm_message').fadeOut('slow');
370 jQuery(b).fadeOut('slow', function(){
371 jQuery(b).val(p);
372 jQuery(b).show();
373 });
374 }, 2000);
375 },
376 error:function(html){jQuery('#frm_js_build_form').submit();}
377 });
378 }
379
380 function frmSubmitNoAjax(b){
381 frmPreFormSave(b);
382
383 var form=jQuery('#frm_build_form');
384 jQuery('#frm_compact_fields').val(JSON.stringify(form.serializeArray()));
385 jQuery('#frm_js_build_form').submit();
386 }
387
388 function frmPreFormSave(b){
389 if(jQuery('form.inplace_form').length){
390 jQuery('.inplace_save').click();
391 }
392
393 jQuery(b).val(frm_admin_js.saving);
394 jQuery(b).nextAll('.frm-loading-img').css('visibility', 'visible');
395 }
396
397 function frmClickWidget(){
398 if(jQuery(this).hasClass('widget-action')) return;
399 if(jQuery(this).parents().hasClass('frm_35_trigger')) return;
400 inside=jQuery(this).closest('div.widget').children('.widget-inside');
401 if(inside.is(':hidden')){inside.slideDown('fast');}else{inside.slideUp('fast');}
402 }
403
404 function frmBlurField(e){
405 if(e.which == 13){
406 jQuery('.inplace_field').blur();return false;
407 }
408 }
409 function frmTriggerDefaults(){
410 var n=jQuery(this).attr('name');
411 if(typeof(n)=='undefined') return false;
412 var n=n.substring(10,n.length-1);
413 frmShowDefaults(n,jQuery(this).val());
414 }
415
416 function frmCheckUniqueOpt(id,html,text){
417 jQuery('#'+id).replaceWith('<label id="'+id+'" class="'+ jQuery('#'+id).attr('class')+'">'+html+'</label>');
418 if(id.indexOf('field_key_') === 0){
419 var a=id.split('-');
420 jQuery.each(jQuery('label[id^="'+a[0]+'"]'), function(k,v){
421 var c=false;
422 if(!c && jQuery(v).attr('id') != id && jQuery(v).html() == text){
423 var c=true;
424 alert('Saved values cannot be identical.');
425 }
426 });
427 }
428 }
429
430 function frmSetIPEKey(){
431 jQuery(this).editInPlace({
432 show_buttons:"true",value_required:"true",
433 save_button: '<a class="inplace_save save button button-small">'+frm_admin_js.ok+'</a>',
434 cancel_button:'<a class="inplace_cancel cancel">'+frm_admin_js.cancel+'</a>',
435 bg_out:"#fffbcc",
436 callback:function(x,text){jQuery(this).next('input').val(text);return text;}
437 });
438 }
439
440 function frmSetIPELabel(){
441 jQuery(this).editInPlace({
442 url:ajaxurl,params:'action=frm_field_name_in_place_edit',
443 value_required:'true'
444 });
445 }
446
447 function frmSetIPEDesc(){
448 jQuery(this).editInPlace({
449 url:ajaxurl,params:'action=frm_field_desc_in_place_edit',
450 default_text:frm_admin_js.desc,
451 field_type:'textarea',textarea_rows:3
452 });
453 }
454
455 function frmSetIPEOpts(){
456 jQuery(this).editInPlace({
457 default_text:frm_admin_js.blank,
458 callback:function(d,text){
459 var id=jQuery(this).attr('id');
460 jQuery.ajax({
461 type:"POST",url:ajaxurl,
462 data:{action:'frm_field_option_ipe',update_value:text,element_id:id},
463 success:function(html){frmCheckUniqueOpt(id,html,text);}
464 });
465 }
466 });
467 }
468
469 function frmUpdateOpts(field_id,opts){
470 jQuery('#frm_field_'+field_id+'_opts').html('').addClass('frm-loading-img');
471 jQuery.ajax({
472 type:"POST",url:ajaxurl,
473 data:{action:'frm_import_options',field_id:field_id,opts:opts},
474 success:function(html){jQuery('#frm_field_'+field_id+'_opts').html(html).removeClass('frm-loading-img');
475 if(jQuery('select[name="item_meta['+field_id+']"]').length>0){
476 var o=opts.replace(/\s\s*$/,'').split("\n");
477 var sel='';
478 for (var i=0;i<o.length;i++){sel +='<option value="'+o[i]+'">'+o[i]+'</option>';}
479 jQuery('select[name="item_meta['+field_id+']"]').html(sel);
480 jQuery('select[name^="item_meta"], input[name^="item_meta"]').not(':radio, :checkbox').css('float','left');
481 }
482 }
483 });
484 }
485
486 function frm_remove_this_tag(){
487 var id=jQuery(this).data('removeid');
488 var show=jQuery(this).data('showlast');
489 if(typeof(show) == 'undefined'){
490 show = '';
491 }
492
493 if(show != ''){
494 if ( jQuery(this).closest('.frm_add_remove').find('.frm_remove_tag').length > 1 )
495 show = '';
496 }else if(id.indexOf('frm_logic_') === 0 && jQuery(this).closest('.frm_logic_rows').find('.frm_logic_row').length<2){
497 show='#'+jQuery(this).closest('td').children('.frm_add_logic_link').attr('id');
498 }else if(id.indexOf('frm_postmeta_') === 0){
499 if(jQuery('#frm_postmeta_rows .frm_postmeta_row').length<2)
500 show='.frm_add_postmeta_row.button';
501 if(jQuery('.frm_toggle_cf_opts').length && jQuery('#frm_postmeta_rows .frm_postmeta_row').not('#'+id).last().length){
502 if(show!='')
503 show += ','
504 show += '#'+jQuery('#frm_postmeta_rows .frm_postmeta_row').not('#'+id).last().attr('id')+' .frm_toggle_cf_opts';
505 }
506 }
507
508 jQuery('#'+id).fadeOut('slow', function(){
509 jQuery('#'+id).remove();
510 if(show != '')
511 jQuery(show).fadeIn('slow');
512 });
513 if(show != '')
514 jQuery(this).closest('.frm_logic_rows').fadeOut('slow');
515
516 return false;
517 }
518
519 function frm_remove_tag(html_tag){jQuery(html_tag).remove();}
520
521 function frmToggleLogic(id){
522 $ele = jQuery('#'+id);
523 $ele.fadeOut('slow');$ele.next('.frm_logic_rows').fadeIn('slow');
524 }
525 function frmToggleDiv(){
526 var div=jQuery(this).data('toggle');
527 if(jQuery(div).is(':visible')){ jQuery(div).slideUp('fast');}else{jQuery(div).slideDown('fast');}
528 }
529 function frm_show_div(div,value,show_if,class_id){
530 if(value==show_if) jQuery(class_id+div).fadeIn('slow'); else jQuery(class_id+div).fadeOut('slow');
531 }
532 function frm_select_item_checkbox(checked){if(!checked){jQuery(".select-all-item-action-checkboxes").removeAttr("checked");}}
533
534 function frmCheckAll(checked,n){
535 if(checked){jQuery("input[name^='"+n+"']").attr("checked","checked");}
536 else{jQuery("input[name^='"+n+"']").removeAttr("checked");}
537 }
538
539 function frmCheckAllLevel(checked,n,level){
540 var $kids=jQuery(".frm_catlevel_"+level).children(".frm_checkbox").children('label');
541 if(checked){$kids.children("input[name^='"+n+"']").attr("checked","checked");}
542 else{$kids.children("input[name^='"+n+"']").removeAttr("checked");}
543 }
544
545 function frmAddNewForm(form,action){if(form !='') window.location='?page=formidable&frm_action='+action+'&id='+form;}
546 function frmRedirectToForm(form,action){if(form !='') window.location='?page=formidable-entries&frm_action='+action+'&form='+form;}
547 function frmRedirectToDisplay(form,action){if(form !='') window.location='?page=formidable-entry-templates&frm_action='+action+'&form='+form;}
548
549 function frmAddFieldLogicRow(){
550 var id=jQuery(this).closest('td').children('.frm_add_logic_row').attr('id').replace('logic_', '');
551 var form_id=jQuery('input[name="id"]').val();
552 if(jQuery('#frm_logic_row_'+id+' .frm_logic_row').length>0)
553 var meta_name=1+parseInt(jQuery('#frm_logic_row_'+id+' .frm_logic_row:last').attr('id').replace('frm_logic_'+id+'_', ''));
554 else var meta_name=0;
555 jQuery.ajax({
556 type:"POST",url:ajaxurl,
557 data:"action=frm_add_logic_row&form_id="+form_id+"&field_id="+id+"&meta_name="+meta_name,
558 success:function(html){
559 jQuery('#logic_'+id).fadeOut('slow', function(){
560 jQuery('#frm_logic_row_'+id).append(html);
561 jQuery('#frm_logic_row_'+id).parent('.frm_logic_rows').fadeIn('slow');
562 });
563 }
564 });
565 return false;
566 }
567
568 function frm_add_logic_row(id,form_id){
569 jQuery.ajax({
570 type:"POST",url:ajaxurl,
571 data:"action=frm_add_logic_row&form_id="+form_id+"&field_id="+id+"&meta_name="+jQuery('#frm_logic_row_'+id+' > div').size(),
572 success:function(html){jQuery('#frm_logic_row_'+id).append(html);}
573 });
574 return false;
575 }
576
577 function frmAddFormLogicRow(){
578 var id=jQuery(this).data('emailkey');
579 var form_id=jQuery('input[name="id"]').val();
580 if(jQuery('#frm_notification_'+id+' .frm_logic_row').length)
581 var meta_name=1+parseInt(jQuery('#frm_notification_'+id+' .frm_logic_row:last').attr('id').replace('frm_logic_'+id+'_', ''));
582 else
583 var meta_name=0;
584 jQuery.ajax({
585 type:"POST",url:ajaxurl,
586 data:"action=frm_add_form_logic_row&form_id="+form_id+"&email_id="+id+"&meta_name="+meta_name,
587 success:function(html){
588 jQuery('#logic_link_'+id).fadeOut('slow', function(){
589 jQuery('#frm_logic_row_'+id).append(html);
590 jQuery('#frm_logic_row_'+id).parent('.frm_logic_rows').fadeIn('slow');
591 });
592 }
593 });
594 return false;
595 }
596
597 function frmGetFieldValues(f,cur,r,t,n){
598 if(f){
599 jQuery.ajax({
600 type:"POST",url:ajaxurl,
601 data:"action=frm_get_field_values&current_field="+cur+"&field_id="+f+'&name='+n+'&t='+t+'&form_action='+jQuery('input[name="frm_action"]').val(),
602 success:function(msg){jQuery("#frm_show_selected_values_"+cur+'_'+r).html(msg);}
603 });
604 }
605 }
606
607 function frm_show_success_opt(){
608 if(jQuery(this).attr('name') == 'options[edit_action]'){
609 var c='edit';
610 }else{
611 var c='success';
612 }
613 var v = jQuery(this).val();
614 jQuery('.'+c+'_action_box').hide();
615 if(v=='redirect'){
616 jQuery('.'+c+'_action_redirect_box.'+c+'_action_box').fadeIn('slow');
617 }else if(v=='page'){
618 jQuery('.'+c+'_action_page_box.'+c+'_action_box').fadeIn('slow');
619 }else{
620 jQuery('.'+c+'_action_message_box.frm_show_form_opt').show();
621 jQuery('.'+c+'_action_message_box.'+c+'_action_box').fadeIn('slow');
622 }
623 }
624
625 function add_frm_field_link(form_id,field_type){
626 jQuery.ajax({type:"POST",url:ajaxurl,data:"action=frm_insert_field&form_id="+form_id+"&field="+field_type,
627 success:function(msg){jQuery('.frm_no_fields').hide(); jQuery('#new_fields').append(msg); jQuery('#new_fields li:last .frm_ipe_field_label').mouseover().click();}
628 });
629 };
630
631 function frm_duplicate_field(field_id){
632 jQuery.ajax({type:"POST",url:ajaxurl,data:"action=frm_duplicate_field&field_id="+field_id,
633 success:function(msg){
634 jQuery('#new_fields').append(msg);
635 jQuery('select[name^="item_meta"], textarea[name^="item_meta"], input[name^="item_meta"]').not(':radio, :checkbox').css('float','left');
636 }
637 });
638 };
639
640 function frmToggleMultSel(val,field_id){
641 if(val=='select') jQuery('#frm_multiple_cont_'+field_id).fadeIn('fast');
642 else jQuery('#frm_multiple_cont_'+field_id).fadeOut('fast');
643 }
644
645 function frmPopCalcFields(v){
646 if(!v.type){
647 if(!jQuery(v).closest('div.widget').children('.widget-inside').is(':hidden'))
648 return;
649 var p=jQuery(v).closest('.frm_field_box');
650 }else{
651 var p=jQuery(this).closest('.frm_field_box');
652 }
653
654 if(!p.find('.use_calc').length || !p.find('.use_calc').is(':checked'))
655 return;
656
657 var form_id=jQuery('input[name="id"]').val();
658 var field_id=p.find('input[name="frm_fields_submitted[]"]').val();
659 jQuery.ajax({
660 type:'POST',url:ajaxurl,data:'action=frm_populate_calc_dropdown&field_id='+field_id+'&form_id='+form_id,
661 success:function(msg){p.find('.frm_shortcode_select').replaceWith(msg);}
662 });
663 }
664
665 function frm_mark_required(){
666 var thisid=jQuery(this).attr('id').replace('frm_', '');
667 var field_id=thisid.replace('req_field_', '');
668 if(jQuery(this).attr('id').indexOf('frm_') >= 0){
669 //checkbox was clicked
670 var checked=jQuery(this).is(':checked');
671 }else{
672 //link was clicked
673 var checked=(jQuery('#frm_'+thisid).is(':checked')) ? false : true;
674 }
675
676 if(checked){
677 var atitle='Click to Mark as Not Required';
678 jQuery('.frm_required_details'+field_id).fadeIn('fast').closest('.frm_validation_msg').fadeIn('fast');
679 if(jQuery('input[name="field_options[required_indicator_'+field_id+']"]').val() == '')
680 jQuery('input[name="field_options[required_indicator_'+field_id+']"]').val('*');
681 }else{
682 var atitle='Click to Mark as Required';
683 var v=jQuery('.frm_required_details'+field_id).fadeOut('fast').closest('.frm_validation_box').children(':not(.frm_required_details'+field_id+'):visible').length;
684 if(v==0)
685 jQuery('.frm_required_details'+field_id).closest('.frm_validation_msg').fadeOut('fast');
686 }
687 jQuery('#'+thisid).removeClass('frm_required0 frm_required1').addClass('frm_required'+(checked ? 1 : 0)).attr('title', atitle);
688 jQuery('#frm_'+thisid).prop('checked', checked);
689 };
690
691 function frmMarkUnique(field_id){
692 var thisid='uniq_field_'+field_id;
693 if(jQuery('#frm_'+thisid).is(':checked')){
694 jQuery('.frm_unique_details'+field_id).fadeIn('fast').closest('.frm_validation_msg').fadeIn('fast');
695 if(jQuery('.frm_unique_details'+field_id+' input').val() == '')
696 jQuery('.frm_unique_details'+field_id+' input').val(frm_admin_js.default_unique);
697 }else{
698 var v=jQuery('.frm_unique_details'+field_id).fadeOut('fast').closest('.frm_validation_box').children(':not(.frm_unique_details'+field_id+'):visible').length;
699 if(v==0)
700 jQuery('.frm_unique_details'+field_id).closest('.frm_validation_msg').fadeOut('fast');
701 }
702 };
703
704 function frmSeparateValue(field_id){
705 jQuery('.field_'+field_id+'_option_key').toggle();
706 jQuery('.field_'+field_id+'_option').toggleClass('frm_with_key');
707 jQuery.ajax({type:"POST",url:ajaxurl,data:"action=frm_update_ajax_option&field="+field_id+"&separate_value=1"});
708 }
709
710 function frmShowDefaults(n,fval){
711 if(fval){jQuery('#frm_clear_on_focus_'+n+',#frm_clear_on_focus_'+n+' a').css('visibility','visible').fadeIn('slow');}
712 else{jQuery('#frm_clear_on_focus_'+n+',#frm_clear_on_focus_'+n+' a').css('visibility','visible').fadeOut('slow');}
713 return false;
714 }
715
716 function frm_clear_on_focus(){
717 if(jQuery(this).hasClass('frm_inactive_icon')){
718 var switch_to='1';var t=frm_admin_js.clear_default;
719 }else{
720 var switch_to='0';var t=frm_admin_js.no_clear_default;
721 }
722 var field_id=jQuery(this).attr('id').replace('clear_field_', '');
723 jQuery(this).toggleClass('frm_inactive_icon').attr('title', t).tooltip('destroy').tooltip('show');
724 jQuery.ajax({type:"POST",url:ajaxurl,data:"action=frm_update_ajax_option&field="+field_id+"&clear_on_focus="+switch_to});
725 return false;
726 }
727
728 function frm_default_blank(){
729 if(jQuery(this).hasClass('frm_inactive_icon')){
730 var switch_to='1';var t=frm_admin_js.no_valid_default;
731 }else{
732 var switch_to='0';var t=frm_admin_js.valid_default;
733 }
734 var field_id=jQuery(this).attr('id').replace('default_blank_','');
735 jQuery(this).toggleClass('frm_inactive_icon').attr('title', t).tooltip('destroy').next('.tooltip').remove();jQuery(this).tooltip('show');
736 jQuery.ajax({type:"POST",url:ajaxurl,data:"action=frm_update_ajax_option&field="+field_id+"&default_blank="+switch_to});
737 return false;
738 }
739
740 function frm_add_field_option(field_id,table){
741 var data = {action:'frm_add_field_option',field_id:field_id,t:table};
742 jQuery.post(ajaxurl,data,function(msg){
743 jQuery('#frm_field_'+field_id+'_opts').append(msg);
744 if(table=='row'){ jQuery('#frm-grid-'+field_id+' tr:last').after(msg);}
745 });
746 };
747
748 function frm_delete_field_option(){
749 var cont = jQuery(this).parent('.frm_single_option').attr('id');
750 //id = 'frm_delete_field_'+field_id+'-'+opt_key+'_container'
751 var fk=cont.replace('frm_delete_field_', '').replace('_container', '').split('-');
752 jQuery.ajax({type:'POST',url:ajaxurl,
753 data:'action=frm_delete_field_option&field_id='+fk[0]+'&opt_key='+fk[1],
754 success:function(msg){
755 jQuery('#'+cont).fadeOut('slow', function(){
756 jQuery('#'+cont).remove();
757 });
758 }
759 });
760 };
761
762 function frm_delete_field(field_id){
763 if(confirm("Are you sure you want to delete this field and all data associated with it?")){
764 jQuery.ajax({
765 type:"POST",url:ajaxurl,
766 data:"action=frm_delete_field&field_id="+field_id,
767 success:function(msg){
768 jQuery('#frm_field_id_'+field_id).fadeOut('slow', function(){
769 jQuery('#frm_field_id_'+field_id).remove();
770 if(jQuery('#new_fields li').length === 0) jQuery('.frm_no_fields').show();
771 });
772 }
773 });
774 }
775 };
776
777 function frmHoverVis(e){
778 if(e.type=='mouseenter'){
779 jQuery(this).children('.frm_single_show_hover').show(); jQuery(this).children('.frm_single_visible_hover').css('visibility','visible');
780 }else{
781 jQuery(this).children('.frm_single_show_hover').hide(); jQuery(this).children('.frm_single_visible_hover').css('visibility','hidden');
782 }
783 }
784
785 function frmFieldHover(e){
786 if(e.type=='mouseenter'){jQuery(this).children('.frm-show-hover').css('visibility','visible');}
787 else{if(!jQuery(this).hasClass('selected')){jQuery(this).children('.frm-show-hover').css('visibility','hidden');}}
788 }
789
790 function frmClickVis(e){
791 if(jQuery(this).hasClass('selected')) return;
792 jQuery('.frm-show-hover').css('visibility','hidden'); jQuery(this).children('.frm-show-hover').css('visibility','visible');
793 jQuery('.frm-show-click').hide(); jQuery(this).find('.frm-show-click').show();
794 var i=jQuery(this).find('input[name^="item_meta"], select[name^="item_meta"], textarea[name^="item_meta"]')[0];
795 if(jQuery(i).val()) jQuery(this).find('.frm_default_val_icons').show().css('visibility', 'visible');
796 else jQuery(this).find('.frm_default_val_icons').hide().css('visibility', 'hidden');
797 jQuery('li.ui-state-default.selected').removeClass('selected'); jQuery(this).addClass('selected');
798 if(!jQuery(e.target).is('.inplace_field, .frm_ipe_field_label, .frm_ipe_field_desc, .frm_ipe_field_option, .frm_ipe_field_option_key')){ jQuery('.inplace_field').blur();}
799 }
800
801 function frmAddEmailList(form_id){
802 var len=jQuery('input[id^="email_subject_"]:last').attr('id').replace('email_subject_', '');
803 jQuery.ajax({
804 type:"POST",url:ajaxurl,
805 data:"action=frm_add_email_list&list_id="+(parseInt(len)+1)+"&form_id="+form_id,
806 success:function(html){jQuery('#frm_email_add_button').before(html);jQuery('.notification_settings').fadeIn('slow');}
807 });
808 }
809
810 function frmCheckCustomEmail(value,id,key){
811 if(value=='custom'){jQuery('#cust_'+id+'_'+key).css('visibility','visible'); jQuery('#frm_cust_reply_container_'+key).show();}
812 else{
813 jQuery('#cust_'+id+'_'+key).css('visibility','hidden');
814 if(id=='reply_to') var a='reply_to_name'; else var a='reply_to';
815 if(jQuery('#cust_'+a+'_'+key).css('visibility')=='hidden') jQuery('#frm_cust_reply_container_'+key).hide();
816 }
817 }
818
819 function frmSetMenuOffset(){
820 var fields = jQuery('#postbox-container-1 .frm_field_list');
821 if(fields.length){
822 var offset=283;
823 }else{
824 var fields = jQuery('#frm_adv_info');
825 if(fields.length==0) return;
826 var offset=455;
827 }
828
829 var currentOffset = document.documentElement.scrollTop || document.body.scrollTop; // body for Safari
830 if(currentOffset == 0){ fields.removeAttr('style'); return;}
831 if(jQuery('#frm_position_ele').length>0){
832 var eleOffset=jQuery('#frm_position_ele').offset();
833 var offset=eleOffset.top;
834 }
835 var desiredOffset = offset + 2 - currentOffset;
836 if (desiredOffset < 35) desiredOffset = 35;
837 //if (desiredOffset != parseInt(header.style.top))
838 fields.attr('style', 'top:'+desiredOffset + 'px;');
839 }
840
841 function frmDisplayFormSelected(form_id){
842 if (form_id == '') return;
843
844 jQuery.ajax({type:"POST",url:ajaxurl,
845 data:"action=frm_get_cd_tags_box&form_id="+form_id,
846 success:function(html){ jQuery('#frm_adv_info .categorydiv').html(html);}
847 });
848
849 jQuery.ajax({type:"POST",url:ajaxurl,
850 data:"action=frm_get_date_field_select&form_id="+form_id,
851 success:function(html){
852 jQuery('#date_select_container').html(html).show();
853 }
854 });
855 }
856
857 function frmInsertCode(){
858 frmInsertFieldCode(jQuery(this),jQuery(this).data('code'));
859 return false;
860 }
861
862 function frmInsertFieldCode(element,variable){
863 if(typeof(element)=='object'){
864 var element_id=element.closest('div').attr('class').split(' ')[1];
865 if(element.hasClass('frm_noallow')) return;
866 }else{var element_id=element;}
867
868 if(!element_id) var rich=true;
869 else var rich=jQuery('#wp-'+element_id+'-wrap.wp-editor-wrap').length > 0;
870
871 if(element_id.substring(0,11)=='frm_classes')
872 variable=variable+' ';
873 else
874 variable='['+variable+']';
875 if(rich){
876 wpActiveEditor=element_id;
877 send_to_editor(variable);
878 return;
879 }
880 var content_box=jQuery('#'+element_id);
881 if(!content_box)
882 return false;
883
884 if(content_box.hasClass('frm_not_email_to')) var variable=', '+variable;
885 if(variable=='[default-html]' || variable=='[default-plain]'){
886 var p=0;
887 if(variable=='[default-plain]') var p=1;
888 jQuery.ajax({type:"POST",url:ajaxurl,
889 data:"action=frm_get_default_html&form_id="+jQuery('input[name="id"]').val()+'&plain_text='+p,
890 success:function(msg){frmInsertContent(content_box,msg);}
891 });
892 }else{
893 frmInsertContent(content_box,variable);
894 }
895 return false;
896 }
897
898 function frmInsertContent(content_box,variable){
899 if(document.selection){content_box[0].focus();document.selection.createRange().text=variable;
900 }else if(content_box[0].selectionStart){obj=content_box[0];var e=obj.selectionEnd;obj.value=obj.value.substr(0,obj.selectionStart)+variable+obj.value.substr(obj.selectionEnd,obj.value.length);
901 var s=e+variable.length;obj.focus();obj.setSelectionRange(s,s);
902 }else{content_box.val(variable+content_box.val());}
903 content_box.keyup(); //trigger change
904 }
905
906 function frmToggleAllowedShortcodes(id,f){
907 if(typeof(id)=='undefined') var id='';
908 var c=id;
909 if(id !=='' && jQuery('#'+id).attr('class') && id !== 'wpbody-content' && id !== 'content' && id !== 'dyncontent' && id != 'success_msg'){
910 var d=jQuery('#'+id).attr('class').split(' ')[0];
911 if(d=='frm_long_input' || typeof(d)=='undefined') var d='';
912 else var id=jQuery.trim(d);
913 var c=c+' '+d;
914 }
915 jQuery('#frm-insert-fields-box,#frm-conditionals,#frm-adv-info-tab,#frm-html-tags,#frm-layout-classes,#frm-dynamic-values').removeClass().addClass('tabs-panel '+c);
916 var a=['content','wpbody-content','dyncontent','success_url','success_msg','edit_msg','frm_dyncontent','frm_not_email_message',
917 'frm_not_email_subject'];
918 var b=['before_content','after_content','frm_not_email_to','after_html','before_html','submit_html','field_custom_html',
919 'dyn_default_value', 'frm_classes'];
920 if(jQuery.inArray(id, a) >= 0){
921 jQuery('.frm_code_list a').removeClass('frm_noallow').addClass('frm_allow');
922 jQuery('.frm_code_list a.hide_'+id).addClass('frm_noallow').removeClass('frm_allow');
923 }else if(jQuery.inArray(id, b) >= 0){
924 jQuery('.frm_code_list a').not('.show_'+id).addClass('frm_noallow').removeClass('frm_allow');
925 jQuery('.frm_code_list a.show_'+id).removeClass('frm_noallow').addClass('frm_allow');
926 }else{
927 jQuery('.frm_code_list a').addClass('frm_noallow').removeClass('frm_allow');
928 }
929
930 //Automatically select a tab
931 if(id=='dyn_default_value'){
932 jQuery('#frm_dynamic_values_tab').click();
933 }else if(id=='frm_classes'){
934 jQuery('#frm_layout_classes_tab').click();
935 }else if(jQuery('.frm_form_builder').length &&
936 (f=='focusin' || jQuery('#frm-dynamic-values').is(':visible') || jQuery('#frm-layout-classes').is(':visible'))){
937 jQuery('#frm_insert_fields_tab').click();
938 }
939 }
940
941 function frmToggleKeyID(switch_to){
942 jQuery('.frm_code_list .frmids, .frm_code_list .frmkeys').hide();
943 jQuery('.frm_code_list .'+switch_to).show();
944 jQuery('.frmids, .frmkeys').removeClass('current');
945 jQuery('.'+switch_to).addClass('current');
946 }
947
948 function frm_add_postmeta_row(){
949 var id=jQuery('input[name="id"]').val();
950 if(jQuery('.frm_postmeta_row').length){
951 var name=jQuery('.frm_postmeta_row:last').attr('id').replace('frm_postmeta_', '');
952 if(jQuery.isNumeric(name))
953 var meta_name=1+parseInt(name);
954 else
955 var meta_name=1;
956 }else{
957 var meta_name=0;
958 }
959 jQuery.ajax({
960 type:"POST",url:ajaxurl,
961 data:"action=frm_add_postmeta_row&form_id="+id+"&meta_name="+meta_name,
962 success:function(html){
963 jQuery('#frm_postmeta_rows').append(html);
964 jQuery('.frm_toggle_cf_opts').not(':last').hide();
965 jQuery('.frm_add_postmeta_row.button').hide();
966 }
967 });
968 }
969
970 function frm_add_posttax_row(){
971 var id=jQuery('input[name="id"]').val();
972 var post_type=jQuery('select[name="options[post_type]"]').val();
973 var tax_key=frmGetMetaValue('frm_posttax_', jQuery('#frm_posttax_rows > div').size());
974 jQuery.ajax({
975 type:"POST",url:ajaxurl,
976 data:"action=frm_add_posttax_row&form_id="+id+"&post_type="+post_type+"&tax_key="+tax_key,
977 success:function(html){
978 jQuery('#frm_posttax_rows').append(html).find('.frm_exclude_cat_list').each(function(){frmShowLevCheck(jQuery(this));});
979 }
980 });
981 }
982
983 function frmChangePosttaxRow(){
984 if(!jQuery(this).closest('.frm_posttax_row').find('.frm_posttax_opt_list').length)
985 return;
986 jQuery(this).closest('.frm_posttax_row').find('.frm_posttax_opt_list').html('<div class="spinner frm_spinner" style="display:block"></div>');
987 var post_type=jQuery('select[name="options[post_type]"]').val();
988 var tax_key=jQuery(this).closest('.frm_posttax_row').attr('id').replace('frm_posttax_', '');
989 var meta_name=jQuery(this).val();
990 var show_exclude=jQuery('#'+tax_key+'_show_exclude').is(':checked') ? 1 : 0;
991 var field_id=jQuery('select[name="options[post_category]['+tax_key+'][field_id]"]').val();
992 var id=jQuery('input[name="id"]').val();
993 jQuery.ajax({
994 type:"POST",url:ajaxurl,
995 data:"action=frm_add_posttax_row&form_id="+id+"&post_type="+post_type+"&tax_key="+tax_key+"&meta_name="+meta_name+"&field_id="+field_id+'&show_exclude='+show_exclude,
996 success:function(html){
997 jQuery('#frm_posttax_'+tax_key).replaceWith(html);
998 if(jQuery('#frm_posttax_'+tax_key).find('.frm_exclude_cat_list').length){
999 var cat = jQuery('#frm_posttax_'+tax_key).find('.frm_exclude_cat_list');
1000 frmShowLevCheck(cat)
1001 }
1002 }
1003 });
1004 }
1005
1006 function frmShowLevCheck(cat){
1007 var frm_lev=cat.find('.frm_catlevel_2');
1008 if(frm_lev.length) cat.find('.check_lev1_label, .check_lev2_label').show();
1009 var frm_lev=cat.find('.frm_catlevel_3'); if(frm_lev.length) cat.find('.check_lev3_label').show();
1010 var frm_lev=cat.find('.frm_catlevel_4'); if(frm_lev.length) cat.find('.check_lev4_label').show();
1011 }
1012
1013 function frm_toggle_cf_opts(){
1014 jQuery(this).closest('.frm_postmeta_row').find('.frm_enternew, .frm_cancelnew').toggle();
1015 jQuery(this).closest('.frm_postmeta_row').find('input.frm_enternew, select.frm_cancelnew').val('');
1016 return false;
1017 }
1018
1019 function frm_add_order_row(){
1020 var form_id=jQuery('#form_id').val();
1021 if(jQuery('#frm_order_options .frm_logic_rows div:last').length>0)
1022 var l=jQuery('#frm_order_options .frm_logic_rows div:last').attr('id').replace('frm_order_field_', '');
1023 else
1024 var l=0;
1025 jQuery.ajax({type:"POST",url:ajaxurl,
1026 data:"action=frm_add_order_row&form_id="+form_id+"&order_key="+(parseInt(l)+1),
1027 success:function(html){jQuery('#frm_order_options .frm_logic_rows').append(html).prev('.frm_add_order_row').hide();}
1028 });
1029 }
1030
1031 function frm_insert_where_options(value,where_key){
1032 jQuery.ajax({
1033 type:"POST",url:ajaxurl,
1034 data:"action=frm_add_where_options&where_key="+where_key+"&field_id="+value,
1035 success: function(html){jQuery('#where_field_options_'+where_key).html(html);}
1036 });
1037 }
1038
1039 function frm_add_where_row(){
1040 var form_id=jQuery('#form_id').val();
1041 if(jQuery('#frm_where_options .frm_logic_rows div:last').length){
1042 var l=jQuery('#frm_where_options .frm_logic_rows div:last').attr('id').replace('frm_where_field_', '');
1043 }else{
1044 var l=0;
1045 }
1046 jQuery.ajax({type:"POST",url:ajaxurl,
1047 data:"action=frm_add_where_row&form_id="+form_id+"&where_key="+(parseInt(l)+1),
1048 success:function(html){jQuery('#frm_where_options .frm_logic_rows').append(html).show().prev('.frm_add_where_row').hide();}
1049 });
1050 }
1051
1052 function frm_show_loc(val){
1053 if(val=='none') jQuery('#post_select_container').hide();
1054 else jQuery('#post_select_container').show();
1055 }
1056
1057 function frm_show_count(value){
1058 if(value=='dynamic' || value=='calendar'){ jQuery('.hide_dyncontent').show();}
1059 else{jQuery('.hide_dyncontent').hide();}
1060 if(value=='one'){jQuery('.limit_container').hide();}
1061 else{jQuery('.limit_container').show();}
1062 if(value=='calendar'){
1063 jQuery('.limit_container').hide();
1064 jQuery('#date_select_container').show();
1065 }else{
1066 jQuery('#date_select_container').hide();
1067 }
1068 }
1069
1070 function frmGetFieldSelection(form_id,field_id){
1071 if(form_id){
1072 jQuery.ajax({type:"POST",url:ajaxurl,
1073 data:"action=frm_get_field_selection&field_id="+field_id+"&form_id="+form_id,
1074 success:function(msg){ jQuery("#frm_show_selected_fields_"+field_id).html(msg);}
1075 });
1076 }
1077 };
1078
1079 function frmShowPostOpts(post_field,field_id){
1080 jQuery(".frm_custom_field_"+field_id+",.frm_exclude_cat_"+field_id).hide();
1081 if(post_field){
1082 if(post_field=='post_custom'){
1083 jQuery(".frm_custom_field_"+field_id).fadeIn('slow');
1084 }else if(post_field=='post_category'){
1085 jQuery(".frm_exclude_cat_"+field_id).fadeIn('slow');
1086 //get_cats to display
1087 }
1088 if(post_field!='') jQuery(".frm_post_title").fadeIn('slow');
1089 }
1090 };
1091
1092 function frmCheckDupPost(){
1093 jQuery('select.frm_single_post_field').removeAttr('style');
1094 var t=jQuery(this);
1095 var v=t.val();
1096 if(v=='' || v=='checkbox') return false;
1097 jQuery('select.frm_single_post_field').each(function(){
1098 if(jQuery(this).val() == v && jQuery(this).attr('name')!=t.attr('name')){
1099 jQuery(this).css('border-color', 'red');t.val('');
1100 alert('Oops. You have already used that field.');
1101 return false;
1102 }
1103 });
1104 }
1105
1106 //function to append a new theme stylesheet with the new style changes
1107 function frmUpdateUICSS(locStr){
1108 if(locStr == -1){
1109 jQuery('link.ui-theme').remove();
1110 return false;
1111 }
1112 var cssLink = jQuery('<link href="'+locStr+'" type="text/css" rel="Stylesheet" class="ui-theme" />');
1113 jQuery('head').append(cssLink);
1114
1115 if( jQuery('link.ui-theme').size() > 3)
1116 jQuery('link.ui-theme:first').remove();
1117 }
1118
1119 function frmUpdateCSS(locStr){
1120 jQuery("head").append('<link href="'+ ajaxurl +'?action=frmpro_css&amp;'+ locStr +'" type="text/css" rel="Stylesheet" class="frm-custom-theme"/>');
1121 if( jQuery("link.frm-custom-theme").size() > 3){
1122 jQuery("link.frm-custom-theme:first").remove();
1123 }
1124 }
1125
1126 function frmImportCsv(formID){
1127 if(typeof(__FRMURLVARS)!='undefined') var urlVars=__FRMURLVARS;
1128 else urlVars='';
1129
1130 jQuery.ajax({
1131 type:"POST",url:ajaxurl,
1132 data:"action=frm_import_csv&frm_skip_cookie=1"+urlVars,
1133 success:function(count){
1134 var max = jQuery('.frm_progress_bar').attr('aria-valuemax');
1135 var imported = max - count;
1136 var percent = (imported / max) * 100;
1137 jQuery('.frm_progress_bar').css('width', percent +'%').attr('aria-valuenow', imported);
1138
1139 if(parseInt(count) > 0){
1140 jQuery('.frm_csv_remaining').html(count);
1141 frmImportCsv(formID);
1142 }else{
1143 jQuery('#frm_import_message').html(frm_admin_js.import_complete);
1144 setTimeout(function(){
1145 location.href = '?page=formidable-entries&frm_action=list&form='+formID+'&import-message=1';
1146 }, 2000);
1147 }
1148 }
1149 });
1150 }
1151
1152 function frmSetPosClass(value){
1153 if(value=='none') value='top';
1154 jQuery('.frm_pos_container').removeClass('frm_top_container frm_left_container frm_right_container').addClass('frm_'+value+'_container');
1155 }
1156
1157 function frmGetMetaValue(id, meta_name){
1158 if(jQuery('#'+id+meta_name).length>0) var new_meta=frmGetMetaValue(id,meta_name+1);
1159 else var new_meta=meta_name;
1160 return new_meta;
1161 }
1162
1163 function frm_install_now(){
1164 jQuery('#frm_install_message').html('<div style="line-height:24px;">'+frm_admin_js.updating+'<div class="spinner frm_spinner" style="display:block;"></div></div>');
1165 jQuery.ajax({
1166 type:"POST",url:ajaxurl,data:"action=frm_install",
1167 success:function(msg){jQuery("#frm_install_message").fadeOut("slow");}
1168 });
1169 }
1170
1171 function frm_uninstall_now(){
1172 if(confirm(frm_admin_js.confirm_uninstall)){
1173 jQuery('.frm_uninstall .spinner').show();
1174 jQuery.ajax({
1175 type:"POST",url:ajaxurl,data:"action=frm_uninstall&nonce="+frm_admin_js.nonce,
1176 success:function(msg){jQuery(".frm_uninstall").fadeOut("slow");}
1177 });
1178 }
1179 }
1180
1181 function frm_show_auth_form(){
1182 jQuery('#pro_cred_form,.frm_pro_installed').toggle();
1183 }
1184
1185 function frm_deauthorize(){
1186 if(!confirm(frm_admin_js.deauthorize))
1187 return false;
1188 jQuery('#frm_deauthorize_link').next('.spinner').show();
1189 jQuery.ajax({
1190 type:'POST',url:ajaxurl,data:'action=frm_deauthorize&nonce='+frm_admin_js.nonce,
1191 success:function(msg){
1192 jQuery('#frm_deauthorize_link, .spinner').fadeOut('slow');
1193 frm_show_auth_form();
1194 }
1195 });
1196 return false;
1197 }
1198
1199 function frmValidateExport(e){
1200 e.preventDefault();
1201
1202 if (!jQuery('select[name="frm_export_forms[]"]').val()){
1203 jQuery('select[name="frm_export_forms[]"]').closest('.form-field').addClass('frm_blank_field');
1204 var s = 'stop';
1205 }
1206
1207 if (!jQuery('input[name="type[]"]:checked').val() && jQuery('input[name="type[]"]').attr('type') == 'checkbox'){
1208 jQuery('input[name="type[]"]').closest('.form-field').addClass('frm_blank_field');
1209 var s = 'stop';
1210 }
1211
1212 if ( s == 'stop' ){
1213 return false;
1214 }
1215
1216 e.stopPropagation();
1217 this.submit();
1218 }
1219
1220 function frmRemoveExportError(){
1221 var t = jQuery(this).closest('.frm_blank_field');
1222 if (typeof(t) == 'undefined'){
1223 return;
1224 }
1225
1226 if(jQuery(this).attr('name') == 'type[]' && jQuery('input[name="type[]"]:checked').val()){
1227 t.removeClass('frm_blank_field');
1228 }else if(jQuery(this).attr('name') == 'frm_export_forms[]' && jQuery(this).val()){
1229 t.removeClass('frm_blank_field');
1230 }
1231
1232 }
1233
1234 function frmAddRemoveExportError(){
1235 if (jQuery('select[name="frm_export_forms[]"]').val()){
1236 jQuery('select[name="frm_export_forms[]"]').closest('.form-field').removeClass('frm_blank_field');
1237 }else{
1238 jQuery('select[name="frm_export_forms[]"]').closest('.form-field').addClass('frm_blank_field');
1239 var s = 'stop';
1240 }
1241
1242 if (jQuery('input[name="type[]"]:checked').val()){
1243 jQuery('input[name="type[]"]').closest('.form-field').removeClass('frm_blank_field');
1244 }else{
1245 jQuery('input[name="type[]"]').closest('.form-field').addClass('frm_blank_field');
1246 var s = 'stop';
1247 }
1248
1249 return s;
1250 }
1251
1252 function frmCheckCSVExtension(){
1253 var f=jQuery(this).val();
1254 var re = /\..+$/;
1255 if (f.match(re) == '.csv' || f.match(re) == '.CSV')
1256 jQuery('.show_csv').fadeIn();
1257 else
1258 jQuery('.show_csv').fadeOut();
1259 }
1260
1261 function frmCheckExportTypes(){
1262 var s=jQuery(this).find(':selected').data('support');
1263 jQuery('input[name="type[]"]').each(function(){
1264 if(s.indexOf(jQuery(this).val()) >= 0){
1265 jQuery(this).prop('disabled', false);
1266 }else{
1267 jQuery(this).prop('disabled', true);
1268 }
1269 });
1270
1271 if(jQuery(this).val() == 'csv'){
1272 jQuery('.csv_opts').show();
1273 }else{
1274 jQuery('.csv_opts').hide();
1275 }
1276
1277 var c=jQuery(this).find(':selected').data('count');
1278 if(c == 'single'){
1279 jQuery('select[name="frm_export_forms[]"]').prop('multiple', false).next('.howto').hide();
1280 }else{
1281 jQuery('select[name="frm_export_forms[]"]').prop('multiple', true).next('.howto').show();
1282 }
1283 }
1284