mirror of https://github.com/jumpserver/jumpserver
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
2 lines
42 KiB
2 lines
42 KiB
!function(e,t){if("function"==typeof define&&define.amd)define(["elfinder"],e);else if(t){var i=t.prototype._options.commandsOptions.edit.editors;t.prototype._options.commandsOptions.edit.editors=i.concat(e(t))}}(function(e){"use strict";var t,i=window.location.search.match(/getfile=([a-z]+)/),n=e.prototype.hasRequire,o=function(){var e;try{e=!!new ActiveXObject("ShockwaveFlash.ShockwaveFlash")}catch(t){e=!!("undefined"==typeof window.orientation||navigator&&navigator.mimeTypes["application/x-shockwave-flash"])}return e}(),a={bmp:"image/x-ms-bmp",dng:"image/x-adobe-dng",gif:"image/gif",jpeg:"image/jpeg",jpg:"image/jpeg",pdf:"application/pdf",png:"image/png",ppm:"image/x-portable-pixmap",psd:"image/vnd.adobe.photoshop",pxd:"image/x-pixlr-data",svg:"image/svg+xml",tiff:"image/tiff",webp:"image/webp",xcf:"image/x-xcf",sketch:"application/x-sketch"},r=function(e,i){t||(t=i.arrayFlip(a));var n=t[e]||i.mimeTypes[e];return"jpeg"===n&&(n="jpg"),n},s=function(e,t,i,n){var o=$(this).children("img:first").data("ext",r(t.mime,n)),a=$("<div/>").css({position:"absolute",top:"50%",textAlign:"center",width:"100%",fontSize:"16pt"}).html(n.i18n("ntfloadimg")).hide().appendTo(this);o.attr("id",e+"-img").attr("src",i).css({height:"","max-width":"100%","max-height":"100%",cursor:"pointer"}).data("loading",function(e){var t=o.closest(".elfinder-dialog").find("button,.elfinder-titlebar-button");return t.prop("disabled",!e)[e?"removeClass":"addClass"]("ui-state-disabled"),o.css("opacity",e?"":"0.3"),a[e?"hide":"show"](),o})},c=function(e,t){var i,n,o,a=e.attr("style");try{e.attr("style",""),i=e.get(0),n=document.createElement("canvas"),n.width=i.width,n.height=i.height,e.attr("style",a),n.getContext("2d").drawImage(i,0,0),o=n.toDataURL(t)}catch(r){o=e.attr("src")}return o},d=function(){if(o&&window.parent!==window){var e,t,i,n,r,s=window.location.search.match(/[?&]pixlr=([^&]+)/),c=window.location.search.match(/[?&]image=([^&]+)/);s&&(e=window.parent,t=e.$("#"+s[1]+"iframe").hide(),n=e.$("#"+s[1]).data("resizeoff")(),"http"===c[1].substr(0,4)?(i=c[1],r=i.replace(/.+\.([^.]+)$/,"$1"),n.data("ext")!==r&&n.closest(".ui-dialog").trigger("changeType",{extention:r,mime:a[r]}),"https:"===window.location.protocol&&(i=i.replace(/^http:/,"https:")),n.on("load error",function(){n.data("loading")(!0)}).attr("src",i).data("loading")()):n.data("loading")(!0),t.trigger("destroy").remove())}},l=function(e,t){o&&!t.UA.ltIE8||(this.disabled=!0)},p=function(e,t){var i,n=this,o=this.fm,a=o.res("class","preventback"),r=$(t).children("img:first").data("loading")().data("resizeoff",function(){return $(window).off("resize."+r.attr("id")),s.addClass(a),r}).on("click",function(){f()}),s=$(t).closest(".ui-dialog"),c=o.getUI(),d=o.getUI("toast"),l=$('<iframe class="ui-front" allowtransparency="true">'),p=this.file,m=15,u=function(e){e?(l.trigger("destroy").remove(),r.data("loading")(!0),o.error(e)):(d.appendTo(s.closest(".ui-dialog")),o.toast({mode:"info",msg:"Can not launch Pixlr yet. Waiting "+m+" seconds.",button:{text:"Abort",click:function(){l.trigger("destroy").remove(),r.data("loading")(!0)}},onHidden:function(){1===d.children().length&&d.appendTo(o.getUI())}}),i=setTimeout(e,1e3*m))},f=function(){var d="https://pixlr.com/"+e+"/?s=c",f=window.location.href.toString().replace(/#.*$/,""),g={};i=setTimeout(u,1e3*m),f+=(f.indexOf("?")===-1?"?":"&")+"pixlr="+r.attr("id"),d+="&referrer=elFinder&locktitle=true",d+="&exit="+encodeURIComponent(f+"&image=0"),d+="&target="+encodeURIComponent(f),d+="&title="+encodeURIComponent(p.name),d+="&image="+encodeURIComponent(r.attr("src")),g.src=d,g.css={width:"100%",height:$(window).height()+"px",position:"fixed",display:"block",backgroundColor:"transparent",border:"none",top:0,right:0},n.trigger("Prepare",{node:t,editorObj:void 0,instance:l,opts:g}),l.attr("id",r.attr("id")+"iframe").attr("src",g.src).css(g.css).one("load",function(){i&&clearTimeout(i),setTimeout(function(){l.is(":hidden")&&u("Please disable your ad blocker.")},1e3),s.addClass(a),o.toggleMaximize(l,!0),o.toFront(l)}).on("destroy",function(){o.toggleMaximize(l,!1)}).on("error",u).appendTo(c.hasClass("elfinder-fullscreen")?c:"body")};$(t).on("saveAsFail",f),f()},m=function(e){var t,i=$(e),n=$.Deferred().always(function(){i.off("load",r)}),o="about:blank",a=function(){t=setTimeout(function(){var e;try{e=base.contentWindow.location.href}catch(t){e=null}e===o?n.resolve():--s>0?a():n.reject()},500)},r=function(){t&&clearTimeout(t),n.resolve()},s=20;return i.one("load",r),e.src=o,a(),n};return d(),i&&(i=i[1],"ckeditor"===i?e.prototype._options.getFileCallback=function(e,t){window.opener.CKEDITOR.tools.callFunction(function(){var e=new RegExp("(?:[?&]|&)CKEditorFuncNum=([^&]+)","i"),t=window.location.search.match(e);return t&&t.length>1?t[1]:""}(),t.convAbsUrl(e.url)),t.destroy(),window.close()}:"tinymce"===i&&(e.prototype._options.getFileCallback=function(e,t){parent.tinymce.activeEditor.windowManager.getParams().oninsert(e,t),parent.tinymce.activeEditor.windowManager.close()})),[{info:{id:"tuiimgedit",name:"TUI Image Editor",iconImg:"img/editor-icons.png 0 -48",dataScheme:!0,schemeContent:!0,openMaximized:!0,canMakeEmpty:!1,integrate:{title:"TOAST UI Image Editor",link:"http://ui.toast.com/tui-image-editor/"}},mimes:["image/jpeg","image/png","image/gif","image/svg+xml","image/x-ms-bmp"],html:'<div class="elfinder-edit-imageeditor"><canvas></canvas></div>',setup:function(e,t){t.UA.ltIE8||t.UA.Mobile?this.disabled=!0:(this.opts=Object.assign({},e.extraOptions.tuiImgEditOpts||{},{iconsPath:t.baseUrl+"img/tui-",theme:{}}),t.isSameOrigin(this.opts.iconsPath)||(this.disabled=!0,t.debug("warning","Setting `commandOptions.edit.extraOptions.tuiImgEditOpts.iconsPath` MUST follow the same origin policy.")))},init:function(e,t,i,n){this.data("url",i)},load:function(e){var t,i=this,n=this.fm,o=$.Deferred(),a=n.options.cdns,r="latest",s=function(t){var a,r,s,c,d=$(e),l=i.confObj.opts,p=l.iconsPath,m=new t(e,{includeUI:{loadImage:{path:d.data("url"),name:i.file.name},theme:Object.assign(l.theme,{"menu.normalIcon.path":p+"icon-b.svg","menu.normalIcon.name":"icon-b","menu.activeIcon.path":p+"icon-a.svg","menu.activeIcon.name":"icon-a","submenu.normalIcon.path":p+"icon-a.svg","submenu.normalIcon.name":"icon-a","submenu.activeIcon.path":p+"icon-c.svg","submenu.activeIcon.name":"icon-c"}),initMenu:"filter",menuBarPosition:"bottom"},cssMaxWidth:700,cssMaxHeight:500}),u=d.find("canvas:first").get(0),f=function(e){var t,i,n,o=$(u),a=parseInt(o.attr("width")),r=parseInt(o.attr("height")),s=a/r;0===e?(t=a,i=r):(t=parseInt(o.css("max-width"))+Number(e),i=t/s),n={maxWidth:t,maxHeight:i},v.text(Math.round(t/a*100)+"%"),"undefined"!=typeof e&&(m._graphics.cssMaxWidth=t,m._graphics.cssMaxHeight=i,o.css(n).next().css(n),o.parents(".tui-image-editor-canvas-container,tui-image-editor-canvas").css(n),o.closest(".tui-image-editor").css({width:t,height:i}),c&&setTimeout(function(){c&&f(e)},50))},g=$('<span class="ui-icon ui-icon-plusthick"/>').data("val",10),h=$('<span class="ui-icon ui-icon-minusthick"/>').data("val",-10),v=$("<button/>").css("width","4em").text("%").attr("title","100%").data("val",0);d.removeData("url").data("mime",i.file.mime),"image/jpeg"===i.file.mime?(d.data("quality",n.storage("jpgQuality")||n.option("jpgQuality")),a=$('<input type="number" class="ui-corner-all elfinder-resize-quality elfinder-tabstop"/>').attr("min","1").attr("max","100").attr("title","1 - 100").on("change",function(){var e=a.val();d.data("quality",e),r&&cancelAnimationFrame(r),r=requestAnimationFrame(function(){u.toBlob(function(e){e&&a.next("span").text(" ("+n.formatSize(e.size)+")")},"image/jpeg",Math.max(Math.min(e,100),1)/100)})}).val(d.data("quality")),$('<div class="ui-dialog-buttonset elfinder-edit-extras elfinder-edit-extras-quality"/>').append($("<span>").html(n.i18n("quality")+" : "),a,$("<span/>")).prependTo(d.parent().next())):"image/svg+xml"===i.file.mime&&d.closest(".ui-dialog").trigger("changeType",{extention:"png",mime:"image/png",keepEditor:!0}),$('<div class="ui-dialog-buttonset elfinder-edit-extras"/>').append(h,v,g).attr("title",n.i18n("scale")).on("click","span,button",function(){f($(this).data("val"))}).on("mousedown mouseup mouseleave","span",function(e){c=!1,s&&clearTimeout(s),"mousedown"===e.type&&(s=setTimeout(function(){c=!0,f($(e.target).data("val"))},500))}).prependTo(d.parent().next()),setTimeout(function(){o.resolve(m),a&&(a.trigger("change"),m.on("redoStackChanged undoStackChanged",function(){a.trigger("change")})),f(null)},100)};return i.confObj.editor?s(i.confObj.editor):(t=$.Deferred(),n.loadCss([a.tui+"/tui-color-picker/latest/tui-color-picker.css",a.tui+"/tui-image-editor/"+r+"/tui-image-editor.css"]),n.hasRequire?(require.config({paths:{"fabric/dist/fabric.require":a.fabric16+"/fabric.require.min","tui-code-snippet":a.tui+"/tui.code-snippet/latest/tui-code-snippet.min","tui-color-picker":a.tui+"/tui.code-snippet/latest/tui-color-picker.min","tui-image-editor":a.tui+"/tui-image-editor/"+r+"/tui-image-editor.min"}}),require(["tui-image-editor"],function(e){t.resolve(e)})):n.loadScript([a.fabric16+"/fabric.min.js",a.tui+"/tui.code-snippet/latest/tui-code-snippet.min.js"],function(){n.loadScript([a.tui+"/tui-color-picker/latest/tui-color-picker.min.js"],function(){n.loadScript([a.tui+"/tui-image-editor/"+r+"/tui-image-editor.min.js"],function(){t.resolve(window.tui.ImageEditor)},{loadType:"tag"})},{loadType:"tag"})},{loadType:"tag"}),t.done(function(e){i.confObj.editor=e,s(e)})),o},getContent:function(e){var t=this.editor,i=t.fm,n=$(e),o=n.data("quality");if(t.instance)return"image/jpeg"===n.data("mime")&&(o=o||i.storage("jpgQuality")||i.option("jpgQuality"),o=Math.max(.1,Math.min(1,o/100))),t.instance.toDataURL({format:r(n.data("mime"),i),quality:o})},save:function(e){var t,i=$(e),n=i.data("quality"),o=i.data("hash");this.instance.deactivateAll(),"undefined"!=typeof n&&this.fm.storage("jpgQuality",n),o&&(t=this.fm.file(o),i.data("mime",t.mime))}},{info:{id:"pixlreditor",name:"Pixlr Editor",iconImg:"img/editor-icons.png 0 -128",urlAsContent:!0,schemeContent:!0,single:!0,canMakeEmpty:!0,integrate:{title:"PIXLR EDITOR",link:"https://pixlr.com/editor/"}},mimes:["image/jpeg","image/png","image/gif","image/x-ms-bmp","image/x-pixlr-data"],html:'<div class="elfinder-edit-imageeditor"><img/></div>',setup:function(e,t){l.call(this,e,t)},init:function(e,t,i,n){s.call(this,e,t,t.size>0?n.convAbsUrl(i):"",n)},getContent:function(){return $(this).children("img:first").attr("src")},load:function(e){p.call(this,"editor",e)},save:function(e){},close:function(e){}},{info:{id:"pixlrexpress",name:"Pixlr Express",iconImg:"img/editor-icons.png 0 -112",urlAsContent:!0,schemeContent:!0,single:!0,canMakeEmpty:!1,integrate:{title:"PIXLR EXPRESS",link:"https://pixlr.com/express/"}},mimes:["image/jpeg","image/png","image/gif"],html:'<div class="elfinder-edit-imageeditor"><img/></div>',setup:function(e,t){l.call(this,e,t)},init:function(e,t,i,n){s.call(this,e,t,t.size>0?n.convAbsUrl(i):"",n)},getContent:function(){return $(this).children("img:first").attr("src")},load:function(e){p.call(this,"express",e)},save:function(e){},close:function(e){}},{info:{id:"photopea",name:"Photopea",iconImg:"img/editor-icons.png 0 -160",single:!0,urlAsContent:!0,arrayBufferContent:!0,openMaximized:!0,canMakeEmpty:!0,integrate:{title:"Photopea",link:"https://www.photopea.com/learn/"}},mimes:["image/jpeg","image/png","image/gif","image/svg+xml","image/x-ms-bmp","image/tiff","image/x-adobe-dng","image/webp","image/x-xcf","image/vnd.adobe.photoshop","application/pdf","image/x-portable-pixmap","image/x-sketch"],html:'<iframe style="width:100%;height:100%;border:none;"></iframe>',setup:function(e,t){(t.UA.IE||t.UA.Mobile)&&(this.disabled=!0)},init:function(e,t,i,n){var o,s,c="https://www.photopea.com",d=$(this).hide().on("load",function(){d.show()}).on("error",function(){m.remove(),d.show()}),l=this.editor,p=l.confObj,m=$("<div/>").css({position:"absolute",top:"50%",textAlign:"center",width:"100%",fontSize:"16pt"}).html(n.i18n("nowLoading")+'<span class="elfinder-spinner"/>').appendTo(d.parent()),u=function(e){var t=r(e,n),i=a[t];return p.mimesFlip[i]?"jpeg"===t&&(t="jpg"):t="",t&&"xcf"!==t&&"dng"!==t&&"sketch"!==t||(t="psd",i=a[t],d.closest(".ui-dialog").trigger("changeType",{extention:t,mime:i,keepEditor:!0})),t},f=t.mime;p.mimesFlip||(p.mimesFlip=n.arrayFlip(p.mimes,!0)),p.liveMsg||(p.liveMsg=function(e,t,i){var o=n.openUrl(i.hash);n.isSameOrigin(o)||(o=n.openUrl(i.hash,!0));var a,r=e.get(0).contentWindow,s=0,d=null,l=$.Deferred().done(function(){t.remove(),s=1,r.postMessage(d,"*")});this.load=function(){return n.request({data:{cmd:"get"},options:{url:o,type:"get",cache:!0,dataType:"binary",responseType:"arraybuffer",processData:!1}}).done(function(e){d=e})},this.receive=function(t){var i=t.originalEvent;i.origin===c&&i.source===r&&("done"===i.data?0===s?l.resolve():1===s?(s=2,e.trigger("contentsloaded")):a&&"pending"===a.state()&&a.reject("errDataEmpty"):a&&"pending"===a.state()&&("object"==typeof i.data?a.resolve("data:"+f+";base64,"+n.arrayBufferToBase64(i.data)):a.reject("errDataEmpty")))},this.getContent=function(){var t;if(s>1)return a&&"pending"===a.state()&&a.reject(),a=null,a=$.Deferred(),2===s?(s=3,a.resolve("data:"+f+";base64,"+n.arrayBufferToBase64(d)),d=null,a):(e.data("mime")&&(f=e.data("mime"),t=u(f)),r.postMessage('app.activeDocument.saveToOE("'+t+'")',c),a)}}),d.parent().css("padding",0),s=u(t.mime),o=l.liveMsg=new p.liveMsg(d,m,t),$(window).on("message."+n.namespace,o.receive),o.load().done(function(){var e=JSON.stringify({files:[],environment:{lang:n.lang.replace(/_/g,"-")}});d.attr("src",c+"/#"+encodeURI(e))}).fail(function(e){e&&n.error(e),l.initFail=!0})},load:function(e){var t=$.Deferred(),i=this,n=(this.fm,$(e));return i.initFail?t.reject():n.on("contentsloaded",function(){t.resolve(i.liveMsg)}),t},getContent:function(){return this.editor.liveMsg?this.editor.liveMsg.getContent():void 0},save:function(e,t){var i,n=$(e),o=n.data("quality"),a=n.data("hash");"undefined"!=typeof o&&this.fm.storage("jpgQuality",o),a?(i=this.fm.file(a),n.data("mime",i.mime)):n.removeData("mime")},close:function(e,t){$(e).attr("src",""),t&&$(window).off("message."+this.fm.namespace,t.receive)}},{info:{id:"creativecloud",name:"Creative Cloud",iconImg:"img/editor-icons.png 0 -192",dataScheme:!0,schemeContent:!0,single:!0,canMakeEmpty:!1,integrate:{title:"Adobe Creative Cloud",link:"https://www.adobe.io/apis/creativecloud.html"}},mimes:["image/jpeg","image/png","image/gif","image/svg+xml","image/x-ms-bmp"],html:'<div class="elfinder-edit-imageeditor"><img/></div>',setup:function(e,t){!t.UA.ltIE8&&e.extraOptions&&e.extraOptions.creativeCloudApiKey?this.apiKey=e.extraOptions.creativeCloudApiKey:this.disabled=!0},init:function(e,t,i,n){s.call(this,e,t,i,n)},getContent:function(){return $(this).children("img:first").attr("src")},load:function(e){var t,i=this,n=this.fm,o=$(e).children("img:first"),r=$(e).closest(".ui-dialog"),s=n.getUI(),c=$.Deferred(),d=$("#elfinder-aviary-container"),l=function(l){var m,u=function(){var e={zh_TW:"zh_HANT",zh_CN:"zh_HANS"};return e[n.lang]?e[n.lang]:n.lang};d.length?d.appendTo(d.parent()):(d=$('<div id="elfinder-aviary-container" class="ui-front"/>').css({position:"fixed",top:0,right:0,width:"100%",height:$(window).height(),overflow:"auto"}).hide().appendTo(s.hasClass("elfinder-fullscreen")?s:"body"),s.on("resize."+n.namespace,function(e,t){e.preventDefault(),e.stopPropagation(),t&&t.fullscreen&&d.appendTo("on"===t.fullscreen?s:"body")}),n.bind("destroy",function(){d.remove()})),o.on("click",p).data("loading")(),m={apiKey:i.confObj.apiKey,onSave:function(e,i){var n;t.showWaitIndicator(),n=i.replace(/.+\.([^.]+)$/,"$1"),o.data("ext")!==n&&o.closest(".ui-dialog").trigger("changeType",{extention:n,mime:a[n]}),o.on("load error",function(){o.data("loading")(!0)}).attr("crossorigin","anonymous").attr("src",i).data("loading")(),t.close()},onLoad:l||function(){},onClose:function(){r.removeClass(n.res("class","preventback")),n.toggleMaximize(d,!1),$(d).hide()},appendTo:d.get(0),maxSize:2048,language:u()},i.trigger("Prepare",{node:e,editorObj:Aviary,instance:void 0,opts:m}),t=new Aviary.Feather(m),c.resolve(t),$(e).on("saveAsFail",p)},p=function(){r.addClass(n.res("class","preventback")),n.toggleMaximize(d,!0),n.toFront(d),$(d).show(),t.launch({image:o.attr("id"),url:o.attr("src")}),o.data("loading")(!0)};return"undefined"==typeof Aviary?n.loadScript(["https://dme0ih8comzn4.cloudfront.net/imaging/v3/editor.js"],function(){l(p)},{loadType:"tag"}):(l(),p()),c},save:function(e){var t=$(e).children("img:first");"data:"!==t.attr("src").substr(0,5)&&t.attr("src",c(t,this.file.mime))}},{setup:function(e,t){!t.UA.ltIE8&&t.options.cdns.ace||(this.disabled=!0)},info:{id:"aceeditor",name:"ACE Editor",iconImg:"img/editor-icons.png 0 -96"},load:function(e){var t=this,i=this.fm,n=$.Deferred(),o=i.options.cdns.ace,a=function(){var i,a,r,s=$(e),c=s.parent(),d=c.parent(),l=e.id+"_ace",p=(t.file.name.replace(/^.+\.([^.]+)|(.+)$/,"$1$2").toLowerCase(),{"text/x-php":"php","application/x-php":"php","text/html":"html","application/xhtml+xml":"html","text/javascript":"javascript","application/javascript":"javascript","text/css":"css","text/x-c":"c_cpp","text/x-csrc":"c_cpp","text/x-chdr":"c_cpp","text/x-c++":"c_cpp","text/x-c++src":"c_cpp","text/x-c++hdr":"c_cpp","text/x-shellscript":"sh","application/x-csh":"sh","text/x-python":"python","text/x-java":"java","text/x-java-source":"java","text/x-ruby":"ruby","text/x-perl":"perl","application/x-perl":"perl","text/x-sql":"sql","text/xml":"xml","application/docbook+xml":"xml","application/xml":"xml"});c.height(c.height()),ace.config.set("basePath",o),a=$('<div id="'+l+'" style="width:100%; height:100%;"/>').text(s.val()).insertBefore(s.hide()),s.data("ace",!0),i=ace.edit(l),i.$blockScrolling=1/0,i.setOptions({theme:"ace/theme/monokai",fontSize:"14px",wrap:!0}),ace.config.loadModule("ace/ext/modelist",function(){r=ace.require("ace/ext/modelist").getModeForPath("/"+t.file.name).name,"text"===r&&p[t.file.mime]&&(r=p[t.file.mime]),c.prev().children(".elfinder-dialog-title").append(" ("+t.file.mime+" : "+r.split(/[\/\\]/).pop()+")"),i.setOptions({mode:"ace/mode/"+r}),"resolved"===n.state()&&d.trigger("resize")}),ace.config.loadModule("ace/ext/language_tools",function(){ace.require("ace/ext/language_tools"),i.setOptions({enableBasicAutocompletion:!0,enableSnippets:!0,enableLiveAutocompletion:!1})}),ace.config.loadModule("ace/ext/settings_menu",function(){ace.require("ace/ext/settings_menu").init(i)}),i.commands.addCommand({name:"saveFile",bindKey:{win:"Ctrl-s",mac:"Command-s"},exec:function(e){t.doSave()}}),i.commands.addCommand({name:"closeEditor",bindKey:{win:"Ctrl-w|Ctrl-q",mac:"Command-w|Command-q"},exec:function(e){t.doCancel()}}),i.resize(),$('<div class="ui-dialog-buttonset"/>').css("float","left").append($("<button/>").html(t.fm.i18n("TextArea")).button().on("click",function(){s.data("ace")?(s.removeData("ace"),a.hide(),s.val(i.session.getValue()).show().trigger("focus"),$(this).text("AceEditor")):(s.data("ace",!0),a.show(),i.setValue(s.hide().val(),-1),i.focus(),$(this).html(t.fm.i18n("TextArea")))})).append($("<button>Ace editor setting</button>").button({icons:{primary:"ui-icon-gear",secondary:"ui-icon-triangle-1-e"},text:!1}).on("click",function(){i.showSettingsMenu(),$("#ace_settingsmenu").css("font-size","80%").find('div[contains="setOptions"]').hide().end().parent().parent().appendTo($("#elfinder"))})).prependTo(c.next()),t.trigger("Prepare",{node:e,editorObj:ace,instance:i,opts:{}}),n.resolve(i)};return t.confObj.loader||(t.confObj.loader=$.Deferred(),t.fm.loadScript([o+"/ace.js"],function(){t.confObj.loader.resolve()},void 0,{obj:window,name:"ace"})),t.confObj.loader.done(a),n},close:function(e,t){t&&t.destroy()},save:function(e,t){t&&$(e).data("ace")&&(e.value=t.session.getValue())},focus:function(e,t){t&&$(e).data("ace")&&t.focus()},resize:function(e,t,i,n){t&&t.resize()}},{setup:function(e,t){!t.UA.ltIE10&&t.options.cdns.codemirror||(this.disabled=!0)},info:{id:"codemirror",name:"CodeMirror",iconImg:"img/editor-icons.png 0 -176"},load:function(e){var t=this.fm,i=t.options.cdns.codemirror,o=$.Deferred(),a=this,r=function(t){var r,s,c,d=$(e),l=d.parent();l.height(l.height()),c={lineNumbers:!0,lineWrapping:!0,extraKeys:{"Ctrl-S":function(){a.doSave()},"Ctrl-Q":function(){a.doCancel()},"Ctrl-W":function(){a.doCancel()}}},a.trigger("Prepare",{node:e,editorObj:t,instance:void 0,opts:c}),r=t.fromTextArea(e,c),o.resolve(r);var p,m,u,f;p||(p=t.findModeByMIME(a.file.mime)),!p&&(m=a.file.name.match(/.+\.([^.]+)$/))&&(p=t.findModeByExtension(m[1])),p&&(t.modeURL=n?"codemirror/mode/%N/%N.min":i+"/mode/%N/%N.min.js",u=p.mode,f=p.mime,r.setOption("mode",f),t.autoLoadMode(r,u),l.prev().children(".elfinder-dialog-title").append(" ("+f+" : "+u+")")),s=$(r.getWrapperElement()).css({padding:0,border:"none"}),d.data("cm",!0),s.height("100%"),$('<div class="ui-dialog-buttonset"/>').css("float","left").append($("<button/>").html(a.fm.i18n("TextArea")).button().on("click",function(){d.data("cm")?(d.removeData("cm"),s.hide(),d.val(r.getValue()).show().trigger("focus"),$(this).text("CodeMirror")):(d.data("cm",!0),s.show(),r.setValue(d.hide().val()),r.refresh(),r.focus(),$(this).html(a.fm.i18n("TextArea")))})).prependTo(l.next())};return a.confObj.loader||(a.confObj.loader=$.Deferred(),n?(require.config({packages:[{name:"codemirror",location:i,main:"codemirror.min"}],map:{codemirror:{"codemirror/lib/codemirror":"codemirror"}}}),require(["codemirror","codemirror/addon/mode/loadmode.min","codemirror/mode/meta.min"],function(e){a.confObj.loader.resolve(e)})):a.fm.loadScript([i+"/codemirror.min.js"],function(){a.fm.loadScript([i+"/addon/mode/loadmode.min.js",i+"/mode/meta.min.js"],function(){a.confObj.loader.resolve(CodeMirror)})},{loadType:"tag"}),a.fm.loadCss(i+"/codemirror.css")),a.confObj.loader.done(r),o},close:function(e,t){t&&t.toTextArea()},save:function(e,t){t&&$(e).data("cm")&&(e.value=t.getValue())},focus:function(e,t){t&&$(e).data("cm")&&t.focus()},resize:function(e,t,i,n){t&&t.refresh()}},{setup:function(e,t){!t.UA.ltIE10&&t.options.cdns.simplemde||(this.disabled=!0)},info:{id:"simplemde",name:"SimpleMDE",iconImg:"img/editor-icons.png 0 -80"},exts:["md"],load:function(e){var t=this,i=this.fm,o=$(e).parent(),a=$.Deferred(),r=i.options.cdns.simplemde,s=function(i){var n,r,s,c=o.height(),d=o.outerHeight(!0)-c+14;e._setHeight=function(e){var t,i=e||o.height(),a=0;return o.children(".editor-toolbar,.editor-statusbar").each(function(){a+=$(this).outerHeight(!0)}),t=i-a-d,r.height(t),n.codemirror.refresh(),t},o.height(c),s={element:e,autofocus:!0},t.trigger("Prepare",{node:e,editorObj:i,instance:void 0,opts:s}),n=new i(s),a.resolve(n),r=$(n.codemirror.getWrapperElement()),r.css("min-height","50px").children(".CodeMirror-scroll").css("min-height","50px"),e._setHeight(c)};return t.confObj.loader||(t.confObj.loader=$.Deferred(),t.fm.loadCss(r+"/simplemde.min.css"),n?require([r+"/simplemde.min.js"],function(e){t.confObj.loader.resolve(e)}):t.fm.loadScript([r+"/simplemde.min.js"],function(){t.confObj.loader.resolve(SimpleMDE)},{loadType:"tag"})),t.confObj.loader.done(s),a},close:function(e,t){t&&t.toTextArea(),t=null},save:function(e,t){t&&(e.value=t.value())},focus:function(e,t){t&&t.codemirror.focus()},resize:function(e,t,i,n){t&&e._setHeight()}},{info:{id:"ckeditor",name:"CKEditor",iconImg:"img/editor-icons.png 0 0"},exts:["htm","html","xhtml"],setup:function(e,t){t.options.cdns.ckeditor?e.extraOptions&&e.extraOptions.managerUrl&&(this.managerUrl=e.extraOptions.managerUrl):this.disabled=!0},load:function(e){var t=this,i=this.fm,n=$.Deferred(),o=function(){var o,a=$(e).parent(),r=a.closest(".elfinder-dialog"),s=a.height(),c=/([&?]getfile=)[^&]+/,d=t.confObj.managerUrl||window.location.href.replace(/#.*$/,""),l="ckeditor";c.test(d)?d=d.replace(c,"$1"+l):d+="?getfile="+l,a.height(s),o={startupFocus:!0,fullPage:!0,allowedContent:!0,filebrowserBrowseUrl:d,toolbarCanCollapse:!0,toolbarStartupExpanded:!i.UA.Mobile,removePlugins:"resize",extraPlugins:"colorbutton,justify,docprops",on:{instanceReady:function(o){var a=o.editor;a.resize("100%",s),r.one("beforedommove."+i.namespace,function(){a.destroy()}).one("dommove."+i.namespace,function(){t.load(e).done(function(e){t.instance=e})}),n.resolve(o.editor)}}},t.trigger("Prepare",{node:e,editorObj:CKEDITOR,instance:void 0,opts:o}),CKEDITOR.replace(e.id,o),CKEDITOR.on("dialogDefinition",function(e){var t=e.data.definition.dialog;t.on("show",function(e){i.getUI().append($(".cke_dialog_background_cover")).append(this.getElement().$)}),t.on("hide",function(e){$("body:first").append($(".cke_dialog_background_cover")).append(this.getElement().$)})})};return t.confObj.loader||(t.confObj.loader=$.Deferred(),window.CKEDITOR_BASEPATH=i.options.cdns.ckeditor+"/",$.getScript(i.options.cdns.ckeditor+"/ckeditor.js",function(){t.confObj.loader.resolve()})),t.confObj.loader.done(o),n},close:function(e,t){t&&t.destroy()},save:function(e,t){t&&(e.value=t.getData())},focus:function(e,t){t&&t.focus()},resize:function(e,t,i,n){t&&"ready"===t.status&&t.resize("100%",$(e).parent().height())}},{info:{id:"ckeditor5",name:"CKEditor5",iconImg:"img/editor-icons.png 0 -16"},exts:["htm","html","xhtml"],html:'<div class="edit-editor-ckeditor5"></div>',setup:function(e,t){var i=this;t.options.cdns.ckeditor5&&"function"==typeof window.Symbol&&"symbol"==typeof Symbol()?e.extraOptions&&e.extraOptions.ckeditor5Mode&&(this.ckeditor5Mode=e.extraOptions.ckeditor5Mode):this.disabled=!0,t.bind("destroy",function(){i.editor=null})},prepare:function(e,t,i){$(e).height(e.editor.fm.getUI().height()-100)},init:function(e,t,i,n){var o=i.match(/^([\s\S]*<body[^>]*>)([\s\S]+)(<\/body>[\s\S]*)$/i),a="",r="",s="";this.css({width:"100%",height:"100%","box-sizing":"border-box"}),o?(a=o[1],r=o[2],s=o[3]):r=i,this.data("data",{header:a,body:r,footer:s})},load:function(e){var t,i=this,n=this.fm,o=$.Deferred(),a=i.confObj.ckeditor5Mode||"balloon",r=function(){var e=n.lang.toLowerCase().replace("_","-");return"zh"===e.substr(0,2)&&"zh-cn"!==e&&(e="zh"),e}(),s=function(t){var a,s=$(e).parent();s.height(n.getUI().height()-100),a={toolbar:["heading","|","bold","italic","link","imageUpload","bulletedList","numberedList","blockQuote","undo","redo"],language:r},i.trigger("Prepare",{node:e,editorObj:t,instance:void 0,opts:a}),t.create(e,a).then(function(t){var i=t.plugins.get("FileRepository");i.createUploadAdapter=function(e){return new c(e)},t.setData($(e).data("data").body),n.getUI().append($("body > div.ck-body")),$("div.ck-balloon-panel").css({"z-index":n.getMaximizeCss().zIndex+1}),o.resolve(t)})["catch"](function(e){n.error(e)})},c=function(e){this.upload=function(){return new Promise(function(t,i){n.exec("upload",{files:[e.file]},void 0,n.cwd().hash).done(function(e){e.added&&e.added.length?n.url(e.added[0].hash,{async:!0}).done(function(e){t({"default":n.convAbsUrl(e)})}).fail(function(){i("errFileNotFound")}):i(n.i18n(e.error?e.error:"errUpload"))}).fail(function(e){i(n.i18n(e?"userabort"===e?"errAbort":e:"errUploadNoFiles"))}).progress(function(t){e.uploadTotal=t.total,e.uploaded=t.progress})})},this.abort=function(){n.getUI().trigger("uploadabort")}};return i.confObj.editor?s(i.confObj.editor):(t=$.Deferred(),i.fm.loadScript([n.options.cdns.ckeditor5+"/"+a+"/ckeditor.js"],function(e){e||(e=window.BalloonEditor||window.InlineEditor||window.ClassicEditor),"en"!==n.lang?i.fm.loadScript([n.options.cdns.ckeditor5+"/"+a+"/translations/"+r+".js"],function(i){t.resolve(e)},{tryRequire:!0,loadType:"tag",error:function(i){r="en",t.resolve(e)}}):t.resolve(e)},{tryRequire:!0,loadType:"tag"}),t.done(function(e){i.confObj.editor=e,s(e)})),o},getContent:function(){var e=$(this).data("data");return e.header+e.body+e.footer},close:function(e,t){t&&t.destroy()},save:function(e,t){var i=$(e),n=i.data("data");t&&(n.body=t.getData(),i.data("data",n))},focus:function(e,t){$(e).trigger("focus")}},{info:{id:"tinymce",name:"TinyMCE",iconImg:"img/editor-icons.png 0 -64"},exts:["htm","html","xhtml"],setup:function(e,t){t.options.cdns.tinymce?e.extraOptions&&e.extraOptions.managerUrl&&(this.managerUrl=e.extraOptions.managerUrl):this.disabled=!0},load:function(e){var t=this,i=this.fm,n=$.Deferred(),o=function(){var o,a=$(e).show().parent(),r=a.closest(".elfinder-dialog"),s=a.height(),c=a.outerHeight(!0)-s;a.height(s),e._setHeight=function(e){var t,i=$(this).parent(),n=e||i.height(),o=0;return i.find(".mce-container-body:first").children(".mce-top-part,.mce-statusbar").each(function(){o+=$(this).outerHeight(!0)}),t=n-o-c,i.find(".mce-edit-area iframe:first").height(t),t},o={selector:"#"+e.id,resize:!1,plugins:["fullpage","image","link","media","code","fullscreen"],init_instance_callback:function(o){e._setHeight(s),r.one("beforedommove."+i.namespace,function(){tinymce.execCommand("mceRemoveEditor",!1,e.id)}).one("dommove."+i.namespace,function(){t.load(e).done(function(e){t.instance=e})}),n.resolve(o)},file_picker_callback:function(e,i,n){var o=/([&?]getfile=)[^&]+/,a=t.confObj.managerUrl||window.location.href.replace(/#.*$/,""),r="tinymce";return o.test(a)?a=a.replace(o,"$1"+r):a+="?getfile="+r,tinymce.activeEditor.windowManager.open({file:a,title:"elFinder",width:900,height:450,resizable:"yes"},{oninsert:function(t,i){var o,a;o=i.convAbsUrl(t.url),a=t.name+" ("+i.formatSize(t.size)+")","file"==n.filetype&&e(o,{text:a,title:a}),"image"==n.filetype&&e(o,{alt:a}),"media"==n.filetype&&e(o)}}),!1}},t.trigger("Prepare",{node:e,editorObj:tinymce,instance:void 0,opts:o}),tinymce.init(o)};return t.confObj.loader||(t.confObj.loader=$.Deferred(),$.getScript(i.options.cdns.tinymce+"/tinymce.min.js",function(){setTimeout(function(){t.confObj.loader.resolve()},0)})),t.confObj.loader.done(o),n},close:function(e,t){t&&tinymce.execCommand("mceRemoveEditor",!1,e.id)},save:function(e,t){t&&t.save()},focus:function(e,t){t&&t.focus()},resize:function(e,t,i,n){t&&e._setHeight()}},{info:{id:"zohoeditor",name:"Zoho Editor",iconImg:"img/editor-icons.png 0 -32",cmdCheck:"ZohoOffice",preventGet:!0,hideButtons:!0,syncInterval:15e3,canMakeEmpty:!0,integrate:{title:"Zoho Office API",link:"https://www.zoho.com/officeapi/"}},mimes:["application/msword","application/vnd.openxmlformats-officedocument.wordprocessingml.document","application/vnd.oasis.opendocument.text","application/rtf","text/html","application/vnd.ms-excel","application/vnd.openxmlformats-officedocument.spreadsheetml.sheet","application/vnd.oasis.opendocument.spreadsheet","application/vnd.sun.xml.calc","text/csv","text/tab-separated-values","application/vnd.ms-powerpoint","application/vnd.openxmlformats-officedocument.presentationml.presentation","application/vnd.openxmlformats-officedocument.presentationml.slideshow","application/vnd.oasis.opendocument.presentation","application/vnd.sun.xml.impress"],html:'<iframe style="width:100%;max-height:100%;border:none;"></iframe>',setup:function(e,t){(t.UA.Mobile||t.UA.ltIE8)&&(this.disabled=!0)},prepare:function(e,t,i){var n=e.editor.fm.getUI();$(e).height(n.height()),t.width=Math.max(t.width||0,.8*n.width())},init:function(e,t,i,n){var o=this,a=$(this).hide(),r=$("<div/>").css({position:"absolute",top:"50%",textAlign:"center",width:"100%",fontSize:"16pt"}).html(n.i18n("nowLoading")+'<span class="elfinder-spinner"/>').appendTo(a.parent()),s=function(){var e="";return $.each(n.customData,function(t,i){e+="&"+encodeURIComponent(t)+"="+encodeURIComponent(i)}),e};$(o).data("xhr",n.request({data:{cmd:"editor",name:"ZohoOffice",method:"init","args[target]":t.hash,"args[lang]":n.lang,"args[cdata]":s},preventDefault:!0}).done(function(e){var t;e.zohourl?(t={css:{height:"100%"}},o.editor.trigger("Prepare",{node:o,editorObj:void 0,instance:a,opts:t}),a.attr("src",e.zohourl).show().css(t.css)):(e.error&&n.error(e.error),o.elfinderdialog("destroy"))}).fail(function(e){e&&n.error(e),o.elfinderdialog("destroy")}).always(function(){r.remove();
|
|
}))},load:function(){},getContent:function(){},save:function(){},beforeclose:m,close:function(e){var t=(this.fm,$(e).data("xhr"));"pending"===t.state()&&t.reject()}},{info:{id:"ziparchive",name:"btnMount",iconImg:"img/toolbar.png 0 -416",cmdCheck:"ZipArchive",edit:function(e,t){var i=this,n=$.Deferred();return i.request({data:{cmd:"netmount",protocol:"ziparchive",host:e.hash,path:e.phash},notify:{type:"netmount",cnt:1,hideCnt:!0}}).done(function(e){var t;e.added&&e.added.length&&(e.added[0].phash&&(t=i.file(e.added[0].phash))&&(t.dirs||(t.dirs=1,i.change({changed:[t]}))),i.one("netmountdone",function(){i.exec("open",e.added[0].hash),i.one("opendone",function(){e.toast&&i.toast(e.toast)})})),n.resolve()}).fail(function(e){n.reject(e)}),n}},mimes:["application/zip"],load:function(){},save:function(){}},{info:{id:"textarea",name:"TextArea",useTextAreaEvent:!0},load:function(e){this.trigger("Prepare",{node:e,editorObj:void 0,instance:void 0,opts:{}}),e.setSelectionRange&&e.setSelectionRange(0,0),$(e).trigger("focus").show()},save:function(){}},{info:{id:"onlineconvert",name:"Online Convert",iconImg:"img/editor-icons.png 0 -144",cmdCheck:"OnlineConvert",preventGet:!0,hideButtons:!0,single:!0,converter:!0,canMakeEmpty:!1,integrate:{title:"ONLINE-CONVERT.COM",link:"https://online-convert.com"}},mimes:["*"],html:'<iframe style="width:100%;max-height:100%;border:none;"></iframe>',setup:function(e,t){var i=e.extraOptions.onlineConvert||{maxSize:100,showLink:!0};i.maxSize&&(this.info.maxSize=1048576*i.maxSize),this.set=Object.assign({url:"https://%s.online-convert.com%s?external_url=",conv:{Archive:{"7Z":{},BZ2:{ext:"bz"},GZ:{},ZIP:{}},Audio:{MP3:{},OGG:{ext:"oga"},WAV:{},WMA:{},AAC:{},AIFF:{ext:"aif"},FLAC:{},M4A:{},MMF:{},OPUS:{ext:"oga"}},Document:{DOC:{},DOCX:{},HTML:{},ODT:{},PDF:{},PPT:{},PPTX:{},RTF:{},SWF:{},TXT:{}},eBook:{AZW3:{ext:"azw"},ePub:{},FB2:{ext:"xml"},LIT:{},LRF:{},MOBI:{},PDB:{},PDF:{},"PDF-eBook":{ext:"pdf"},TCR:{}},Hash:{Adler32:{},"Apache-htpasswd":{},Blowfish:{},CRC32:{},CRC32B:{},Gost:{},Haval128:{},MD4:{},MD5:{},RIPEMD128:{},RIPEMD160:{},SHA1:{},SHA256:{},SHA384:{},SHA512:{},Snefru:{},"Std-DES":{},Tiger128:{},"Tiger128-calculator":{},"Tiger128-converter":{},Tiger160:{},Tiger192:{},Whirlpool:{}},Image:{BMP:{},EPS:{ext:"ai"},GIF:{},EXR:{},ICO:{},JPG:{},PNG:{},SVG:{},TGA:{},TIFF:{ext:"tif"},WBMP:{},WebP:{}},Video:{"3G2":{},"3GP":{},AVI:{},FLV:{},HLS:{ext:"m3u8"},MKV:{},MOV:{},MP4:{},"MPEG-1":{ext:"mpeg"},"MPEG-2":{ext:"mpeg"},OGG:{ext:"ogv"},OGV:{},WebM:{},WMV:{},Android:{link:"/convert-video-for-%s",ext:"mp4"},Blackberry:{link:"/convert-video-for-%s",ext:"mp4"},DPG:{link:"/convert-video-for-%s",ext:"avi"},iPad:{link:"/convert-video-for-%s",ext:"mp4"},iPhone:{link:"/convert-video-for-%s",ext:"mp4"},iPod:{link:"/convert-video-for-%s",ext:"mp4"},"Nintendo-3DS":{link:"/convert-video-for-%s",ext:"avi"},"Nintendo-DS":{link:"/convert-video-for-%s",ext:"avi"},PS3:{link:"/convert-video-for-%s",ext:"mp4"},Wii:{link:"/convert-video-for-%s",ext:"avi"},Xbox:{link:"/convert-video-for-%s",ext:"wmv"}}},catExts:{Hash:"txt"},link:'<div class="elfinder-edit-onlineconvert-link"><a href="https://www.online-convert.com" target="_blank"><span class="elfinder-button-icon"></span>ONLINE-CONVERT.COM</a></div>',toastWidth:280,useTabs:!(!$.fn.tabs||t.UA.iOS)},i)},prepare:function(e,t,i){var n=e.editor.fm.getUI();$(e).height(n.height()),t.width=Math.max(t.width||0,.8*n.width())},init:function(e,t,i,n){var o,a,r=this,s=r.editor.confObj,c=s.set,d=n.getUI("toast"),l={},p=n.uploadMimeCheck("application/zip",t.phash),m=function(e,t){var i;return c.catExts[e]?c.catExts[e]:c.conv[e]&&(i=c.conv[e][t])?(i.ext||t).toLowerCase():t.toLowerCase()},u=function(e,t){var i,o,a;o="undefined"==typeof s.api?n.request({data:{cmd:"editor",name:"OnlineConvert",method:"init"},preventDefault:!0}):$.Deferred().resolve({api:s.api}),e=e.toLowerCase(),o.done(function(n){s.api=n.api,s.api&&(e?i="?category="+e:(i="",e="all"),s.conversions||(s.conversions={}),a=s.conversions[e]?$.Deferred().resolve(s.conversions[e]):$.getJSON("https://api2.online-convert.com/conversions"+i),a.done(function(i){s.conversions[e]=i,$.each(i,function(e,t){f[c.useTabs?"children":"find"](".onlineconvert-category-"+t.category).children(".onlineconvert-"+t.target).trigger("makeoption",t)}),t&&t()}))})},f=function(){var e=$("<div/>").on("click","button",function(){var e=$(this),t=e.data("opts")||null,i=e.closest(".onlineconvert-category").data("cname"),n=e.data("conv");s.api===!0?y({category:i,convert:n,options:t}):j(i,n)}).on("change",function(e){var t=$(e.target),i=t.parent(),o=t.closest(".elfinder-edit-onlineconvert-button").children("button:first"),a=o.data("opts")||{},r="boolean"===i.data("type")?t.is(":checked"):t.val();if(e.stopPropagation(),r&&("integer"===i.data("type")&&(r=parseInt(r)),i.data("pattern"))){var s=new RegExp(i.data("pattern"));s.test(r)||(requestAnimationFrame(function(){n.error('"'+n.escape(r)+'" is not match to "/'+n.escape(i.data("pattern"))+'/"')}),r=null)}r?a[t.parent().data("optkey")]=r:delete a[i.data("optkey")],o.data("opts",a)}),i=$("<ul/>"),o=function(e,t){var i,o,a,r=$("<p/>").data("optkey",e).data("type",t.type),s="",c="",d=!1;return t.description&&r.attr("title",n.i18n(t.description)),t.pattern&&r.data("pattern",t.pattern),r.append($("<span/>").text(n.i18n(e)+" : ")),"boolean"===t.type?((t["default"]||(d="allow_multiple_outputs"===e&&!p))&&(s=" checked",d&&(c=" disabled"),o=this.children("button:first"),i=o.data("opts")||{},i[e]=!0,o.data("opts",i)),r.append($('<input type="checkbox" value="true"'+s+c+"/>"))):t["enum"]?(a=$("<select/>").append($('<option value=""/>').text("Select...")),$.each(t["enum"],function(e,t){a.append($('<option value="'+t+'"/>').text(t))}),r.append(a)):r.append($('<input type="text" value=""/>')),r},a=function(e){var t=this,i=$('<span class="elfinder-button-icon elfinder-button-icon-preference"/>').on("click",function(){n.toggle()}),n=$('<div class="elfinder-edit-onlinconvert-options"/>').hide();e.options&&$.each(e.options,function(e,i){"download_password"!==e&&n.append(o.call(t,e,i))}),t.append(i,n)},r=+new Date,d=0;return s.ext2mime||(s.ext2mime=n.arrayFlip(n.mimeTypes)),$.each(c.conv,function(o,c){var p=o.toLowerCase(),u="elfinder-edit-onlineconvert-"+p+r,f=$('<div id="'+u+'" class="onlineconvert-category onlineconvert-category-'+p+'"/>').data("cname",o);$.each(c,function(e,i){var r=e.toLowerCase(),c=m(o,e);s.ext2mime[c]||("audio"===p||"image"===p||"video"===p?s.ext2mime[c]=p+"/x-"+r:s.ext2mime[c]="application/octet-stream"),n.uploadMimeCheck(s.ext2mime[c],t.phash)&&f.append($('<div class="elfinder-edit-onlineconvert-button onlineconvert-'+r+'"/>').on("makeoption",function(e,t){var i=$(this);i.children(".elfinder-button-icon-preference").length||a.call(i,t)}).append($("<button/>").text(e).data("conv",e)))}),f.children().length&&(i.append($("<li/>").append($("<a/>").attr("href","#"+u).text(o))),e.append(f),l[p]=d++)}),c.useTabs?e.prepend(i).tabs({beforeActivate:function(e,t){u(t.newPanel.data("cname"))}}):$.each(c.conv,function(t){var i=t.toLowerCase();e.append($('<fieldset class="onlineconvert-fieldset-'+i+'"/>').append($("<legend/>").text(t)).append(e.children(".onlineconvert-category-"+i)))}),e}(),g=$(this).hide(),h=$("<div/>").append(f,$('<div class="elfinder-edit-onlineconvert-bottom-btn"/>').append($("<button/>").addClass(n.UA.iOS?"elfinder-button-ios-multiline":"").html(n.i18n("convertOn","Online-Convert.com")).on("click",function(){j()})),c.showLink?$(c.link):null).appendTo(g.parent().css({overflow:"auto"})),v=$('<div class="elfinder-edit-spiner elfinder-edit-online-convert"/>').hide().css({position:"absolute",top:"50%",textAlign:"center",width:"100%",fontSize:"16pt"}).html('<span class="elfinder-edit-loadingmsg">'+n.i18n("nowLoading")+'</span><span class="elfinder-spinner"/>').appendTo(g.parent()),x=null,b=function(){return x?$.Deferred().resolve(x):(v.show(),n.url(t.hash,{async:!0,temporary:!0}).done(function(e){x=e}).fail(function(e){e&&n.error(e),r.elfinderdialog("destroy")}).always(function(){v.hide()}))},y=function(e){$(r).data("dfrd",b().done(function(i){h.fadeOut(),C({info:"Start conversion request."}),n.request({data:{cmd:"editor",name:"OnlineConvert",method:"api","args[category]":e.category.toLowerCase(),"args[convert]":e.convert.toLowerCase(),"args[options]":JSON.stringify(e.options),"args[source]":n.convAbsUrl(i),"args[filename]":n.splitFileExtention(t.name)[0]+"."+m(e.category,e.convert),"args[mime]":t.mime},preventDefault:!0}).done(function(t){w(t.apires,e.category,e.convert)}).fail(function(e){e&&n.error(e),r.elfinderdialog("destroy")})}))},w=function(e,t,i){var o,a=[];e&&e.id?(o=e.status,"failed"===o.code?(v.hide(),e.errors&&e.errors.length&&$.each(e.errors,function(e,t){t.message&&a.push(t.message)}),n.error(a.length?a:o.info),h.fadeIn()):"completed"===o.code?k(e.output):(C(o),setTimeout(function(){O(e.id)},1e3))):(d.appendTo(r.closest(".ui-dialog")),e.message&&n.toast({msg:n.i18n(e.message),mode:"error",timeOut:5e3,width:c.toastWidth,onHidden:function(){1===d.children().length&&d.appendTo(n.getUI())}}),n.toast({msg:n.i18n("editorConvNoApi"),mode:"warning",timeOut:3e3,width:c.toastWidth,onHidden:function(){1===d.children().length&&d.appendTo(n.getUI()),j(t,i)}}))},C=function(e){v.show().children(".elfinder-edit-loadingmsg").text(e.info)},O=function(e){n.request({data:{cmd:"editor",name:"OnlineConvert",method:"api","args[jobid]":e},preventDefault:!0}).done(function(e){w(e.apires)}).fail(function(e){e&&n.error(e),r.elfinderdialog("destroy")})},k=function(e){var i="";v.hide(),e&&e.length&&(r.elfinderdialog("destroy"),$.each(e,function(e,t){t.uri&&(i+=t.uri+"\n")}),n.upload({target:t.phash,files:[i],type:"text"}))},j=function(e,t){var i;e&&t?(i=c.conv[e]&&c.conv[e][t]&&c.conv[e][t].link?c.conv[e][t].link.replace("%s",t):"hash"===e?"/"+t+"-generator":"/convert-to-"+t,i=c.url.replace("%s",e).replace("%s",i)):i=c.url.replace("%s",T+"-conversion").replace("%s",""),v.hide(),h.hide(),g.parent().css({overflow:n.UA.iOS?"auto":"hidden"}),$(r).data("dfrd",b().done(function(e){var t;e?(t={css:{height:"100%"}},r.editor.trigger("Prepare",{node:r,editorObj:void 0,instance:g,opts:t}),e=i+encodeURIComponent(n.convAbsUrl(e)),g.attr("src",e).show().css(t.css).one("load",function(){d.appendTo(r.closest(".ui-dialog")),n.toast({msg:n.i18n("editorConvNeedUpload"),mode:"info",timeOut:1e4,width:c.toastWidth,onHidden:function(){1===d.children().length&&d.appendTo(n.getUI())},button:{text:"btnYes"}})})):(data.error&&n.error(data.error),r.elfinderdialog("destroy"))}))},T="document";g.parent().addClass("overflow-scrolling-touch"),(a=t.mime.match(/^(audio|image|video)/))&&(T=a[1]),c.useTabs?l[T]&&f.tabs("option","active",l[T]):(o=Object.keys(c.conv).length,$.each(c.conv,function(e){return e.toLowerCase()===T?(u(e,function(){$.each(c.conv,function(e){e.toLowerCase()!==T&&u(e)})}),!1):void o--}),o||$.each(c.conv,function(e){u(e)}),g.parent().scrollTop(f.children(".onlineconvert-fieldset-"+T).offset().top))},load:function(){},getContent:function(){},save:function(){},beforeclose:m,close:function(e){var t=(this.fm,$(e).data("dfrd"));t&&"pending"===t.state()&&t.reject()}}]},window.elFinder); |