refactored

This commit is contained in:
coderaiser 2013-01-23 07:53:40 -05:00
parent 4a65240fa2
commit d3c8122ad0
3 changed files with 48 additions and 43 deletions

View file

@ -289,22 +289,22 @@ function initKeysPanel(pCallBack){
var lKeysPanel = {},
lFuncs =[
null,
null, /* f1 */
null, /* f2 */
CloudCmd.Viewer, /* f3 */
CloudCmd.Editor, /* f4 */
null, /* f5 */
null, /* f6 */
null, /* f7 */
DOM.promptRemoveCurrent,/* f8 */
];
null,
null, /* f1 */
null, /* f2 */
CloudCmd.Viewer, /* f3 */
CloudCmd.Editor, /* f4 */
null, /* f5 */
null, /* f6 */
null, /* f7 */
DOM.promptRemoveCurrent,/* f8 */
];
for(var i = 1; i <= 8; i++){
var lButton = 'f' + i,
lEl = DOM.getById('f' + i);
lEl.onclick = lFuncs[i];
DOM.addClickListener(lFuncs[i], lEl);
lKeysPanel[lButton] = lEl;
}
@ -411,8 +411,8 @@ CloudCmd.getModules = function(pCallBack){
CloudCmd._changeLinks = function(pPanelID){
/* назначаем кнопку очистить кэш и показываем её */
var lClearcache = DOM.getById('clear-cache');
lClearcache.onclick = DOM.Cache.clear;
DOM.addListener('click', DOM.Cache.clear, lClearcache);
/* меняем ссылки на ajax-запросы */
var lPanel = DOM.getById(pPanelID),
a = lPanel.getElementsByTagName('a'),
@ -491,45 +491,41 @@ CloudCmd._changeLinks = function(pPanelID){
for(var i = 0, n = a.length; i < n ; i++){
/* убираем адрес хоста*/
var link = a[i].href.replace(lUrl,'');
var ai = a[i],
link = ai.href.replace(lUrl, ''),
lNEADREFRESH = i === lREFRESHICON,
lLoadDir = CloudCmd._loadDir(link, lNEADREFRESH);
/* ставим загрузку гифа на клик*/
if(i === lREFRESHICON){
a[i].onclick = CloudCmd._loadDir(link, true);
a[i].parentElement.onclick = a[i].onclick;
if(lNEADREFRESH){
DOM.addClickListener( lLoadDir, ai );
DOM.addClickListener( lLoadDir, ai.parentElement );
}
/* устанавливаем обработчики на строку
* на двойное нажатие на левую кнопку мышки */
else{
var lLi = a[i].parentElement.parentElement;
var lLi = ai.parentElement.parentElement;
/* if we in path changing onclick events */
if (lLi.className === 'path') {
a[i].onclick = CloudCmd._loadDir(link);
}
if (lLi.className === 'path')
DOM.addClickListener( lLoadDir, ai );
else {
lLi.onclick = Util.retFalse;
lLi.onmousedown = lSetCurrentFile_f;
a[i].ondragstart = lOnDragStart_f;
DOM.addClickListener( Util.retFalse, lLi);
DOM.addListener('mousedown', lSetCurrentFile_f, lLi);
DOM.addListener('ondragstart', lOnDragStart_f, ai);
/* if right button clicked menu will
* loads and shows
*/
lLi.oncontextmenu = lOnContextMenu_f;
DOM.addListener('contextmenu', lOnContextMenu_f, lLi);
/* если ссылка на папку, а не файл */
if(a[i].target !== '_blank'){
lLi.ondblclick = CloudCmd._loadDir(link);
DOM.addListener('touchend',
CloudCmd._loadDir(link),
lLi
);
if(ai.target !== '_blank'){
DOM.addListener('dblclick', lLoadDir, lLi);
DOM.addListener('touchend', lLoadDir, lLi);
}
lLi.id = (a[i].title ? a[i].title : a[i].textContent) +
lLi.id = (ai.title ? ai.title : ai.textContent) +
'(' + pPanelID + ')';
}
}

View file

@ -153,6 +153,15 @@ var CloudCommander, Util,
return DOM.addListener('keydown', pListener, pElement, pUseCapture);
};
/**
* safe add event click listener
* @param pListener
* @param pUseCapture
*/
DOM.addClickListener = function(pListener, pElement, pUseCapture){
return DOM.addListener('click', pListener, pElement, pUseCapture);
};
/**
* load file countent thrue ajax
*/

View file

@ -9,13 +9,13 @@
Util = main.util,
/* object contains hashes of files*/
CHANGESNAME = DIR + 'changes',
CHANGESNAME = DIR + 'json/changes',
CHANGES_JSON = CHANGESNAME + '.json',
Times = main.require(CHANGESNAME) || [],
TimesChanged;
GTimesChanged;
function isFileChanged(pFileName, pLastFile_b, pCallBack){
exports.isFileChanged = function(pFileName, pLastFile_b, pCallBack){
var lReadedTime;
var i, n = Times.length;
@ -42,20 +42,20 @@
};
lTimeChanged =
TimesChanged = true;
GTimesChanged = true;
}
if(pLastFile_b && TimesChanged)
if(pLastFile_b && GTimesChanged)
writeFile(CHANGES_JSON, Util.stringifyJSON(Times));
}
else{
Util.log(pError);
lTimeChanged = false;
lTimeChanged = true;
}
Util.exec(pCallBack, lTimeChanged);
});
}
};
/*
* Функция записывает файла
@ -72,6 +72,6 @@
}
isFileChanged(DIR + 'manifest.yml', true, function(pData){
console.log(pData)
console.log(pData);
});
})();