cp.scripts.js.go 3.3 KB

123
  1. package assets
  2. var CpScriptsJs = []byte(`!function(window,$){var fave=function(window,$){var FormDataWasChanged=!1;function GetModalAlertTmpl(a,e,t){return'<div class="alert alert-'+(t?"danger":"success")+' alert-dismissible fade show" role="alert"><strong>'+a+"</strong> "+e+'<button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">&times;</span></button></div>'}function ShowSystemMsg(a,e,t){var o=$(".modal.show .sys-messages");o.length||(o=$("form.alert-here .sys-messages")),o.length&&o.html(GetModalAlertTmpl(a,e,t))}function AjaxDone(data){try{eval(data)}catch(a){a instanceof SyntaxError&&(console.log(data),console.log("Error: JavaScript code eval error",a.message))}}function AjaxFail(a,e,t){console.log("Error: data sending error, page will be reloaded",a,e,t),setTimeout(function(){window.location.reload(!1)},1e3)}function FormToAjax(){$("form").each(function(){$(this).submit(function(a){var e=$(this);if(e.hasClass("loading"))a.preventDefault();else{e.addClass("loading").addClass("alert-here");var t=$(this).find("button[type=submit]");t.addClass("progress-bar-striped").addClass("progress-bar-animated"),""!=t.attr("data-target")&&$("#"+t.attr("data-target")).addClass("progress-bar-striped").addClass("progress-bar-animated"),e.find(".sys-messages").html(""),$.ajax({type:"POST",url:e.attr("action"),data:e.serialize()}).done(function(a){FormDataWasChanged=!1,AjaxDone(a)}).fail(function(a,e,t){AjaxFail(a.responseText,e,t)}).always(function(){setTimeout(function(){e.removeClass("loading").removeClass("alert-here"),t.removeClass("progress-bar-striped").removeClass("progress-bar-animated"),""!=t.attr("data-target")&&$("#"+t.attr("data-target")).removeClass("progress-bar-striped").removeClass("progress-bar-animated")},100)}),a.preventDefault()}});var a=$(this).find("button[type=submit]");""!=a.attr("data-target")&&$("#"+a.attr("data-target")).click(function(){a.click()}),$(this).hasClass("prev-data-lost")&&$(this).find("input, textarea, select").on("input",function(){FormDataWasChanged||(FormDataWasChanged=!0)})})}function FixFormInModal(){$(".modal.fade").on("hidden.bs.modal",function(){modal_alert_place=$(this).find(".sys-messages"),modal_alert_place.length&&modal_alert_place.html(""),form=$(this).find("form"),form.length&&form[0].reset()}).on("show.bs.modal",function(){form=$(this).find("form"),form.length&&form[0].reset()})}function BindWindowBeforeUnload(){$(window).bind("beforeunload",function(){if(FormDataWasChanged)return"Some data was changed and not saved. Are you sure want to leave page?"})}function Initialize(){"function"==typeof $?(FormToAjax(),FixFormInModal(),BindWindowBeforeUnload()):console.log("Error: jQuery is not loaded!")}return window.addEventListener?window.addEventListener("load",Initialize,!1):window.attachEvent&&window.attachEvent("onload",Initialize),{ShowMsgSuccess:function(a,e){ShowSystemMsg(a,e,!1)},ShowMsgError:function(a,e){ShowSystemMsg(a,e,!0)},ActionLogout:function(a){confirm(a)&&$.ajax({type:"POST",url:"/cp/",data:{action:"index-user-logout"}}).done(function(a){AjaxDone(a)}).fail(function(a,e,t){AjaxFail(a.responseText,e,t)})},ActionDataTableDelete:function(a,e,t,o){confirm(o)&&$.ajax({type:"POST",url:"/cp/",data:{action:e,id:t}}).done(function(a){AjaxDone(a)}).fail(function(a,e,t){AjaxFail(a.responseText,e,t)})}}}(window,$);window.fave=fave}(window,jQuery);`)