OwlCyberSecurity - MANAGER
Edit File: form-save-progress.js
(()=>{"use strict";function t(t){return function(t){if(Array.isArray(t))return e(t)}(t)||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(t)||function(t,a){if(!t)return;if("string"==typeof t)return e(t,a);var n=Object.prototype.toString.call(t).slice(8,-1);"Object"===n&&t.constructor&&(n=t.constructor.name);if("Map"===n||"Set"===n)return Array.from(t);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return e(t,a)}(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function e(t,e){(null==e||e>t.length)&&(e=t.length);for(var a=0,n=new Array(e);a<e;a++)n[a]=t[a];return n}function a(e,a,n,f){var i=0,r="";n.stepAnimationDuration=parseInt(n.stepAnimationDuration);var s="yes"==a.find(".ff-step-container").attr("data-enable_step_data_persistency"),o=!1;s&&(o="yes"==a.find(".ff-step-container").attr("data-enable_step_page_resume"));var l=!!window.fluentFormVars.is_rtl,c=!1,d=function(){return window.fluentFormApp(a)},u=function(t){var a=t.response,f=t.step_completed,i=[];if(jQuery.each(a,(function(t,a){if(a){var f=Object.prototype.toString.call(a);if("[object Object]"===f){var r=jQuery("[data-name=".concat(t,"]"));if(r.length&&"tabular-element"===r.attr("data-type"))jQuery.each(a,(function(a,n){var f=jQuery('[name="'.concat(t,"[").concat(a,']\\[\\]"]'));f.length||(f=jQuery('[name="'.concat(t,"[").concat(a,']"]'))),jQuery.each(f,(function(t,a){var f=e(a).val();-1===jQuery.inArray(f,n)&&f!==n||e(a).prop("checked",!0).change()}))}));else if("chained-select"===r.attr("data-type")){var s={meta_key:r.find("select:first").attr("data-meta_key"),form_id:r.closest("form").attr("data-form_id"),action:"fluentform_get_chained_select_options",filter_options:"all",keys:a};jQuery.getJSON(n.ajaxUrl,s).then((function(t){jQuery.each(t,(function(t,e){var n=r.find("select[data-key='".concat(t,"']"));0!=n.attr("data-index")&&jQuery.each(e,(function(t,e){n.append(jQuery("<option />",{value:e,text:e}))})),n.attr("disabled",!1).val(a[t])}))}))}else jQuery.each(a,(function(e,a){jQuery('[name="'.concat(t,"[").concat(e,']"]')).val(a).change()}))}else if("[object Array]"===f){var o=jQuery("[name=".concat(t,"]"));if("file"==(o=(o=o.length?o:jQuery("[data-name=".concat(t,"]"))).length?o:jQuery("[name=".concat(t,"\\[\\]]"))).attr("type"))g(o,a);else if(o.prop("multiple"))if(e.isFunction(window.Choices)){var l=o.data("choicesjs");i.push({handler:l,values:a})}else o.val(a).change();else if("repeater_field"===o.attr("data-type")){var c=o.find("tbody"),d=o.attr("data-name");jQuery.each(a,(function(t,a){0!=t?c.find("tr:last").clone().appendTo(c).find(".ff-el-form-control").each((function(n,f){var i="ffrpt-"+(new Date).getTime()+n;e(f).val(a[n]),e(f).attr({id:i,name:"".concat(d,"[").concat(t,"][]"),value:a[n]}).change()})):c.find("tr:first .ff-el-form-control").each((function(t,n){e(n).val(a[t]).change()}))}))}else o.each((function(t,n){-1!=jQuery.inArray(e(n).val(),a)&&e(n).prop("checked",!0).change()}))}else{var u=jQuery("[name=".concat(t,"]"));if("radio"===u.prop("type")||"checkbox"===u.prop("type"))jQuery("[name=".concat(t,'][value="').concat(a,'"]')).prop("checked",!0).change();else{var p=u.closest(".ff-el-group").find(".fluentform-signature-pad");if(p.length){var v=p[0].getContext("2d"),_=new Image;_.src=a,_.onload=function(){v.drawImage(_,0,0)}}u.val(a).change()}}}})),i.length>0)for(var r=0;r<i.length;r++)i[r].handler.setValue(i[r].values).change();c=!0,o&&m(f,n.stepAnimationDuration,!0),c=!1},p=function(t,a){0!==t.length&&(e.each(t,(function(t,a){e(a).attr("data-step-number",t)})),t.on("click",(function(t){var f=d(),i=e(this),r=0;try{var s=i.data("step-number");if(isNaN(s))return;e.each(a,(function(t,a){if(r=t,t<s){var n=e(a).find(":input").not(":button").filter((function(t,a){return!e(a).closest(".has-conditions").hasClass("ff_excluded")}));n.length&&f.validate(n)}})),m(s,n.stepAnimationDuration,!0)}catch(t){if(!(t instanceof window.ffValidationError))throw t;m(r,n.stepAnimationDuration,!0),f.showErrorMessages(t.messages),f.scrollToFirstError(350)}})))},v=function(t){if(a.find(".ff-el-progress").length){var f=t.totalSteps,i=t.activeStep,r=100/f*(i+1),s=a.find(".ff-el-progress-title li"),o=a.find(".ff-step-header .ff-el-progress-bar"),l=o.find("span");o.css({width:r+"%"}),r?o.append(l.text(parseInt(r)+"%")):l.empty();var c=n.step_text,d=e(s[i]).text();c=c.replace("%activeStep%",i+1).replace("%totalStep%",f).replace("%stepTitle%",d),a.find(".ff-el-progress-status").html(c),s.css("display","none"),e(s[i]).css("display","inline")}},_=function(t){e(document).on("keydown",f+" .fluentform-step > .step-nav button",(function(t){9==t.which&&"next"==e(this).data("action")&&t.preventDefault()})),e(f).on("click",".fluentform-step .step-nav button, .fluentform-step .step-nav img",(function(n){var f=e(this).data("action"),r="next",s=e(this).closest(".fluentform-step"),o=d();if("next"==f){try{var l=s.find(":input").not(":button").filter((function(t,a){return!e(a).closest(".has-conditions").hasClass("ff_excluded")}));l.length&&o.validate(l),i++}catch(n){if(!(n instanceof window.ffValidationError))throw n;return o.showErrorMessages(n.messages),void o.scrollToFirstError(350)}a.trigger("ff_to_next_page",i),jQuery(document).trigger("ff_to_next_page",{step:i,form:a});var c=a.find(".fluentform-step");a.trigger("ff_render_dynamic_smartcodes",e(c[i]))}else i--,r="prev",a.trigger("ff_to_prev_page",i),jQuery(document).trigger("ff_to_prev_page",{step:i,form:a});var u="yes"!=a.find(".ff-step-container").attr("data-disable_auto_focus");m(i,t,u,r)}))},m=function(n,o){var d=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],u=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"next";e("div"+f+"_errors").empty(),i=n;var p=a.find(".ff-step-body"),_=a.find(".ff-step-titles li"),m=a.find(".fluentform-step"),g=m.length;a.offset().top,e("#wpadminbar");m.removeClass("active"),e(m[i]).addClass("active"),_.removeClass("ff_active ff_completed"),e.each(t(Array(i).keys()),(function(t){e(e(_[t])).addClass("ff_completed")})),e(_[i]).addClass("ff_active");var y=function(){if(!window.ff_disable_step_scroll){var t=a.find(".ff_step_start");if(window.ff_scroll_top_offset)var n=window.ff_scroll_top_offset;else n=t.offset().top-20;var f,i,r,s,l;(i=(f=t).offset().top,r=i+f.outerHeight(),s=e(window).scrollTop(),l=s+e(window).height(),r>s&&i<l)&&!window.ff_force_scroll||e("html, body").delay(o).animate({scrollTop:n},0)}},b={left:-100*i+"%"};switch(l&&(b={right:-100*i+"%"}),e(m[i]).closest(".ff-step-container").data("animation_type")){case"slide":p.animate(b,o,(function(){d&&y(),p.css({width:r})}));break;case"fade":p.css({opacity:0}),p.animate(b,o,(function(){d&&y(),p.css({width:r})})),p.animate({opacity:1},o);break;case"slide_down":p.hide(),p.css(b),p.slideDown(o);break;default:p.css(b)}if(s&&!c&!(0===i)&&h(a,i).then((function(t){console.log(t)})),v({activeStep:i,totalSteps:g}),m.last().hasClass("active"))a.find('button[type="submit"]').css("display","inline-block");else if(a.find('button[type="submit"]').css("display","none"),!window.ff_disable_auto_step){var w=0;a.find(".fluentform-step.active .ff_excluded").legth&&(w=50),setTimeout((function(){var t=a.find(".fluentform-step.active"),e=a.find(".fluentform-step.active > div").length-1,n=a.find(".fluentform-step.active > .ff_excluded").length;a.find(".fluentform-step.active > .ff-t-container").length&&(e-=a.find(".fluentform-step.active > .ff-t-container").length,e+=a.find(".fluentform-step.active > .ff-t-container > .ff-t-cell > div").length,n+=a.find(".fluentform-step.active > .ff-t-container > .ff-t-cell > .ff_excluded").length,a.find(".fluentform-step.active > .ff-t-container.ff_excluded").length&&(n-=a.find(".fluentform-step.active > .ff-t-container.ff_excluded").length,n-=a.find(".fluentform-step.active > .ff-t-container.ff_excluded > .ff-t-cell > .ff_excluded").length,n+=a.find(".fluentform-step.active > .ff-t-container.ff_excluded > .ff-t-cell > div").length)),e==n&&t.find(".step-nav button[data-action="+u+"], .step-nav img[data-action="+u+"]").click()}),w)}},h=function(t,a){var f=t.find(":input").filter((function(t,a){return!e(a).closest(".has-conditions").hasClass("ff_excluded")}));f.filter((function(t,a){var n=e(a);return n.parents().hasClass("ff_repeater_table")&&"select"==n.attr("type")&&!n.val()})).prepend("<option selected disabled />");var i=f.serialize();e.each(t.find("[type=file]"),(function(t,a){var n={},f=a.name+"[]";n[f]=[],e(a).closest("div").find(".ff-uploaded-list").find(".ff-upload-preview[data-src]").each((function(t,a){n[f][t]=e(this).data("src")})),e.each(n,(function(t,a){if(a.length){var n={};n[t]=a,i+="&"+e.param(n),!0}}))}));var r={active_step:a,data:i,form_id:t.data("form_id"),action:"fluentform_step_form_save_data"};return jQuery.post(n.ajaxUrl,r)},g=function(t,a){var f=t.closest(".ff-el-input--content").find(".ff-uploaded-list");e.each(a,(function(t,a){var i=e("<div/>",{class:"ff-upload-preview","data-src":a,style:"border: 1px solid rgb(111, 117, 125)"}),r=e("<div/>",{class:"ff-upload-thumb"});r.append(e("<div/>",{class:"ff-upload-preview-img",style:"background-image: url('".concat(y(a),"');")}));var s=e("<div/>",{class:"ff-upload-details"}),o=e("<span/>",{html:n.upload_completed_txt,class:"ff-upload-progress-inline-text ff-inline-block"}),l=e("<div/>",{class:"ff-upload-filename",html:a.substring(a.lastIndexOf("/")+1)}),c=e('\n\t\t\t\t\t\t\t\t\t<div class="ff-upload-progress-inline ff-el-progress">\n\t\t\t\t\t\t\t\t\t\t<div style="width: 100%;" class="ff-el-progress-bar"></div>\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t'),d=e("<span/>",{"data-href":"#",html:"×",class:"ff-upload-remove"}),u=e("<div>",{class:"ff-upload-filesize ff-inline-block",html:""}),p=e("<div>",{class:"ff-upload-error",style:"color:red;"});s.append(l,c,o,u,p,d),i.append(r,s),f.append(i)})),t.trigger("change_remaining",-a.length),t.trigger("change")},y=function(t){var e=t.split(/[#?]/)[0].split(".").pop().trim().toLowerCase();if(-1!=["jpg","jpeg","gif","png"].indexOf(e))return t;var a=document.createElement("canvas");a.width=60,a.height=60,a.style.zIndex=8,a.style.position="absolute",a.style.border="1px solid";var n=a.getContext("2d");return n.fillStyle="rgba(0, 0, 0, 0.2)",n.fillRect(0,0,60,60),n.font="13px Arial",n.fillStyle="white",n.textAlign="center",n.fillText(e,30,30,60),a.toDataURL()};return{init:function(){var t,f,o,l;s&&jQuery(document).ready((function(t){jQuery.getJSON(n.ajaxUrl,{form_id:a.data("form_id"),action:"fluentform_step_form_get_data"}).then((function(t){t&&u(t)}))})),a.find(".fluentform-step:first").find('.step-nav [data-action="prev"]').remove(),t=a.find(".ff-step-body"),f=a.find(".fluentform-step"),o=f.length,l=a.find(".ff-step-titles li"),r=100*o+"%",t.css({width:r}),f.css({width:100/o+"%"}),e(f[i]).addClass("active"),e(l[i]).addClass("active"),f.length&&!f.last().hasClass("active")&&a.find('button[type="submit"]').css("display","none"),v({activeStep:i,totalSteps:o}),_(n.stepAnimationDuration),p(l,f),function(){function t(t){if(1==t.closest(".fluentform-step.active").find(".ff-el-group:not(.ff_excluded):not(.ff-custom_html)").length)if(t.closest(".fluentform-step.active").find(".ff_excluded").length){var e=window.ffTransitionTimeOut||400;setTimeout((function(){t.closest(".fluentform-step.active").find(".ff-btn-next").trigger("click")}),e)}else t.closest(".fluentform-step.active").find(".ff-btn-next").trigger("click")}"yes"==a.find(".ff-step-container").attr("data-enable_auto_slider")&&(a.find(".ff-el-form-check-radio,.ff-el-net-label, .ff-el-ratings label").on("click",(function(){t(e(this))})),a.find("select").on("change",(function(){t(e(this))})))}()},updateSlider:m,populateFormDataAndSetActiveStep:u}}var n;(n=jQuery)(document.body).on("fluentform_init",(function(t,e,f){var i="."+f.form_instance,r=-1,s="no";if(n(i).hasClass("ff-form-has-save-progress")){n(i).hasClass("ff-form-has-steps")&&(e.on("ff_to_next_page",(function(t,e){s=e})),e.on("ff_to_prev_page",(function(t,e){s=e}))),n(i).on("click",".ff-btn-save-progress",(function(t){var a=this;t.preventDefault();var f=n(this);f.addClass("ff-working");var i=e.find(":input").filter((function(t,e){return!n(e).closest(".has-conditions").hasClass("ff_excluded")}));i.filter((function(t,e){var a=n(e);return a.parents().hasClass("ff_repeater_table")&&"select"==a.attr("type")&&!a.val()})).prepend("<option selected disabled />");var o=i.serialize();n.each(e.find("[type=file]"),(function(t,e){var a={},f=e.name+"[]";a[f]=[],n(e).closest("div").find(".ff-uploaded-list").find(".ff-upload-preview[data-src]").each((function(t,e){a[f][t]=n(this).data("src")})),n.each(a,(function(t,e){if(e.length){var a={};a[t]=e,o+="&"+n.param(a)}}))}));var l={source_url:window.form_state_save_vars.source_url,action:"fluentform_save_form_progress_with_link",data:o,form_id:e.data("form_id"),hash:r,active_step:s,nonce:window.form_state_save_vars.nonce},c=l.form_id+"_save_progress_msg",d="#"+c;jQuery.post(fluentFormVars.ajaxUrl,l).then((function(t){if(t){var i;r=t.data.hash;var s=e.find(".ff-saved-state-link");if(s.length)return void s.find("input").val(t.data.saved_url);""!=(null===(i=t.data)||void 0===i?void 0:i.message)&&(n(d).length&&n(d).slideUp("fast"),n("<div/>",{id:c,class:"ff-message-success ff-el-group"}).html(t.data.message).insertBefore(f.closest(".ff-el-group")));var o=window.form_state_save_vars.copy_button||"Copy",l='<div class="ff-el-input--content"><div class="ff_input-group"><input readonly value="'.concat(t.data.saved_url,'" class="ff-el-form-control" >\n <div class="ff_input-group-append">\n <button class="ff-btn ff-btn-md ff_btn_style ff_btn_copy_link ff_input-group-text">\n ').concat(o,"\n </button></div></div></div>"),u=n("<div/>",{class:"ff-el-group ff-saved-state-input ff-saved-state-link ff-hide-group",html:l});n(a).closest(".ff-el-group").after(u),u.fadeIn();var p=window.form_state_save_vars.email_placeholder_str||"Your Email Here",v=window.form_state_save_vars.email_button||"Email";if(n(a).hasClass("ff_resume_email_enabled")){var _='<div class="ff-el-input--content"><div class="ff_input-group"><input type="email" class="ff-el-form-control" placeholder="'.concat(p,'" class="ff-el-form-control">\n <div class="ff_input-group-append">\n <button class="ff-btn ff-btn-md ff_btn_style ff_btn_is_email ff_input-group-text">\n ').concat(v,"\n </button></div></div></div>"),m=n("<div/>",{class:"ff-el-group ff-saved-state-input ff-email-address ff-hide-group",html:_});n(u).after(m),m.fadeIn()}}})).fail((function(t){n(d).length&&n(d).slideUp("fast"),n("<div/>",{id:c,class:"ff-message-success ff-el-group text-danger"}).html(t.responseJSON.data.message).insertBefore(f.closest(".ff-el-group"))})).always((function(){f.parent().hide()}))})),n(i).on("click",".ff_btn_copy_link",(function(t){t.preventDefault();var e=n(this).closest(".ff-el-input--content").find(".ff-el-form-control").val();navigator.clipboard.writeText(e);var a=window.form_state_save_vars.copy_success_button||"Copied";n(this).html("".concat(a))})),n(i).on("click",".ff_btn_is_email",(function(t){t.preventDefault();var a=n(this).closest(".ff-el-group"),f=n(this).closest(".ff-email-address").find("input").val();n(".ff-email-address").find("input").val("");var i=n(".ff-saved-state-link").find("input").val(),s={source_url:window.form_state_save_vars.source_url,action:"fluentform_email_progress_link",form_id:e.data("form_id"),to_email:f,link:i,hash:r,nonce:window.form_state_save_vars.nonce},o=s.form_id+"_save_progress_email_response",l="#"+o;jQuery.post(fluentFormVars.ajaxUrl,s).then((function(t){t&&(a.removeClass("ff-el-is-error"),n(l).length&&n(l).slideUp("fast"),n("<div/>",{id:o,class:"ff-message-success ff-el-group"}).html(t.data.response).insertAfter(a))})).fail((function(t){t&&(a.addClass("ff-el-is-error"),n(l).length&&n(l).slideUp("fast"),n("<div/>",{id:o,class:"ff-message-success ff-el-group text-danger"}).html(t.responseJSON.data.Error).insertAfter(a))}))}));var o=!1;void 0!==window.form_state_save_vars&&(o=window.form_state_save_vars.key),o&&(e.append('<input type="hidden" value="'.concat(o,'" class="__fluent_state_hash" name="__fluent_state_hash"/>')),jQuery.getJSON(fluentFormVars.ajaxUrl,{form_id:e.data("form_id"),action:"fluentform_get_form_state",hash:o,nonce:window.form_state_save_vars.nonce}).then((function(t){t&&a(n,e,window.fluentFormVars,i).populateFormDataAndSetActiveStep(t)})))}}))})();