refactored

This commit is contained in:
coderaiser 2012-12-26 09:42:12 -05:00
parent af60e26d79
commit 2212d6c75c
6 changed files with 90 additions and 76 deletions

View file

@ -631,7 +631,7 @@ var CloudCommander, Util, DOM, CloudFunc;
* @param pCallBack
*/
DOM.socketLoad = function(pCallBack){
DOM.jsload('/lib/client/socket.js', pCallBack);
DOM.jsload('/lib/client/socket.js', Util.retExec(pCallBack) );
};
/* DOM */
@ -826,6 +826,42 @@ var CloudCommander, Util, DOM, CloudFunc;
return lRet;
};
/**
* unified way to get current file content
*
* @pCallBack - function({data, name}){}
* @pCurrentFile
*/
DOM.getCurrentData = function(pCallBack, pCurrentFile){
var lParams,
lFunc = function(pData){
var lName = DOM.getCurrentName();
if( Util.isObject(pData) ){
pData = JSON.stringify(pData, null, 4);
var lExt = '.json';
if( !Util.checkExtension(lName, lExt) )
lName += lExt;
}
Util.exec(pCallBack, {
data: pData,
name: lName
});
};
if( !Util.isObject(pCallBack) )
lParams = lFunc;
else
lParams = {
success : lFunc,
error : pCallBack.error
};
return DOM.getCurrentFileContent(lParams, pCurrentFile);
};
/**
* unified way to get RefreshButton

View file

@ -50,9 +50,9 @@ var CloudCommander, Util, DOM, CodeMirror;
* function initialize CodeMirror
* @param {value, callback}
*/
function initCodeMirror(pData){
if(!pData)
pData = {};
function initCodeMirror(pParams){
if(!pParams)
pParams = {};
if(!FM)
FM = DOM.getFM();
@ -68,7 +68,7 @@ var CloudCommander, Util, DOM, CodeMirror;
CodeMirrorEditor.CodeMirror = new CodeMirror(CodeMirrorElement,{
mode : 'javascript',
value : pData.data,
value : pParams.data.data,
theme : 'night',
lineNumbers : true,
//переносим длинные строки
@ -77,7 +77,7 @@ var CloudCommander, Util, DOM, CodeMirror;
extraKeys: {
//Сохранение
'Esc': function(){
Util.exec(pData.callback);
Util.exec(pParams);
DOM.remove(lCSS, document.head);
}
},
@ -128,33 +128,22 @@ var CloudCommander, Util, DOM, CodeMirror;
ReadOnly = true;
Loading = true;
setTimeout(function(){
Loading = false;
},
400);
var lFalseLoading = function(){ Loading = false; };
setTimeout(lFalseLoading, 400);
/* reading data from current file */
DOM.getCurrentFileContent({
error : function(){
Loading = false;
},
DOM.getCurrentData({
error : lFalseLoading,
success : function(data){
/* if we got json - show it */
if( Util.isObject(data) )
data = JSON.stringify(data, null, 4);
var lHided = DOM.hidePanel();
if(lHided){
if( DOM.hidePanel() ){
Util.exec(pCallBack, data);
/* removing keyBinding if set */
KeyBinding.unSet();
}
}
DOM.Images.hideLoad();
Loading = false;
lFalseLoading();
}
});
}

View file

@ -34,24 +34,6 @@ var CloudCommander, Util, DOM, $;
}
}
function getCurrentData(pCallBack){
return DOM.getCurrentFileContent(function(pData){
var lName = DOM.getCurrentName();
if( Util.isObject(pData) ){
pData = JSON.stringify(pData, null, 4);
var lExt = '.json';
if( !Util.checkExtension(lName, lExt) )
lName += lExt;
}
Util.exec(pCallBack, {
data: pData,
name: lName
});
});
}
/**
* function get menu item object for Upload To
*/
@ -69,7 +51,7 @@ var CloudCommander, Util, DOM, $;
lObj.name = pObjectName;
lObj.callback = function(key, opt){
getCurrentData(function(pParams){
DOM.getCurrentData(function(pParams){
var lObject = cloudcmd[pObjectName];
if('init' in lObject)
@ -277,24 +259,27 @@ var CloudCommander, Util, DOM, $;
Menu.init = function(pPosition){
Position = pPosition;
DOM.jqueryLoad( Util.retLoadOnLoad([
Util.loadOnLoad([
Menu.show,
load
]));
load,
DOM.jqueryLoad
]);
var key_event = function(pEvent){
var lKEY = cloudcmd.KEY,
lKeyCode = pEvent.keyCode;
/* если клавиши можно обрабатывать */
if( KeyBinding.get() ){
/* if shift + F10 pressed */
if(pEvent.keyCode === cloudcmd.KEY.F10 && pEvent.shiftKey){
if(lKeyCode === lKEY.F10 && pEvent.shiftKey){
var lCurrent = DOM.getCurrentFile();
if(lCurrent)
$(lCurrent).contextMenu();
$(lCurrent).contextMenu();
pEvent.preventDefault();
}
}
else if (pEvent.keyCode === cloudcmd.KEY.ESC)
else if (lKeyCode === lKEY.ESC)
KeyBinding.set();
};

View file

@ -29,7 +29,7 @@ var CloudCommander, Util, DOM, $;
lDir + 'terminal.css'
];
DOM.anyLoadInParallel(lFiles, function(){
DOM.anyLoadOnLoad([lFiles], function(){
console.timeEnd('terminal load');
init();
@ -48,7 +48,7 @@ var CloudCommander, Util, DOM, $;
$(window).unbind('resize');
Util.exec(pCallBack.callback || pCallBack);
Util.exec(pCallBack);
});
}
@ -100,11 +100,12 @@ var CloudCommander, Util, DOM, $;
*/
cloudcmd.Terminal.init = function(){
/* loading js and css*/
DOM.jqueryLoad( Util.retLoadOnLoad([
JqueryTerminal.show,
load,
DOM.socketLoad
]) );
Util.loadOnLoad([
JqueryTerminal.show,
load,
DOM.socketLoad,
DOM.jqueryLoad,
]);
/* добавляем обработчик клавишь */
DOM.addKeyListener(function(pEvent){

View file

@ -63,7 +63,7 @@ var CloudCommander, Util, DOM, CloudFunc, $;
lFiles = [ lDir + 'jquery.fancybox.css',
lDir + 'jquery.fancybox.js' ];
DOM.anyLoadOnLoad(lFiles, function(){
DOM.anyLoadOnLoad([lFiles], function(){
console.timeEnd('fancybox load');
Util.exec( pCallBack );
})
@ -94,25 +94,22 @@ var CloudCommander, Util, DOM, CloudFunc, $;
if( Util.checkExtension(lPath, ['png','jpg', 'gif','ico']) )
$.fancybox.open({ href : lPath }, lConfig);
else{
DOM.getCurrentFileContent({
success : function(pData){
if( Util.isObject(pData) )
pData = JSON.stringify(pData, null, 4);
$.fancybox('<div id=CloudViewer tabindex=0>' + pData + '</div>', lConfig);
}
else
DOM.getCurrentData(function(pParams){
var lData = pParams.data;
$.fancybox('<div id=CloudViewer tabindex=0>' +
lData +
'</div>',
lConfig);
});
}
};
cloudcmd.Viewer.init = function(){
DOM.jqueryLoad(
Util.loadOnLoad([
FancyBox.show,
FancyBox.load
])
);
Util.loadOnLoad([
FancyBox.show,
FancyBox.load,
DOM.jqueryLoad
]);
var lView = function(){
DOM.Images.showLoad();

View file

@ -398,8 +398,14 @@ var Util, exports;
Util.exec = function(pCallBack, pArg){
var lRet = false;
if( Util.isFunction(pCallBack) )
lRet = pCallBack(pArg);
if(pCallBack){
if( Util.isFunction(pCallBack) )
lRet = pCallBack(pArg);
else {
var lCallBack = pCallBack.callback || pCallBack.success;
lRet = Util.exec(lCallBack, pArg);
}
}
return lRet;
};