var animate_time=160;define("app/src/edit/main",["lib/jquery-lib","lib/util","lib/contextMenu/jquery-contextMenu","lib/artDialog/jquery-artDialog","./taskTap","./toolbar","./edit","./mode","../../common/core","../../tpl/search","../../tpl/upload"],function(e){e("lib/jquery-lib"),e("lib/util"),e("lib/contextMenu/jquery-contextMenu"),e("lib/artDialog/jquery-artDialog"),Tap=e("./taskTap"),Toolbar=e("./toolbar"),Editor=e("./edit"),core=e("../../common/core"),rightMenu=Tap.rightMenu,preview=Toolbar.preview,Global={topbar_height:40,isIE:!-[1]},$(document).ready(function(){Tap.init(),Toolbar.init(),""!=G.frist_file&&Editor.add(G.frist_file),window.onbeforeunload=function(){return Editor.hasFileSave()?LNG.if_save_file:void 0}})}),define("app/src/edit/taskTap",[],function(){var e=function(){$(".edit_tab .tab").live("mouseenter",function(){$(this).hasClass("this")||$(this).addClass("hover"),$(this).unbind("mousedown").mousedown(function(e){$(this).hasClass("this")||$.nodeName(e.target,"A")||($(this).removeClass("hover").addClass("this"),Editor.select($(this).attr("uuid")))})}).die("mouseleave").live("mouseleave",function(){$(this).removeClass("hover")}).die("dblclick").live("dblclick",function(e){Editor.remove($(this).attr("uuid")),stopPP(e)}),$(".edit_tab").die("dblclick").live("dblclick",function(e){Editor.add(),stopPP(e)}),$(".edit_tab .tab .close").live("click",function(){var e=$(this).parent().attr("uuid");Editor.remove(e)})},t=function(){$(".context-menu-list").filter(":visible").trigger("contextmenu:hide")},a=function(){$("body").click(t).contextmenu(t),$.contextMenu({zIndex:9999,selector:".edit_tab_menu",items:{close:{name:LNG.close,icon:"remove",accesskey:"d"},close_right:{name:LNG.close_right,icon:"remove-sign",accesskey:"r"},close_others:{name:LNG.close_others,icon:"remove-circle",accesskey:"o"},sep1:"--------",create:{name:LNG.newfile,icon:"plus",accesskey:"n"},preview:{name:LNG.preview,icon:"globe",accesskey:"p"}},callback:function(e,t){var a=t.$trigger,i=a.attr("uuid");switch(e){case"close":Editor.remove();break;case"close_right":var s=$(".edit_tab .tabs .tab").index(a);$(".edit_tab .tabs .tab:gt("+s+")").each(function(){Editor.remove($(this).attr("uuid"))});break;case"close_others":$(".edit_tab .tabs .tab").each(function(){var e=$(this).attr("uuid");e!=i&&Editor.remove(e)});break;case"create":Editor.add();break;case"preview":Toolbar.doAction("preview");break;default:}}}),$(".context-menu-root").addClass("fadein")},i=function(){var e,t,a,i,s=!1,o=!1,n=0,r=0,l=0,c=0,d=0,p=0;$(".edit_tab .tab").die("mousedown").live("mousedown",function(t){$.nodeName(t.target,"A")||(e=$.nodeName(t.target,"SPAN")?$(t.target).parent():$(this),s=!0,this.setCapture&&this.setCapture(),$(document).mousemove(function(e){f(e)}),$(document).one("mouseup",function(e){return m(e),this.releaseCapture&&this.releaseCapture(),stopPP(e),!1}))});var u=function(i){o=!0,n=i.pageX,$tab_parent=$(".edit_tab"),t=$(".edit_tab .tab"),$(".draggable-dragging").remove(),a=e.clone().addClass("draggable-dragging").prependTo("body"),c=parseInt(t.css("margin-right")),d=$tab_parent.width(),p=$tab_parent.get(0).getBoundingClientRect().left,p+=$(window).scrollLeft(),r=e.get(0).getBoundingClientRect().left,l=parseInt(t.css("width"));var s=e.get(0).getBoundingClientRect().top-parseInt(e.css("margin-top")),u=i.clientX-n+r;$("body").prepend("
"),a.css({width:l+"px",top:s,left:u}),e.css("opacity",0)},f=function(i){if(s){0==o&&u(i);var f=i.clientX-n+r;p>f||f>p+d-l||(a.css("left",f),t.each(function(){var t=$(this).get(0).getBoundingClientRect().left;if(f>t&&t+l/2+c>f){if(e.attr("uuid")==$(this).attr("uuid"))return;h($(this).attr("uuid"),"left")}if(f>t-l/2+c&&t>f){if(e.attr("uuid")==$(this).attr("uuid"))return;h($(this).attr("uuid"),"right")}}))}},h=function(a,s){if(!e.is(":animated")||i!=a){i=a,e.stop(!0,!0),$(".insertTemp").remove(),t=$(".edit_tab .tab");var o=e.width(),n=$(".edit_tab .tab_"+a),r=e.clone(!0).insertAfter(e).css({"margin-right":"0px",border:"none"}).addClass("insertTemp");"left"==s?e.after(n).css("width","0px"):(e.before(n).css("width","0px"),n.before(r)),e.animate({width:o+"px"},animate_time),r.animate({width:"0px"},animate_time,function(){$(this).remove(),t=$(".edit_tab .tab")})}},m=function(){s=!1,o=!1,startTime=0,$(".dragMaskView").remove(),void 0!=a&&(r=e.get(0).getBoundingClientRect().left,a.animate({left:r+"px"},animate_time,function(){e.css("opacity",1),$(this).remove()}))}},s=function(e,t,a){var i=1.5*animate_time,s=122,o=s,n=$(".edit_tab .tab"),r=$(".edit_tab .tabs").width()-4,l=parseInt(n.css("margin-right"))+parseInt(n.css("border-right")),c=parseInt($(".edit_tab .add").outerWidth())+2*l,d=n.length,p=Math.floor((r-c)/(s+l));switch(d>p&&(o=Math.floor((r-c)/d)-l),e){case"add":$(".edit_tab .tabs .this").css({"margin-top":"30px",width:o}).animate({"margin-top":"0px"},i),n.animate({width:o+"px"},i);break;case"remove":void 0!=a&&Editor.select(a),t.animate({width:"0","margin-top":"+=30"},i,function(){t.remove()}),n.animate({width:o+"px"},i);break;case"resize":n.css("width",o+"px");break;default:}};return{rightMenu:{hidden:t},resetWidth:s,init:function(){$("body").live("resize",function(){s("resize")}),e(),i(),a(),Mousetrap.bind(["ctrl+s","command+s"],function(e){e.preventDefault(),e.returnvalue=!1,Editor.save()})}}}),define("app/src/edit/toolbar",[],function(){var e=function(){$(window).bind("resize",function(){i.resize()}),$("#fontsize li").mouseenter(function(){$(this).addClass("lihover"),$(this).unbind("click").click(function(){var e=$(this).text();$("a.font span").text(e),Editor.config("fontsize",e),$(".dropbox").css("display","none"),$("#fontsize li.this").removeClass("this"),$(this).addClass("this"),Editor.current()&&Editor.current().focus()})}).mouseleave(function(){$(this).toggleClass("lihover")}),$(".tools a[action=wordbreak],.tools a[action=display],.tools a[action=auto_complete]").bind("click",function(){$(this).toggleClass("select")}),$(".tools a").bind("click",function(){var e=$(this).attr("action");t(e),Editor.current()&&Editor.current().focus()}),$("#codetheme li").mouseenter(function(){$(this).addClass("lihover"),$(this).unbind("click").click(function(){var e=$(this).attr("theme");Editor.config("theme",e),$("a[action=codetheme] span").text($(this).html()),$(".dropbox").css("display","none"),$("#codetheme li.this").removeClass("this"),$(this).addClass("this")})}).mouseleave(function(){$(this).toggleClass("lihover")}),$(".tools .left a").tooltip({placement:"bottom"})},t=function(e){switch(e){case"max":FrameCall.father("core.editorFull","''");break;default:}if(Editor.current())switch(e){case"save":Editor.save();break;case"saveall":Editor.saveall();break;case"pre":Editor.current().undo();break;case"next":Editor.current().redo();break;case"find":Editor.current().execCommand("find");break;case"gotoline":Editor.current().commands.exec("gotoline",Editor.current());break;case"font":"block"==$("#fontsize").css("display")?$("#fontsize").fadeOut(100):$("#fontsize").fadeIn(100);break;case"codetheme":"block"==$("#codetheme").css("display")?$("#codetheme").fadeOut(100):$("#codetheme").fadeIn(100);break;case"wordbreak":Editor.config("wrap");break;case"display":Editor.config("display");break;case"setting":Editor.config("setting");break;case"auto_complete":Editor.config("auto_complete");break;case"preview":var t=urlDecode(urlDecode(Editor.current().kod.filename));t=core.path2url(t),i.open(t);break;case"close":Editor.remove();break;default:}},a=function(){$(".frame_right input").keyEnter(i.refresh);var e=!1,t=0,a=0;$drag=$(".frame_right .resize"),$box_left=$(".frame_left"),$box=$drag.parent(),$drag.die("mousedown").live("mousedown",function(e){return 1!=e.which?!0:(s(e),this.setCapture&&this.setCapture(),$(document).mousemove(function(e){o(e)}),$(document).one("mouseup",function(e){return n(e),this.releaseCapture&&this.releaseCapture(),!1}),void 0)});var s=function(i){e=!0,t=i.pageX,a=$box.width(),$drag.addClass("resize_active"),$("body").css("cursor","col-resize"),$box.append('')},o=function(i){if(!e)return!0;var s=i.pageX-t,o=a-s,n=$(window).width();o>=n-50&&(o=n-50),100>=o&&(o=100),$box_left.css("width",n-o).find(".edit_body").css("width",n-o),$box.width(o),Tap.resetWidth("resize"),Editor.config("resize")},n=function(){return e?(e=!1,$drag.removeClass("resize_active"),$("body").css("cursor","default"),$box.find(".mask_view").remove(),void 0):!1}},i=function(){var e=$(".frame_right"),t=$(".frame_left"),a=e.find("input"),s=400;return{open:function(t){if("block"!=e.css("display")){e.css("display","block").css("width",s);var o=$(window).width()-s;$(".frame_left").css("width",o).find(".edit_body").css("width",o)}a.val(t),e.find(".open_ie").attr("href",t),e.find("iframe").attr("src",t),i.resize()},resize:function(){if("block"==e.css("display")){var a=e.width(),i=$(window).width();a>=i-50&&(a=i-50),100>=a&&(a=100),e.width(a),t.css("width",i-a).find(".edit_body").css("width",i-a)}Tap.resetWidth("resize"),Editor.config("resize")},close:function(){e.css("display","none"),a.val(""),e.find("iframe").attr("src",""),$(".frame_left").css("width","100%").find(".edit_body").css("width","100%"),Tap.resetWidth("resize"),Editor.config("resize")},refresh:function(){var t=a.attr("value");e.find(".open_ie").attr("href",t),e.find("iframe").attr("src",t)}}}();return{preview:i,doAction:t,init:function(){e(),a()}}}),define("app/src/edit/edit",["./mode"],function(e){var t={theme:G.codetheme,auto_complete:!0,fontsize:14,wrap:!0,display:!1},a={},i=void 0,s=e("./mode");ace.require("ace/ext/language_tools");var o=function(e,t){if(void 0==t||void 0==e||1>a.length)return"";for(var i in a)if(a[i].kod[e]==t)return a[i].kod.uuid;return""},n=function(e){var t,i="id_"+UUID();if(void 0==e)return t={uuid:i,name:"newfile.txt",charset:"utf-8",filename:"",mode:s.get("txt")},r(t),l(t),$(".edit_body .this").removeClass("this"),$(".edit_body pre#"+i).addClass("this"),void 0;t={charset:"utf-8",uuid:i,name:core.pathThis(urlDecode(urlDecode(e))),filename:e,mode:s.get(core.pathExt(urlDecode(e)))},r(t,!0);var o=art.dialog({title:!1,content:LNG.getting,icon:"warning"});$.ajax({dataType:"json",url:"./index.php?editor/fileGet&filename="+e,error:function(e,a,i){o.close(),v(t.uuid),core.ajaxError(e,a,i)},success:function(e){if(o.close(),!e.code)return Tips.tips(e),v(t.uuid),void 0;var s=e.data;a[i]=void 0,$("pre#"+i).text(s.content),l(t),$(".edit_body .this").removeClass("this"),$(".edit_body pre#"+i).addClass("this");var n=a[i];n.kod.charset=s.charset,n.navigateTo(0),n.moveCursorTo(0,0)}})},r=function(e,t){var a='";$(a).insertBefore(".edit_tab .add");var i='';if($(".edit_body .tabs").append(i),c(e.uuid),t){var s=animate_time;animate_time=1,Tap.resetWidth("add"),animate_time=s}else Tap.resetWidth("add")},l=function(e){var s=ace.edit(e.uuid);s.setTheme("ace/theme/"+t.theme),void 0!=e.mode&&s.getSession().setMode("ace/mode/"+e.mode),s.getSession().setTabSize(4),s.getSession().setUseSoftTabs(!0),s.getSession().setUseWrapMode(t.wrap),s.setShowPrintMargin(!1),s.setDragDelay(100),s.setShowInvisibles(t.display),s.setFontSize(t.fontsize),s.setOptions({enableBasicAutocompletion:!0,enableSnippets:!0,enableLiveAutocompletion:t.auto_complete}),s.on("change",function(){u(s,!0)}),s.commands.addCommand({name:"editSave",bindKey:{win:"Ctrl-S",mac:"Command-S",sender:"editor|cli"},exec:function(e){f(e.kod.uuid)}}),s.commands.addCommand({name:"preview",bindKey:{win:"Ctrl-Shift-S",mac:"Command-Shift-S"},exec:function(){preview.open(),Toolbar.doAction("preview")}}),s.kod={uuid:e.uuid,name:e.name,charset:"ansii",filename:e.filename},a[e.uuid]=s,i=e.uuid,a[i].focus()},c=function(e,t){$(".edit_tab .this").removeClass("this"),$(".edit_tab .tab_"+e).addClass("this"),i=e,void 0!=a[e]&&a[e].focus(),1==t&&$(".edit_tab .this").stop(!0,!0).animate({opacity:.3},100).animate({opacity:.8},100).animate({opacity:.5},40).animate({opacity:1},40,function(){a[e].focus()})},d=function(e,t){void 0!=e&&""!=e&&(c(e,t),$(".edit_body .this").removeClass("this"),$(".edit_body pre#"+e).addClass("this"))},p=function(e,i,s){var o=a;void 0!=s&&(o={},o[s]=a[s]);for(var n in o){var r=o[n];switch(e){case"resize":r.resize();break;case"theme":t[e]=i,r.setTheme("ace/theme/"+i);break;case"fontsize":t[e]=i,r.setFontSize(i);break;case"wrap":t[e]=!r.getSession().getUseWrapMode(),r.getSession().setUseWrapMode(t[e]);break;case"display":t[e]=!r.getShowInvisibles(),r.setShowInvisibles(t[e]);break;case"setting":r.commands.exec("showSettingsMenu",r);break;case"auto_complete":t[e]=!r.$enableBasicAutocompletion,r.setOptions({enableLiveAutocompletion:t[e]}),r.$enableBasicAutocompletion=t[e];break;default:}}"theme"==e&&$.ajax({url:"./index.php?setting/set&k=codetheme&v="+i,dataType:"json",success:function(e){tips(e)}})},u=function(e,t){t!=e.hasChanged&&(e.hasChanged=t,$(".edit_tab .tabs .tab_"+e.kod.uuid).toggleClass("edit_changed"))},f=function(e,t){if(void 0!=i){void 0==e&&(e=i),void 0==t&&(t=!1);var s=a[e];if(s.hasChanged){if(void 0==s||""==s)return tips(LNG.data_error,"warning"),void 0;b().focus();var o=urlEncode2(s.getValue()),n=s.kod.filename;$.ajax({type:"POST",async:!1,dataType:"json",url:"./index.php?editor/fileSave",data:"path="+n+"&charset="+s.kod.charset+"&filestr="+o,beforeSend:function(){Tips.loading(LNG.sending)},error:core.ajaxError,success:function(a){Tips.close(a),a.code&&(u(s,!1),t&&v(e))}})}}},h=function(){for(var e in a)f(e)},m=function(e){if(void 0==e&&(e=i),void 0!=a[e]){var t=a[e];t.hasChanged?$.dialog({title:LNG.warning,resize:!1,background:"#fff",opacity:.4,lock:!0,icon:"question",content:t.kod.name+"
').fadeIn(t)},error:core.ajaxError,success:function(e){if(!e.code)return a.hide().html(e.data).fadeIn(t),void 0;if(0==e.data.filelist.length&&0==e.data.folderlist.length)return a.hide().html(LNG.search_null).fadeIn(t),void 0;a.hide();var i=template.compile(s.list);e.data.LNG=LNG,$(i(e.data)).insertAfter(".search_result .message").fadeIn(t)}}),void 0):(a.hide().html(LNG.search_info).fadeIn(t),void 0)};o()},upload:function(){G.upload_path=G.this_path;var e=urlDecode(G.upload_path);uploader.option("server","index.php?explorer/fileUpload&path="+G.upload_path);var t=30>=e.length?e:"..."+e.substr(e.length-30);if(0!=$(".dialog_file_upload").length)return $(".file_upload .upload_path b").html(t),$.dialog.list.dialog_file_upload.display(!0),void 0;var a=require("../tpl/upload"),i=template.compile(a.html),s=WebUploader.Base.formatSize(G.upload_max);$.dialog({padding:5,height:430,resize:!0,ico:core.ico("up"),id:"dialog_file_upload",fixed:!0,title:LNG.upload_muti,content:i({LNG:LNG,maxsize:s}),close:function(){$.each(uploader.getFiles(),function(e,t){uploader.skipFile(t),uploader.removeFile(t)})}}),$(".file_upload .tips").tooltip({placement:"bottom"}),$(".file_upload .upload_path").tooltip({placement:"bottom",title:function(){return G.upload_path}}),$(".file_upload .upload_path b").html(t),$(".file_upload .top_nav a.menu").unbind("click").bind("click",function(){$(this).hasClass("tab_upload")?($(".file_upload .tab_upload").addClass("this"),$(".file_upload .tab_download").removeClass("this"),$(".file_upload .upload_box").removeClass("hidden"),$(".file_upload .download_box").addClass("hidden")):($(".file_upload .tab_upload").removeClass("this"),$(".file_upload .tab_download").addClass("this"),$(".file_upload .upload_box").addClass("hidden"),$(".file_upload .download_box").removeClass("hidden"))}),$(".file_upload .download_box button").unbind("click").bind("click",function(){core.server_dwonload(G.upload_path)}),uploader.addButton({id:"#picker"})},server_dwonload:function(e){var t=$(".download_box"),a=t.find("#download_list"),i=t.find("input").val();if(t.find("input").val(""),!i||"http"!=i.substr(0,4))return core.tips.tips("url false!",!1),void 0;var s=UUID(),o='