From 3ebb520327a72c3809c924d3e24cef47f4a008e3 Mon Sep 17 00:00:00 2001 From: coderaiser Date: Fri, 28 Dec 2012 06:07:02 -0500 Subject: [PATCH] refactored --- config.json | 2 +- lib/client/dom.js | 147 +++++++++++++++++++--------------------------- lib/server.js | 8 +-- 3 files changed, 66 insertions(+), 91 deletions(-) diff --git a/config.json b/config.json index 270056fa..a0a1012c 100644 --- a/config.json +++ b/config.json @@ -3,7 +3,7 @@ "appcache" : false, "cache" : {"allowed" : false}, "minification" : { - "js" : true, + "js" : false, "css" : true, "html" : true, "img" : true diff --git a/lib/client/dom.js b/lib/client/dom.js index cc98639a..4d616147 100644 --- a/lib/client/dom.js +++ b/lib/client/dom.js @@ -7,7 +7,7 @@ var CloudCommander, Util, DOM, CloudFunc; /* PRIVATE */ - function getCurrentFile(){ + function getCurrentFileClass(){ return CloudCommander.CURRENT_FILE; } @@ -26,7 +26,7 @@ var CloudCommander, Util, DOM, CloudFunc; }); if(lRet_b) - DOM.removeClass(pCurrentFile, getCurrentFile()); + DOM.removeClass(pCurrentFile, getCurrentFileClass()); return lRet_b; } @@ -34,45 +34,38 @@ var CloudCommander, Util, DOM, CloudFunc; /* private members */ var XMLHTTP, Title, - LoadingImage, - ErrorImage, /* Обьект, который содержит * функции для отображения * картинок */ - Images_o = { + Images = function (){ + var getImage = function(pName){ + var lId = pName + '-image', + lE = DOM.getById(lId); + if (!lE) + lE = DOM.anyload({ + name : 'span', + className : 'icon ' + pName, + id : lId, + not_append : true + }); + + return lE; + }; /* Функция создаёт картинку загрузки*/ - loading : function(){ - var lE = DOM.getById('loading-image'); - if (!lE) - lE = DOM.anyload({ - name : 'span', - className : 'icon loading', - id : 'loading-image', - not_append : true - }); - - LoadingImage = lE; + this.loading = function(){ + return getImage('loading'); + }; - return lE; - }, - /* Функция создаёт картинку ошибки загрузки*/ - error : function(){ - var lE = DOM.getById('error-image'); - if (!lE) - lE = DOM.anyload({ - name : 'span', - className : 'icon error', - id : 'error-image', - not_append : true - }); - - return lE; - } + this.error = function(){ + return getImage('error'); + }; }; + Images = new Images(); + /** * add class to current element * @param pElement @@ -659,7 +652,7 @@ var CloudCommander, Util, DOM, CloudFunc; * @param pElement - element */ DOM.getByClass = function(pClass, pElement){ - return (pElement || document).getElementsByClassName(pClass); + return (pElement || document).getElementsByClassName(pClass); }; @@ -669,41 +662,25 @@ var CloudCommander, Util, DOM, CloudFunc; * pPosition = {top: true}; */ showLoad : function(pPosition){ - var lRet_b = true; + var lRet_b, + lLoadingImage = Images.loading(), + lErrorImage = Images.error(); - LoadingImage = Images_o.loading(); - ErrorImage = Images_o.error(); - - DOM.hide(ErrorImage); + DOM.hide(lErrorImage); var lCurrent; - if(pPosition){ - if(pPosition.top){ - lCurrent = DOM.getRefreshButton(); - if(lCurrent) - lCurrent = lCurrent.parentElement; - else - lRet_b = false; - } - } - else{ - lCurrent = DOM.getCurrentFile(); - lCurrent = lCurrent.firstChild.nextSibling; - } - - /* show loading icon - * if it not showed - * and if error was not - * heppen - */ - if(lRet_b){ - var lParent = LoadingImage.parentElement; - if(!lParent || - (lParent && lParent !== lCurrent)) - lCurrent.appendChild(LoadingImage); - - DOM.show(LoadingImage); /* показываем загрузку*/ - } + if(pPosition && pPosition.top) + lCurrent = DOM.getRefreshButton().parentElement; + else + lCurrent = DOM.getCurrentFile().firstChild.nextSibling; + + /* show loading icon if it not showed */ + + var lParent = lLoadingImage.parentElement; + if(!lParent || (lParent && lParent !== lCurrent)) + lCurrent.appendChild(lLoadingImage); + + lRet_b = DOM.show(lLoadingImage); /* показываем загрузку*/ return lRet_b; }, @@ -712,40 +689,38 @@ var CloudCommander, Util, DOM, CloudFunc; * hide load image */ hideLoad : function(){ - LoadingImage = Images_o.loading(); - DOM.hide(LoadingImage); + + DOM.hide( Images.loading() ); }, /** * show error image (usualy after error on ajax request) */ showError : function(jqXHR, textStatus, errorThrown){ - LoadingImage = Images_o.loading(); - - ErrorImage = Images_o.error(); + var lLoadingImage = Images.loading(), + lErrorImage = Images.error(), + lResponce = jqXHR.responseText, + lStatusText = jqXHR.statusText, + lStatus = jqXHR.status, + lText = (lStatus === 404 ? lResponce : lStatusText); - var lText; - if(jqXHR.status === 404) - lText = jqXHR.responseText; - else - lText = jqXHR.statusText; - /* если файла не существует*/ - if(!lText.indexOf('Error: ENOENT, ')) + if( Util.isContainStr(lText, 'Error: ENOENT, ') ) lText = lText.replace('Error: ENOENT, n','N'); /* если не хватает прав для чтения файла*/ - else if(!lText.indexOf('Error: EACCES,')) - lText = lText.replace('Error: EACCES, p','P'); + else if( Util.isContainStr(lText, 'Error: EACCES,') ) + lText = lText.replace('Error: EACCES, p','P'); + - DOM.show(ErrorImage); - ErrorImage.title = lText; + DOM.show(lErrorImage); + lErrorImage.title = lText; - var lParent = LoadingImage.parentElement; + var lParent = lLoadingImage.parentElement; if(lParent) - lParent.appendChild(ErrorImage); + lParent.appendChild(lErrorImage); - DOM.hide(LoadingImage); + DOM.hide(lLoadingImage); console.log(lText); } @@ -776,7 +751,7 @@ var CloudCommander, Util, DOM, CloudFunc; * @pCurrentFile */ DOM.getCurrentFile = function(pCurrentFile){ - var lCurrent = DOM.getByClass( pCurrentFile || getCurrentFile() )[0]; + var lCurrent = DOM.getByClass( pCurrentFile || getCurrentFileClass() )[0]; if(!lCurrent){ DOM.addCloudStatus({ code : -1, @@ -902,7 +877,7 @@ var CloudCommander, Util, DOM, CloudFunc; if(lCurrentFileWas) unSetCurrentFile(lCurrentFileWas); - DOM.addClass(pCurrentFile, getCurrentFile()); + DOM.addClass(pCurrentFile, getCurrentFileClass()); /* scrolling to current file */ DOM.scrollIntoViewIfNeeded(pCurrentFile); @@ -968,7 +943,7 @@ var CloudCommander, Util, DOM, CloudFunc; }); var lCurrentFileClass = pCurrentFile.className, - lIsCurrent = lCurrentFileClass.indexOf(getCurrentFile()) >= 0; + lIsCurrent = lCurrentFileClass.indexOf(getCurrentFileClass()) >= 0; return lIsCurrent; }; diff --git a/lib/server.js b/lib/server.js index d59f6d91..0579b309 100644 --- a/lib/server.js +++ b/lib/server.js @@ -3,10 +3,10 @@ var main = global.cloudcmd.main, - /* - * Обьект содержащий все функции и переменные - * серверной части Cloud Commander'а - */ + /* + * Обьект содержащий все функции и переменные + * серверной части Cloud Commander'а + */ CloudServer = { /* base configuration */ Config : {