| 1 |
jQuery(function(e){let i;new Vue({el:"#acym__forms",data:()=>({form:acym_helper.parseJson(e("#acym__form__structure").val()),menuActive:"settings",loading:!0,noReloadingArrayFields:["display_languages","pages"],noReloading:["display_languages","pages","name","active","settings.display.display_action","settings.display.delay","settings.display.scroll","settings.cookie.cookie_expiration","settings.redirection.after_subscription","settings.redirection.confirmation_message"],oldForm:{}}),mounted(){this.oldForm=JSON.parse(JSON.stringify(this.form)),e("#acym__forms__preview__content").on("load",()=>{this.getFormRender(),this.disableClickIframe()}),acym_helperSwitch.setSwitchFieldsGlobal(),acym_helperTooltip.setTooltip()},computed:{isMenuSettingsActive(){return"settings"===this.menuActive},imageText(){return ACYM_JS_TXT[""===this.form.settings.image.url?"ACYM_SELECT":"ACYM_CHANGE"]}},methods:{changeMenuActive(e){this.menuActive=e},selectPosition(e){this.form.settings.style.position=e},save(i){if(""!==this.form.name)return this.loading=!0,this.form.active=e('[name="form[active]"]').val(),e.ajax({type:"POST",url:ACYM_AJAX_URL+"&ctrl=forms&task=saveAjax",dataType:"json",data:{form:this.form}}).then(t=>{if(this.loading=!1,t.error)return acym_helperNotification.addNotification(t.message,"error"),!1;i?window.location.href=e("#acym_form").attr("action")+"&task=listing":(acym_helperNotification.addNotification(t.message,"info",!0),this.form.id=t.data.id,e("#acym__form__structure").val(t.data.id))});alert(ACYM_JS_TXT.ACYM_PLEASE_FILL_FORM_NAME)},disableClickIframe(){let i=e("#acym__forms__preview__content");i.contents().find("#acym__forms__edit_live__preview").remove(),i.contents().find("body").prepend("<style>\n * {pointer-events: none !important;}\n </style>")},fillIframe(i){let t=e("#acym__forms__preview__content");i=`<div id="acym__forms__edit_live__preview">${i}</div>`,t.contents().find("#acym__forms__edit_live__preview").remove(),t.contents().find("body").prepend(i)},getFormRender(){return this.loading=!0,e.ajax({type:"POST",url:ACYM_AJAX_URL+"&ctrl=forms&task=updateFormPreview",dataType:"json",data:{form:this.form}}).then(e=>{if(this.loading=!1,e.error)return acym_helperNotification.addNotification(e.message,"error"),!1;this.fillIframe(e.data.html)})},cleanValues(){void 0!==this.form.settings.display&&(this.form.settings.display.scroll>100&&(this.form.settings.display.scroll=100),this.form.settings.display.scroll<0&&(this.form.settings.display.scroll=0))}},watch:{form:{handler(){e(".acym__forms__menu__container").off("scroll"),clearTimeout(i),this.cleanValues();let t=!1;for(let e=0;e<this.noReloading.length;e++)if(-1===this.noReloading[e].indexOf("."))this.noReloadingArrayFields.includes(this.noReloading[e])?acym_helper.sameArrays(this.form[this.noReloading[e]],this.oldForm[this.noReloading[e]])||(t=!0):this.form[this.noReloading[e]]!==this.oldForm[this.noReloading[e]]&&(t=!0);else{let i=this.noReloading[e].split(".");this.form[i[0]][i[1]][i[2]]!==this.oldForm[i[0]][i[1]][i[2]]&&(t=!0)}this.oldForm=JSON.parse(JSON.stringify(this.form)),t||(this.loading=!0,i=setTimeout(()=>{this.getFormRender()},1e3))},deep:!0}}})}); |