var ccmFormidableAddressStates="",ccmFormidableAddressStatesToCountries="",ccmFormidableTranslate=function(e,t){return I18N_FF&&I18N_FF[e]&&I18N_FF[e].replace("%s",t)||e};ccmFormidableUpdateDependency=function(e,arguments){var t=$('[name="'+e+'"]');if(t.length||(t=$('[name^="'+e+'["]')),t.length||(t=$('[id="'+e+'"]')),t.length<=0)return!1;for(var a=t.get(0).tagName.toLowerCase(),s=t.attr("type"),n=0;n<arguments.length;n++)switch(arguments[n][0]){case"disable":t.attr("disabled",!0);break;case"enable":t.attr("disabled",!1);break;case"show":t.closest(".element").length>0?t.closest(".element").slideDown():t.slideDown();break;case"hide":t.closest(".element").length>0?t.closest(".element").slideUp():t.slideUp();break;case"value":if("input"==a||"textarea"==a||"select"==a)if("checkbox"==s||"radio"==s){var i=arguments[n][1];t.each((function(e,t){$(t).val()==i&&$(t).attr("checked",!1).trigger("click")}))}else t.val(arguments[n][1]).trigger("change");break;case"class":t.removeClass(arguments[n][1]),"add"==arguments[n][2]&&t.addClass(arguments[n][1])}},function(e){e.fn.formidable=function(t){t=e.extend({error_messages_on_top:!1,error_messages_on_top_class:"alert alert-danger",warning_messages_class:"alert alert-warning",error_messages_beneath_field:!0,error_messages_beneath_field_class:"text-danger error",success_messages_class:"alert alert-success",remove_form_on_success:!0},t);var a=this,s=e('input[id="formID"]',a).val(),n=e("#formidable_container_"+s);if(!a.length)return!1;var i=function(){c(),o(),d(),m(),l(),e('form[name="formidable_form"], input[type="submit"], input[type="button"]',a).on("click touchstart",(function(t){t.preventDefault(),r(e(this).attr("id"))})),e('input:not([type="file"]), textarea, select',a).on("keyup, keydown, change",(function(){f(e(this))})),e('input[type="checkbox"], input[type="radio"]',a).on("click touchstart",(function(){f(e(this))})),e('input[type="radio"]',a).on("click touchstart",(function(){e('input[name="'+e(this).attr("name")+'"]').not(e(this)).trigger("deselect")})),e.fn.addPlaceholder&&e("input[placeholder], textarea[placeholder]",a).addPlaceholder(),"undefined"!=typeof ccmFormidableAddressStatesTextList&&(ccmFormidableAddressStates=ccmFormidableAddressStatesTextList.split("|")),e("select.country_select",a).each((function(){y(e(this).data("name"))})),e('input[name="ccmCaptchaCode"]',a).attr("id","ccmCaptchaCode")},r=function(s){e('input[id="action"]',a).remove(),a.append(e("<input>").attr({name:"action",id:"action",value:s,type:"hidden"}));var n=a.serialize();return e.ajax({type:"POST",url:a.attr("action"),data:n,dataType:"json",beforeSend:function(){u(),v(),h()},success:function(s){if(s.message&&s.message.length>0)v(s.message,"warning");else if(s.errors&&s.errors.length>0){var n=[];e.each(s.errors,(function(s,i){if(t.error_messages_beneath_field&&(eObj=e('[id="'+i.handle+'"],[name="'+i.handle+'[]"],[name^="'+i.handle+'["]:last-child',a).eq(0),eObj.length>0)){e('[id="'+i.handle+'"],[id="'+i.handle+'_confirm"],[name="'+i.handle+'[]"],[name^="'+i.handle+'["]',a).addClass("error");var r=e("<span>").addClass(t.error_messages_beneath_field_class).text(i.message);e(eObj).closest("div.input").append(r.css("opacity",0).animate({opacity:1},500))}n.push(i.message)})),v(n,"error"),_(),t.errorCallback&&jQuery.isFunction(t.errorCallback)&&t.errorCallback.call(a,s)}else(s.success||s.redirect)&&t.successCallback&&jQuery.isFunction(t.successCallback)&&t.successCallback.call(a,s);s.redirect&&(window.location.href=s.redirect),s.success&&(v(s.success,"success"),t.remove_form_on_success&&a.remove()),s.clear&&(t.remove_form_on_success||(a.get(0).reset(),i())),u(),b()}}),!1},o=function(){var t=screen.width+"x"+screen.height;e('input[id="resolution"]',a).val(t)},c=function(){e.fn.tooltip&&e('[data-toggle="tooltip"]').tooltip()},l=function(){var t=e("<input>").attr({type:"hidden",name:"emailaddress",id:"emailaddress",value:""}).css({display:"none"});a.append(t)},d=function(){e(".counter",a).closest(".element").each((function(){if(element=e(this),element.find(".counter_disabled").length>0)element.find(".counter").parent().remove();else{var t=element.find('input[type="checkbox"], select').eq(0);t.is("input")?element.find('input[type="checkbox"]').on("click",(function(){p(e(this))})):t.is("select")&&t.on("click",(function(){p(e(this))})),p(element)}}))},p=function(t){var a,s=t.closest(".element"),n=s.find(".counter"),i=n.attr("type"),r=n.attr("max"),o=e("span",n);if((a=s.find('input[type="text"], input[type="password"], input[type="number"], input[type="url"], input[type="tel"], textarea').not('[name$="_other"]').eq(0)).is("input")||a.is("textarea"))return a.simplyCountable({counter:o,countType:i,maxCount:r,strictMax:!0}),!1;if((a=s.find('input[type="checkbox"]').eq(0)).is("input")){var c=s.find(":checked").length;return o.text(r-c),r==c?s.find('input[type="checkbox"]:not(:checked)').attr("disabled",!0):s.find('input[type="checkbox"]').attr("disabled",!1),!1}if((a=s.find("select").eq(0)).is("select")){c=s.find(":selected").length;return o.text(r-c),r==c?s.find("select option:not(:selected)").attr("disabled",!0):s.find("select option").attr("disabled",!1),!1}},u=function(t){t||(t=!1);var s=e('input[type="submit"]',a),n=e('input[type="button"]',a),i=e(".please_wait_loader",a);if(s.hasClass("please_wait")){if(t)return;s.val(s.attr("data-value")).attr({disabled:!1}).removeClass("please_wait"),n.attr({disabled:!1}).removeClass("please_wait"),i.hide()}else s.attr({"data-value":s.val(),disabled:!0,value:ccmFormidableTranslate("Please wait...")}).addClass("please_wait"),n.attr({disabled:!0}).addClass("please_wait"),i.css({display:"inline-block"})},m=function(){e("select",a).find('option[value="option_other"]:selected').each((function(){e(this).closest(".element").find("div.option_other").slideDown()})),e("select",a).change((function(){e(this).find('option[value="option_other"]:selected').length>0?e(this).closest(".element").find("div.option_other").slideDown():e(this).closest(".element").find("div.option_other").slideUp()})),e('input[value="option_other"]:checked',a).each((function(){e(this).closest(".element").find("div.option_other").slideDown()})),e("input[type=radio]",a).click((function(){"option_other"==e(this).val()?e(this).closest(".element").find("div.option_other").slideDown():e(this).closest(".element").find("div.option_other").slideUp()})),e('input[type="checkbox"]',a).click((function(){var t=!0;e(this).closest(".element").find('input[type="checkbox"]:checked').each((function(){"option_other"==e(this).val()&&(t=!1)})),t?e(this).closest(".element").find("div.option_other").slideUp():e(this).closest(".element").find("div.option_other").slideDown()}))},h=function(){e("span.error",a).css("opacity",1).animate({opacity:0},500,(function(){e(this).remove()})),e(".error:not(span)",a).removeClass("error")},f=function(t){t.removeClass("error").closest(".element").find("span.error").css("opacity",1).animate({opacity:0},500,(function(){e(this).remove()}))},v=function(n,i){var r=e('div[id="formidable_message_'+s+'"]');if(r.length<=0&&(r=a.before(e("<div>").attr("id","formidable_message_"+s))),void 0!==n&&n.length>0){if("object"==typeof n){var o=e("<div>");e.each(n,(function(t,a){o.append(e("<div>").html(a))})),n=o.html()}"success"==i?r.addClass(t.success_messages_class).removeClass("hide"):"warning"==i?r.addClass(t.warning_messages_class).removeClass("hide"):"error"==i&&t.error_messages_on_top&&r.addClass(t.error_messages_on_top_class).removeClass("hide"),r.html(n)}else r.removeAttr("class").addClass("formidable_message hide").html("")},_=function(){var t=e("img.ccm-captcha-image",a);t.length>0&&t.trigger("click"),e("input[name=ccmCaptchaCode]",a).val("")},b=function(){if(n.length>0&&n.height()>0){var t=e(window).height(),a=e(window).scrollTop(),s=n.position().top,i=n.height();(s<a||a+t<s+i)&&e("html, body").animate({scrollTop:n.offset().top},"slow")}},g=function(t,s){var n=e('select[id="'+t+'[province]"]',a),i=e('input[id="'+t+'[province]"]',a),r=!1;if(n.html(""),ccmFormidableAddressStates){for(j=0;j<ccmFormidableAddressStates.length;j++){var o=ccmFormidableAddressStates[j].split(":");e.trim(o[0])==s&&(r||(r=!0,i.attr("name","inactive_"+i.attr("ccm-attribute-address-field-name")),i.hide(),n.append('<option value="">'+ccmFormidableTranslate("Choose State/Province")+"</option>")),n.show(),n.attr("name",i.attr("ccm-attribute-address-field-name")),n.append('<option value="'+e.trim(o[1])+'">'+e.trim(o[2])+"</option>"))}""!=n.attr("ccm-passed-value")&&e((function(){n.find('option[value="'+n.attr("ccm-passed-value")+'"]').attr("selected",!0)}))}r||(n.attr("name","inactive_"+i.attr("ccm-attribute-address-field-name")),n.hide(),i.show(),i.attr("name",i.attr("ccm-attribute-address-field-name")))},y=function(t){var s=e('select[id="'+t+'[country]"]',a);s.change((function(){var a=e(this).val();g(t,a)})),""!=s.attr("ccm-passed-value")&&e((function(){s.find('option[value="'+s.attr("ccm-passed-value")+'"]').attr("selected",!0),g(t,s.attr("ccm-passed-value"));var a=e('select[id="'+t+'[province]"]');""!=a.attr("ccm-passed-value")&&a.find('option[value="'+a.attr("ccm-passed-value")+'"]').attr("selected",!0)})),g(t,"")};return i(),this}}(jQuery);