From 8a5522e305890026f27ea83f2368eb4338cd8410 Mon Sep 17 00:00:00 2001 From: coderaiser Date: Wed, 27 Nov 2013 08:15:58 +0000 Subject: [PATCH] feature(cloudfunc) add getCombineURL, getCombineArray, isCombineURL --- lib/client/console.js | 8 ++++---- lib/client/dom.js | 13 ------------- lib/client/edit.js | 4 ++-- lib/cloudfunc.js | 26 +++++++++++++++++++++++++- lib/server.js | 9 ++++----- 5 files changed, 35 insertions(+), 25 deletions(-) diff --git a/lib/client/console.js b/lib/client/console.js index 62f5f6a6..a47f7150 100644 --- a/lib/client/console.js +++ b/lib/client/console.js @@ -1,5 +1,5 @@ -var CloudCmd, Util, DOM, $; -(function(CloudCmd, Util, DOM) { +var CloudCmd, Util, DOM, CloudFunc, $; +(function(CloudCmd, Util, DOM, CloudFunc) { 'use strict'; var Buffer = { @@ -141,7 +141,7 @@ var CloudCmd, Util, DOM, $; lDir + 'jqconsole.css', lDir + 'ansi.css' ], - lAllCSS = DOM.combineURL(lCSS), + lAllCSS = CloudFunc.getCombineURL(lCSS), lFiles = [ lDir + 'jqconsole.js', lAllCSS @@ -178,4 +178,4 @@ var CloudCmd, Util, DOM, $; init(); } -})(CloudCmd, Util, DOM); +})(CloudCmd, Util, DOM, CloudFunc); diff --git a/lib/client/dom.js b/lib/client/dom.js index 19cbf336..039b9d08 100644 --- a/lib/client/dom.js +++ b/lib/client/dom.js @@ -1107,19 +1107,6 @@ var CloudCmd, Util, DOM, CloudFunc, Dialog; return lRet; } - - this.combineURL = function(names) { - var url, - COMBINE = '/combine', - nameStr = names + ''; - - nameStr = Util.replaceStr(nameStr, ',', ':'); - url = COMBINE + nameStr; - - return url; - }; - - /** * load jquery from google cdn or local copy * @param pCallBack diff --git a/lib/client/edit.js b/lib/client/edit.js index fa0a8569..9feda662 100644 --- a/lib/client/edit.js +++ b/lib/client/edit.js @@ -181,7 +181,7 @@ var CloudCmd, Util, DOM, CloudFunc, ace, DiffProto, diff_match_patch; LIBDIR + 'diff.js', LIBDIR + 'diff/diff-match-patch.js' ], - url = DOM.combineURL(libs); + url = CloudFunc.getCombineURL(libs); DOM.jsload(url, function() { var patch; @@ -206,7 +206,7 @@ var CloudCmd, Util, DOM, CloudFunc, ace, DiffProto, diff_match_patch; DIR + 'mode-javascript.js', ], lAce = DIR + 'ace.js', - lURL = DOM.combineURL(lFiles); + lURL = CloudFunc.getCombineURL(lFiles); DOM.anyLoadOnLoad([lURL, lAce], function() { diff --git a/lib/cloudfunc.js b/lib/cloudfunc.js index 5a9cab15..4cb01bf6 100644 --- a/lib/cloudfunc.js +++ b/lib/cloudfunc.js @@ -7,7 +7,6 @@ var Util, exports, CloudFunc = {}; * Модуль, содержащий функции, которые * будут работать и на клиенте и на сервере */ - var FS; if(exports) { if(!global.cloudcmd) return console.log( @@ -22,6 +21,8 @@ var Util, exports, CloudFunc = {}; CloudFunc = exports; } + var FS, + COMBINE = '/combine'; /* Путь с которым мы сейчас работаем */ CloudFunc.Path = ''; @@ -41,6 +42,29 @@ var Util, exports, CloudFunc = {}; CloudFunc.LEFTPANEL = 'left'; CloudFunc.RIGHTPANEL = 'right'; + CloudFunc.getCombineURL = function(names) { + var url, + nameStr = names + ''; + + nameStr = Util.replaceStr(nameStr, ',', ':'); + url = COMBINE + nameStr; + + return url; + }; + + CloudFunc.getCombineArray = function(url) { + var str = Util.removeStrOneTime(url, COMBINE), + names = str.split(':'); + + return names; + }; + + CloudFunc.isCombineURL = function(url) { + var ret = Util.isContainStrAtBegin(url, COMBINE); + + return ret; + }; + CloudFunc.formatMsg = function(pMsg, pName, pStatus) { var status = pStatus || 'ok', name = !pName ? '': '("' + pName + '")', diff --git a/lib/server.js b/lib/server.js index aa295c3f..5ddbd6a1 100644 --- a/lib/server.js +++ b/lib/server.js @@ -223,7 +223,7 @@ isGzip = main.isGZIP(p.request), path = params.name, COMBINE = '/combine/', - isCombine = Util.isContainStrAtBegin(path, COMBINE), + isCombine = CloudFunc.isCombineURL(path), readPipe = function() { main.mainSetHeader({ name : names[0], @@ -253,9 +253,8 @@ }; if (isCombine) { - path = Util.removeStrOneTime(path, COMBINE); - names = path.split(':'); - n = names.length; + names = CloudFunc.getCombineArray(path); + n = names.length; if (!config.minify) readPipe(); @@ -287,7 +286,7 @@ ret = Util.checkExtension(name, ['.js', '.css', '.html']); - return ret;c + return ret; } exports.start = start;