refactored

This commit is contained in:
coderaiser 2012-12-28 06:07:02 -05:00
parent 6010bd43ff
commit f6a4772d49
3 changed files with 66 additions and 91 deletions

View file

@ -3,7 +3,7 @@
"appcache" : false,
"cache" : {"allowed" : false},
"minification" : {
"js" : true,
"js" : false,
"css" : true,
"html" : true,
"img" : true

View file

@ -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;
};

View file

@ -3,10 +3,10 @@
var main = global.cloudcmd.main,
/*
* Обьект содержащий все функции и переменные
* серверной части Cloud Commander'а
*/
/*
* Обьект содержащий все функции и переменные
* серверной части Cloud Commander'а
*/
CloudServer = {
/* base configuration */
Config : {