{"version":3,"sources":["tabs.js","dialog.js","editors.js","notification.js","tree.js","wide.js","session.js","menu.js","windows.js","hotkeys.js","bottomGroup.js"],"names":["Tabs","obj","_$tabsPanel","$","id","_$tabs","_stack","this","STACKSIZE","_init","_it","each","data","length","splice","push","extend","prototype","_that","on","event","hasClass","setCurrent","clickAfter","parent","isRemove","removeBefore","del","stopPropagation","_hasId","find","add","getCurrentId","$tabsPanel","append","title","content","after","prevId","$tabs","stack","children","remove","i","removeAfter","path","removeClass","hide","addClass","show","setAfter","tId","tree","getTIdByPath","node","fileTree","getNodeByTId","selectNode","wide","curNode","ii","editors","curEditor","editor","cursor","getCursor","setCursor","focus","refreshOutline","text","line","ch","fn","dialog","version","author","dpuuid","Date","getTime","PROP_NAME","Dialog","_defaults","styleClass","background","panel","main","footer","headerMiddle","headerBg","closeIcon","closeIconHover","_attach","target","settings","uuid","inst","_newInst","replace","_getInst","err","_destroyDialog","removeData","prependTo","unwrap","removeAttr","_getDefaults","windowH","window","height","windowW","width","dialogH","parseInt","dialogW","okText","cancelText","footerHTML","headerHTML","hideFooter","hiddenOk","dialogHTML","bgHTML","modal","document","documentElement","scrollHeight","wrap","cloneObj","clone","get","bind","_close","$buttons","undefined","ok","_bindMove","keyup","keyCode","resize","afterInit","className","mousedown","_document","getElementById","x","clientX","style","left","y","clientY","top","ondragstart","onselectstart","onselect","setCapture","captureEvents","Event","MOUSEMOVE","MOUSEUP","onmousemove","positionX","positionY","onmouseup","releaseCapture","css","close","_closeDialog","_openDialog","msg","$dialog","position","afterOpen","_updateDialog","html","defaults","key","theme","styleName","options","otherArgs","Array","slice","call","arguments","shift","apply","concat","jQuery","autocompleteMutex","tabs","getEditorByPath","click","closeOther","currentIndex","firstIndex","_removeAllMarker","removeIndex","_initClose","ZeroClipboard","button","screenX","attr","init","config","label","tip","fileName","file","confirm_save","fmt","doc","isClean","nextId","menu","disabled","cancelSelectedNode","_initCodeMirrorHotKeys","openStartPage","dateFormat","time","date","dateObj","M+","getMonth","d+","getDate","h+","getHours","m+","getMinutes","s+","getSeconds","q+","Math","floor","S","getMilliseconds","k","test","RegExp","$1","getFullYear","substr","start_page","load","context","wideSessionId","ajax","url","type","dataType","jsonp","success","textStatus","articles","listHTML","community","article","articlePermalink","articleTitle","articleCreateTime","ret","getCurrentPath","currentPath","CodeMirror","registerHelper","word","cur","curLine","getLine","start","end","charAt","request","newWideRequest","code","getValue","cursorLine","cursorCh","autocompleteHints","state","completionActive","async","JSON","stringify","autocompleteArray","displayText","name","class","substring","console","warn","markClean","setTimeout","list","from","Pos","to","commands","autocompleteAfterDot","cm","mode","getMode","Pass","token","getTokenAt","showHint","hint","go","completeSingle","autocompleteAnyWord","auto","gotoLine","doNothing","exprInfo","result","succ","cursorCoords","copyLinesDown","selectoion","listSelections","anchor","head","max","replaceToLine","replaceRange","offset","setSelection","copyLinesUp","moveLinesUp","moveLinesDown","lastLine","jumpToDecl","openFile","findUsages","appendSearch","selectIdentifier","findWordAt","extendSelection","searcHTML","toLowerCase","contents","matches","split","startIndex","endIndex","j","keyWord","search_no_match","$search","find_usages","search_text","bottomGroup","searchTab","$it","half","getScrollInfo","clientHeight","defaultTextHeight","scrollTo","windows","flowBottom","newEditor","iconSkin","undisabled","textArea","value","fromTextArea","lineNumbers","autofocus","autoCloseBrackets","matchBrackets","highlightSelectionMatches","showToken","rulers","color","column","lineStyle","styleActiveLine","editorTheme","tabSize","editorTabSize","indentUnit","indentWithTabs","foldGutter","cursorHeight","readOnly","isGOAPI","profile","extraKeys","Ctrl-\\",".","Ctrl-/","Ctrl-I","Ctrl-L","Ctrl-E","Ctrl-D","Ctrl-B","Ctrl-S","saveFile","Shift-Ctrl-S","saveAllFiles","Shift-Alt-F","Alt-F7","Shift-Alt-Enter","isMaxEditor","restoreEditor","maxEditor","Shift-Ctrl-Up","Shift-Ctrl-Down","Shift-Alt-Up","Shift-Alt-Down","Shift-Alt-J","emmetCodeMirror","$span","evt","altKey","ctrlKey","shiftKey","which","autocomplete","random","setSize","setOption","keymap","notification","_initWS","notificationWS","ReconnectingWebSocket","channel","onopen","log","onmessage","e","parse","$notification","notificationHTML","cmd","severity","message","onclose","onerror","getCurrentNodeLastNode","returnNode","open","getNextShowNode","level","getParentNode","getNextNode","isBottomNode","isLastNode","nodes","transformToArray","getNodes","getOpenPaths","paths","getAllParents","parents","parentTId","isParents","parentPath","parentNode","isDir","indexOf","newFile","it","newDir","removeIt","removable","rename","export","isSucc","crossCompile","platform","decompress","dir","reAsyncChildNodes","refresh","$dirRMenu","$fileRMenu","setting","view","showTitle","selectedMulti","enable","autoParam","callback","onDblClick","treeId","treeNode","onRightClick","creatable","display","onClick","clickFlag","zTree","session","restore","_initSearch","_initRename","tempCursor","findModeByFileName","mime","error","$okBtn","closest","prop","trim","val","search","cancel","extension","select","oldPath","newPath","lastIndexOf","curProcessId","outlineHTML","decls","maxj","Ch","Line","Name","dblclick","_initDialog","confirm","delete","create_file","create","fileType","create_dir","goto_file","$list","hotkeys","bindList","$selected","goFileHTML","icoSkin","getClassBySuffix","goto_line","outputWS","goLintFound","nextCmd","executable","fillOutput","output","pid","build_n_run","lints","files","lint","lineNo","signal","_initFooter","unbind","subMenu","onbeforeunload","oncontextmenu","_save","getOption","gofmt","beforeSend","resetOutput","stop","run","scrollInfo","setValue","formatted","html_beautify","js_beautify","css_beautify","suffix","ready","getLayoutState","paneState","isClosed","size","setInterval","filse","currentFile","layout","side","outerLayout","west","sideRight","innerLayout","east","bottom","south","latestSessionContent","nodesToOpen","jj","isOpen","l","expandNode","kk","m","mm","n","nn","c","sessionWS","addNodes","isParent","removeNode","_initPreference","_initAbout","_initShare","hover","pic","urls","email","twitterShare","encodeURIComponent","twitter","facebook","googleplus","weibo","qqz","about","wideVersion","uptodate","new_version_available","colon","wideDownload","mouseover","openPreference","closeAllFiles","exit","location","href","openAbout","goget","goinstall","govet","build","isChange","emptys","emptysTip","tabIndex","no_empty","preference","$dialogPreference","$fontFamily","$fontSize","$goFmt","$GoBuildArgsForLinux","$GoBuildArgsForWindows","$GoBuildArgsForDarwin","$workspace","$password","$email","$locale","$theme","$editorFontFamily","$editorFontSize","$editorLineHeight","$editorTheme","$editorTabSize","$keymap","fontFamily","fontSize","goFmt","GoBuildArgsForLinux","GoBuildArgsForWindows","GoBuildArgsForDarwin","workspace","password","locale","editorFontFamily","editorFontSize","editorLineHeight","reload","jqXHR","staticServer","north__paneSelector","center__paneSelector","south__paneSelector","north__size","south__size","spacing_open","north__spacing_open","south__spacing_open","fxSpeed_open","fxSpeed_close","fxSettings_close","easing","fxSettings_open","paneSelector","togglerLength_open","togglerLength_closed","togglerAlign_closed","slideTrigger_open","spacing_closed","minSize","togglerClass","togglerTip_open","min","togglerTip_closed","restore_side","resizerTip","initClosed","center","restore_outline","restore_bottom","ondrag_end","pane","refreshEditor","onresize_end","onclose_end","onopen_end","onshow_end","addCloseBtn","maxSide","maxSideRight","maxBottom","toggleEditor","restoreBottom","restoreSide","restoreSideRight","sizePane","max_editor","editorDatas","slideOpen","defaultKeyMap","goEditor","fun","goFileTree","goOutline","goOutput","goSearch","goNotification","clearWindow","changeEditor","closeCurEditor","goFile","buildRun","$source","enterFun","keydown","index","count","scrollTop","offsetTop","_bindOutput","hotKeys","clear","preventDefault","_bindFileTree","isFirstNode","getPreNode","preNode","nextShowNode","_bindDocument","activeElement","nextPath","currentId","nextTId","_initTabs","_initFrame","$path","mouseup","offsetY","$output","Autolinker","link"],"mappings":"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","file":"wide.min.js","sourcesContent":["/*\r\n * Copyright (c) 2014-2019, b3log.org & hacpai.com\r\n *\r\n * Licensed under the Apache License, Version 2.0 (the \"License\");\r\n * you may not use this file except in compliance with the License.\r\n * You may obtain a copy of the License at\r\n *\r\n * https://www.apache.org/licenses/LICENSE-2.0\r\n *\r\n * Unless required by applicable law or agreed to in writing, software\r\n * distributed under the License is distributed on an \"AS IS\" BASIS,\r\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r\n * See the License for the specific language governing permissions and\r\n * limitations under the License.\r\n */\r\n\r\n/*\r\n * @file tabs.js\r\n *\r\n * @author Liyuan Li\r\n * @version 1.0.0.1, Dec 8, 2015\r\n */\r\nvar Tabs = function (obj) {\r\n obj._$tabsPanel = $(obj.id + \" > .tabs-panel\");\r\n obj._$tabs = $(obj.id + \" > .tabs\");\r\n obj._stack = [];\r\n\r\n this.obj = obj;\r\n this.obj.STACKSIZE = 64;\r\n\r\n this._init(obj);\r\n\r\n // DOM 元素存在时,应顺序入栈\r\n var _it = this;\r\n $(obj.id + \" > .tabs > div\").each(function () {\r\n var id = $(this).data(\"index\");\r\n if (obj._stack.length === _it.obj.STACKSIZE) {\r\n obj._stack.splice(0, 1);\r\n }\r\n if (obj._stack[obj._stack.length - 1] !== id) {\r\n _it.obj._stack.push(id);\r\n }\r\n });\r\n\r\n};\r\n\r\n$.extend(Tabs.prototype, {\r\n _init: function (obj) {\r\n var _that = this;\r\n\r\n obj._$tabs.on(\"click\", \"div\", function (event) {\r\n if ($(this).hasClass('current')) {\r\n return false;\r\n }\r\n\r\n var id = $(this).data(\"index\");\r\n _that.setCurrent(id);\r\n if (typeof (obj.clickAfter) === \"function\") {\r\n obj.clickAfter(id);\r\n }\r\n });\r\n\r\n obj._$tabs.on(\"click\", \".ico-close\", function (event) {\r\n var id = $(this).parent().data(\"index\"),\r\n isRemove = true;\r\n\r\n if (typeof obj.removeBefore === 'function') {\r\n isRemove = obj.removeBefore(id);\r\n }\r\n\r\n if (isRemove) {\r\n _that.del(id);\r\n }\r\n event.stopPropagation();\r\n });\r\n },\r\n _hasId: function (id) {\r\n var $tabs = this.obj._$tabs;\r\n if ($tabs.find('div[data-index=\"' + id + '\"]').length === 0) {\r\n return false;\r\n }\r\n return true;\r\n },\r\n add: function (data) {\r\n // 添加当前 tab\r\n if (this.getCurrentId() === data.id) {\r\n return false;\r\n }\r\n\r\n // 当前 tab 已经存在\r\n if (this._hasId(data.id)) {\r\n this.setCurrent(data.id);\r\n return false;\r\n }\r\n\r\n var $tabsPanel = this.obj._$tabsPanel,\r\n $tabs = this.obj._$tabs;\r\n\r\n $tabs.append('
' + data.output + '');\r\n } else {\r\n bottomGroup.fillOutput(content.replace(/<\\/pre>$/g, data.output + ''));\r\n }\r\n\r\n wide.curProcessId = data.pid;\r\n\r\n break;\r\n case 'run-done':\r\n bottomGroup.fillOutput($('.bottom-window-group .output > div').html().replace(/<\\/pre>$/g, data.output + ''));\r\n\r\n wide.curProcessId = undefined;\r\n $(\"#buildRun\").removeClass(\"ico-stop\")\r\n .addClass(\"ico-buildrun\").attr(\"title\", config.label.build_n_run);\r\n\r\n break;\r\n case 'start-build':\r\n case 'start-test':\r\n case 'start-vet':\r\n case 'start-install':\r\n case 'start-get':\r\n bottomGroup.fillOutput(data.output);\r\n\r\n break;\r\n case 'go test':\r\n case 'go vet':\r\n case 'go install':\r\n case 'go get':\r\n bottomGroup.fillOutput($('.bottom-window-group .output > div').html() + data.output);\r\n\r\n break;\r\n case 'git clone':\r\n bottomGroup.fillOutput($('.bottom-window-group .output > div').html() + data.output);\r\n tree.fileTree.reAsyncChildNodes(wide.curNode, \"refresh\", false);\r\n\r\n break;\r\n case 'build':\r\n case 'cross-build':\r\n bottomGroup.fillOutput($('.bottom-window-group .output > div').html() + data.output);\r\n\r\n if (data.lints) { // has build error\r\n var files = {};\r\n\r\n for (var i = 0; i < data.lints.length; i++) {\r\n var lint = data.lints[i];\r\n\r\n goLintFound.push({from: CodeMirror.Pos(lint.lineNo, 0),\r\n to: CodeMirror.Pos(lint.lineNo, 0),\r\n message: lint.msg, severity: lint.severity});\r\n\r\n files[lint.file] = lint.file;\r\n }\r\n\r\n $(\"#buildRun\").removeClass(\"ico-stop\")\r\n .addClass(\"ico-buildrun\").attr(\"title\", config.label.build_n_run);\r\n\r\n // trigger gutter lint\r\n for (var path in files) {\r\n var editor = editors.getEditorByPath(path);\r\n CodeMirror.signal(editor, \"change\", editor);\r\n }\r\n } else {\r\n if ('cross-build' === data.cmd) {\r\n var request = newWideRequest(),\r\n path = null;\r\n request.path = data.executable;\r\n request.name = data.name;\r\n\r\n $.ajax({\r\n async: false,\r\n type: 'POST',\r\n url: config.context + '/file/zip/new',\r\n data: JSON.stringify(request),\r\n dataType: \"json\",\r\n success: function (result) {\r\n if (!result.succ) {\r\n $(\"#dialogAlert\").dialog(\"open\", result.msg);\r\n\r\n return false;\r\n }\r\n\r\n path = result.data;\r\n }\r\n });\r\n\r\n if (path) {\r\n window.open(config.context + '/file/zip?path=' + path + \".zip\");\r\n }\r\n }\r\n }\r\n\r\n break;\r\n }\r\n };\r\n outputWS.onclose = function (e) {\r\n console.log('[output onclose] disconnected (' + e.code + ')');\r\n };\r\n outputWS.onerror = function (e) {\r\n console.log('[output onerror]');\r\n };\r\n },\r\n _initFooter: function () {\r\n $(\".footer .cursor\").dblclick(function () {\r\n $(\"#dialogGoLinePrompt\").dialog(\"open\");\r\n });\r\n },\r\n init: function () {\r\n this._initFooter();\r\n\r\n this._initWS();\r\n\r\n // 点击隐藏弹出层\r\n $(\"body\").bind(\"mouseup\", function (event) {\r\n // MAC 右键文件树失效\r\n if (event.which === 3) {\r\n return false;\r\n }\r\n\r\n $(\".frame\").hide();\r\n\r\n if (!($(event.target).closest(\".frame\").length === 1 || event.target.className === \"frame\")) {\r\n $(\".menu > ul > li\").unbind().removeClass(\"selected\");\r\n menu.subMenu();\r\n }\r\n });\r\n\r\n // 刷新提示\r\n window.onbeforeunload = function () {\r\n if (editors.data.length > 0) {\r\n return config.label.confirm_save;\r\n }\r\n };\r\n\r\n // 禁止鼠标右键菜单\r\n document.oncontextmenu = function () {\r\n return false;\r\n };\r\n\r\n this._initDialog();\r\n },\r\n _save: function (path, editor) {\r\n if (!path) {\r\n return false;\r\n }\r\n\r\n var request = newWideRequest();\r\n request.file = path;\r\n request.code = editor.getValue();\r\n\r\n $.ajax({\r\n type: 'POST',\r\n url: config.context + '/file/save',\r\n data: JSON.stringify(request),\r\n dataType: \"json\",\r\n success: function (result) {\r\n // reset the save state\r\n editor.doc.markClean();\r\n $(\".edit-panel .tabs > div\").each(function () {\r\n var $span = $(this).find(\"span:eq(0)\");\r\n if ($span.attr(\"title\") === path) {\r\n $span.removeClass(\"changed\");\r\n }\r\n });\r\n }\r\n });\r\n },\r\n saveFile: function () {\r\n var path = editors.getCurrentPath();\r\n if (!path) {\r\n return false;\r\n }\r\n\r\n var editor = wide.curEditor;\r\n if (editor.doc.isClean()) { // no modification\r\n return false;\r\n }\r\n\r\n if (\"text/x-go\" === editor.getOption(\"mode\")) {\r\n wide.gofmt(path, wide.curEditor); // go fmt will save\r\n\r\n // build the file at once\r\n var request = newWideRequest();\r\n request.file = path;\r\n request.code = editor.getValue();\r\n request.nextCmd = \"\"; // build only, no following operation\r\n $.ajax({\r\n type: 'POST',\r\n url: config.context + '/build',\r\n data: JSON.stringify(request),\r\n dataType: \"json\",\r\n beforeSend: function () {\r\n bottomGroup.resetOutput();\r\n },\r\n success: function (result) {\r\n }\r\n });\r\n\r\n // refresh outline\r\n wide.refreshOutline();\r\n\r\n return;\r\n }\r\n\r\n wide._save(path, wide.curEditor);\r\n },\r\n stop: function () {\r\n if ($(\"#buildRun\").hasClass(\"ico-buildrun\")) {\r\n menu.run();\r\n return false;\r\n }\r\n\r\n if (!wide.curProcessId) {\r\n return false;\r\n }\r\n\r\n var request = newWideRequest();\r\n request.pid = wide.curProcessId;\r\n\r\n $.ajax({\r\n type: 'POST',\r\n url: config.context + '/stop',\r\n data: JSON.stringify(request),\r\n dataType: \"json\",\r\n success: function (result) {\r\n $(\"#buildRun\").removeClass(\"ico-stop\")\r\n .addClass(\"ico-buildrun\").attr(\"title\", config.label.build_n_run);\r\n }\r\n });\r\n },\r\n gofmt: function (path, editor) {\r\n var cursor = editor.getCursor();\r\n var scrollInfo = editor.getScrollInfo();\r\n\r\n var request = newWideRequest();\r\n request.file = path;\r\n request.code = editor.getValue();\r\n request.cursorLine = cursor.line;\r\n request.cursorCh = cursor.ch;\r\n\r\n $.ajax({\r\n async: false, // sync\r\n type: 'POST',\r\n url: config.context + '/go/fmt',\r\n data: JSON.stringify(request),\r\n dataType: \"json\",\r\n success: function (result) {\r\n if (result.succ) {\r\n editor.setValue(result.data.code);\r\n editor.setCursor(cursor);\r\n editor.scrollTo(null, scrollInfo.top);\r\n\r\n wide._save(path, editor);\r\n }\r\n }\r\n });\r\n },\r\n fmt: function (path, editor) {\r\n var mode = editor.getOption(\"mode\");\r\n\r\n var cursor = editor.getCursor();\r\n var scrollInfo = editor.getScrollInfo();\r\n\r\n var request = newWideRequest();\r\n request.file = path;\r\n request.code = editor.getValue();\r\n request.cursorLine = cursor.line;\r\n request.cursorCh = cursor.ch;\r\n\r\n var formatted = null;\r\n\r\n switch (mode) {\r\n case \"text/x-go\":\r\n $.ajax({\r\n async: false, // sync\r\n type: 'POST',\r\n url: config.context + '/go/fmt',\r\n data: JSON.stringify(request),\r\n dataType: \"json\",\r\n success: function (result) {\r\n if (result.succ) {\r\n formatted = result.data.code;\r\n }\r\n }\r\n });\r\n\r\n break;\r\n case \"text/html\":\r\n formatted = html_beautify(editor.getValue());\r\n break;\r\n case \"text/javascript\":\r\n case \"application/json\":\r\n formatted = js_beautify(editor.getValue());\r\n break;\r\n case \"text/css\":\r\n formatted = css_beautify(editor.getValue());\r\n break;\r\n default :\r\n break;\r\n }\r\n\r\n if (formatted) {\r\n editor.setValue(formatted);\r\n editor.setCursor(cursor);\r\n editor.scrollTo(null, scrollInfo.top);\r\n\r\n wide._save(path, editor);\r\n }\r\n },\r\n getClassBySuffix: function (suffix) {\r\n var iconSkin = \"ico-ztree-other \";\r\n switch (suffix) {\r\n case \"html\":\r\n case \"htm\":\r\n iconSkin = \"ico-ztree-html \";\r\n break;\r\n case \"go\":\r\n iconSkin = \"ico-ztree-go \";\r\n break;\r\n case \"css\":\r\n iconSkin = \"ico-ztree-css \";\r\n break;\r\n case \"txt\":\r\n iconSkin = \"ico-ztree-text \";\r\n break;\r\n case \"sql\":\r\n iconSkin = \"ico-ztree-sql \";\r\n break;\r\n case \"properties\":\r\n iconSkin = \"ico-ztree-pro \";\r\n break;\r\n case \"md\":\r\n iconSkin = \"ico-ztree-md \";\r\n break;\r\n case \"js\", \"json\":\r\n iconSkin = \"ico-ztree-js \";\r\n break;\r\n case \"xml\":\r\n iconSkin = \"ico-ztree-xml \";\r\n break;\r\n case \"jpg\":\r\n case \"jpeg\":\r\n case \"bmp\":\r\n case \"gif\":\r\n case \"png\":\r\n case \"svg\":\r\n case \"ico\":\r\n iconSkin = \"ico-ztree-img \";\r\n break;\r\n }\r\n\r\n return iconSkin;\r\n }\r\n};\r\n\r\n$(document).ready(function () {\r\n wide.init();\r\n tree.init();\r\n menu.init();\r\n hotkeys.init();\r\n session.init();\r\n notification.init();\r\n editors.init();\r\n windows.init();\r\n bottomGroup.init();\r\n});\r\n","/*\r\n * Copyright (c) 2014-2019, b3log.org & hacpai.com\r\n *\r\n * Licensed under the Apache License, Version 2.0 (the \"License\");\r\n * you may not use this file except in compliance with the License.\r\n * You may obtain a copy of the License at\r\n *\r\n * https://www.apache.org/licenses/LICENSE-2.0\r\n *\r\n * Unless required by applicable law or agreed to in writing, software\r\n * distributed under the License is distributed on an \"AS IS\" BASIS,\r\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r\n * See the License for the specific language governing permissions and\r\n * limitations under the License.\r\n */\r\n\r\n/*\r\n * @file session.js\r\n *\r\n * @author Liyuan Li\r\n * @version 1.1.0.1, Dec 8, 2015\r\n */\r\nvar session = {\r\n init: function () {\r\n this._initWS();\r\n\r\n var getLayoutState = function (paneState) {\r\n var state = 'normal';\r\n if (paneState.isClosed) {\r\n state = 'min';\r\n } else if (paneState.size >= $('body').width()) {\r\n state = 'max';\r\n }\r\n\r\n return state;\r\n };\r\n\r\n // save session content every 30 seconds\r\n setInterval(function () {\r\n var request = newWideRequest(),\r\n filse = [],\r\n fileTree = [],\r\n currentId = editors.getCurrentId(),\r\n currentFile = currentId ? editors.getCurrentPath() : \"\";\r\n\r\n editors.tabs.obj._$tabs.find(\"div\").each(function () {\r\n var $it = $(this);\r\n if ($it.find(\"span:eq(0)\").attr(\"title\") !== config.label.start_page) {\r\n filse.push($it.find(\"span:eq(0)\").attr(\"title\"));\r\n }\r\n });\r\n\r\n fileTree = tree.getOpenPaths();\r\n\r\n request.currentFile = currentFile; // current editor file\r\n request.fileTree = fileTree; // file tree expansion state\r\n request.files = filse; // editor tabs\r\n\r\n\r\n request.layout = {\r\n \"side\": {\r\n \"size\": windows.outerLayout.west.state.size,\r\n \"state\": getLayoutState(windows.outerLayout.west.state)\r\n },\r\n \"sideRight\": {\r\n \"size\": windows.innerLayout.east.state.size,\r\n \"state\": getLayoutState(windows.innerLayout.east.state)\r\n },\r\n \"bottom\": {\r\n \"size\": windows.innerLayout.south.state.size,\r\n \"state\": getLayoutState(windows.innerLayout.south.state)\r\n }\r\n };\r\n\r\n $.ajax({\r\n type: 'POST',\r\n url: config.context + '/session/save',\r\n data: JSON.stringify(request),\r\n dataType: \"json\",\r\n success: function (result) {\r\n }\r\n });\r\n }, 30000);\r\n },\r\n restore: function () {\r\n if (!config.latestSessionContent) {\r\n return;\r\n }\r\n\r\n var fileTree = config.latestSessionContent.fileTree,\r\n files = config.latestSessionContent.files,\r\n currentFile = config.latestSessionContent.currentFile,\r\n id = \"\",\r\n nodesToOpen = [];\r\n\r\n var nodes = tree.fileTree.transformToArray(tree.fileTree.getNodes());\r\n\r\n for (var i = 0, ii = nodes.length; i < ii; i++) {\r\n // expand tree\r\n for (var j = 0, jj = fileTree.length; j < jj; j++) {\r\n if (nodes[i].path === fileTree[j]) {\r\n // expand this node only if its parents are open\r\n var parents = tree.getAllParents(tree.fileTree.getNodeByTId(nodes[i].tId)),\r\n isOpen = true;\r\n for (var l = 0, max = parents.length; l < max; l++) {\r\n if (parents[l].open === false) {\r\n isOpen = false;\r\n }\r\n }\r\n if (isOpen) {\r\n tree.fileTree.expandNode(nodes[i], true, false, true);\r\n } else {\r\n // flag it is open\r\n nodes[i].open = true;\r\n }\r\n break;\r\n }\r\n }\r\n\r\n // open editors\r\n for (var k = 0, kk = files.length; k < kk; k++) {\r\n if (nodes[i].path === files[k]) {\r\n nodesToOpen.push(nodes[i]);\r\n break;\r\n }\r\n }\r\n\r\n if (nodes[i].path === currentFile) {\r\n id = nodes[i].path;\r\n\r\n // FIXME: 上面的展开是异步进行的,所以执行到这里的时候可能还没有展开完,导致定位不了可视区域\r\n tree.fileTree.selectNode(nodes[i]);\r\n wide.curNode = nodes[i];\r\n }\r\n }\r\n\r\n // handle the open sequence of editors\r\n for (var m = 0, mm = files.length; m < mm; m++) {\r\n for (var n = 0, nn = nodesToOpen.length; n < nn; n++) {\r\n if (nodesToOpen[n].path === files[m]) {\r\n tree.openFile(nodesToOpen[n]);\r\n break;\r\n }\r\n }\r\n }\r\n\r\n // set the current editor\r\n editors.tabs.setCurrent(id);\r\n for (var c = 0, max = editors.data.length; c < max; c++) {\r\n if (id === editors.data[c].id) {\r\n wide.curEditor = editors.data[c].editor;\r\n break;\r\n }\r\n } \r\n },\r\n _initWS: function () {\r\n // Used for session retention, server will release all resources of the session if this channel closed\r\n var sessionWS = new ReconnectingWebSocket(config.channel + '/session/ws?sid=' + config.wideSessionId);\r\n\r\n sessionWS.onopen = function () {\r\n console.log('[session onopen] connected');\r\n\r\n var dateFormat = function (time, fmt) {\r\n var date = new Date(time);\r\n var dateObj = {\r\n \"M+\": date.getMonth() + 1,\r\n \"d+\": date.getDate(),\r\n \"h+\": date.getHours(),\r\n \"m+\": date.getMinutes(),\r\n \"s+\": date.getSeconds(),\r\n \"q+\": Math.floor((date.getMonth() + 3) / 3),\r\n \"S\": date.getMilliseconds()\r\n };\r\n if (/(y+)/.test(fmt))\r\n fmt = fmt.replace(RegExp.$1, (date.getFullYear() + \"\").substr(4 - RegExp.$1.length));\r\n for (var k in dateObj)\r\n if (new RegExp(\"(\" + k + \")\").test(fmt)) {\r\n fmt = fmt.replace(RegExp.$1, (RegExp.$1.length === 1)\r\n ? (dateObj[k]) : ((\"00\" + dateObj[k]).substr((\"\" + dateObj[k]).length)));\r\n }\r\n return fmt;\r\n };\r\n\r\n var data = {type: \"Network\", severity: \"INFO\",\r\n message: \"Connected to server [sid=\" + config.wideSessionId + \"], \" + dateFormat(new Date().getTime(), 'yyyy-MM-dd hh:mm:ss')},\r\n $notification = $('.bottom-window-group .notification > table'),\r\n notificationHTML = '';\r\n\r\n notificationHTML += '