diff --git a/lib/client/listeners.js b/lib/client/listeners.js index c1b60ef8..674fd106 100644 --- a/lib/client/listeners.js +++ b/lib/client/listeners.js @@ -75,9 +75,13 @@ var Util, DOM, CloudCmd; * @param pPanelID */ this.changeLinks = function(pPanelID) { - /* назначаем кнопку очистить кэш и показываем её */ - var lPanel = DOM.getById(pPanelID), - pathElement = DOM.getByClass('js-path', lPanel), + var i, n, a, ai, current, link, loadDir, events, + filesElement = DOM.getByClass('files', panel), + files = filesElement.children, + url = CloudCmd.HOST, + loadDirOnce = CloudCmd.loadDir(), + panel = DOM.getById(pPanelID), + pathElement = DOM.getByClass('js-path', panel), pathLinks = DOM.getByClass('links', pathElement).children, clearStorage = DOM.getByClass('clear-storage', pathElement), refresh = DOM.getByClass('refresh-icon', pathElement), @@ -150,13 +154,7 @@ var Util, DOM, CloudCmd; } while(lTag !== 'LI'); DOM.setCurrentFile(pElement); - }, - - i, n, a, ai, current, link, loadDir, - filesElement = DOM.getByClass('files', lPanel), - files = filesElement.children, - url = CloudCmd.HOST, - loadDirOnce = CloudCmd.loadDir(); + }; /* ставим загрузку гифа на клик*/ Events.addClick(CloudCmd.refresh, refresh); @@ -176,25 +174,27 @@ var Util, DOM, CloudCmd; n = a.length; for (i = 0; i < n ; i++) { current = files[i]; - ai = a[i], - - Events.add({ - 'mousedown' : setCurrentFile, - 'contextmenu' : onContextMenu, - 'dragstart' : onDragStart - }, current); + ai = a[i]; /* если на файл, а не на папку */ if (ai.target === '_blank') - Events.add({ + events = { 'click' : fileClick - }, current); + }; else - Events.add({ + events = { 'dblclick' : loadDirOnce, 'touchend' : loadDirOnce, 'click' : DOM.preventDefault, - }, current); + }; + + Util.copyObj({ + 'mousedown' : setCurrentFile, + 'contextmenu' : onContextMenu, + 'dragstart' : onDragStart + }, events); + + Events.add(events, current); current.id = (ai.title ? ai.title : ai.textContent) + '(' + pPanelID + ')';