mirror of
https://github.com/coderaiser/cloudcmd.git
synced 2026-07-18 17:05:17 +00:00
minor chnages
This commit is contained in:
parent
9e6182c475
commit
ccb8cdc237
1 changed files with 69 additions and 68 deletions
137
lib/client.js
137
lib/client.js
|
|
@ -24,9 +24,8 @@ var CloudCmd = {
|
|||
Menu : null, /* function loads and shows menu */
|
||||
GoogleAnalytics : null,
|
||||
|
||||
_loadDir : null, /* Функция привязываеться ко всем
|
||||
* ссылкам и
|
||||
* загружает содержимое каталогов */
|
||||
loadDir : null, /* Функция привязываеться ко всем ссылкам и
|
||||
* загружает содержимое каталогов */
|
||||
|
||||
/* ОБЬЕКТЫ */
|
||||
|
||||
|
|
@ -75,7 +74,7 @@ CloudCmd.GoogleAnalytics = function(){
|
|||
* @param pNeedRefresh - необходимость обязательной загрузки данных с сервера
|
||||
*/
|
||||
CloudCmd.loadDir = function(pLink, pNeedRefresh){
|
||||
return function(){
|
||||
return function(pEvent){
|
||||
/* показываем гиф загрузки возле пути папки сверху
|
||||
* ctrl+r нажата? */
|
||||
|
||||
|
|
@ -97,6 +96,8 @@ CloudCmd.loadDir = function(pLink, pNeedRefresh){
|
|||
if(lParent === '..' && lDir !== '/')
|
||||
CloudCmd._currentToParent(lDir);
|
||||
}
|
||||
|
||||
DOM.preventDefault(pEvent);
|
||||
};
|
||||
};
|
||||
|
||||
|
|
@ -507,7 +508,7 @@ CloudCmd._changeLinks = function(pPanelID){
|
|||
lLi = ai.parentElement.parentElement;
|
||||
|
||||
/* if we in path - set click event */
|
||||
if (lLi.className === 'path')
|
||||
if (lLi.className === 'path')
|
||||
DOM.addClickListener( lLoadDir, ai );
|
||||
else {
|
||||
DOM.addClickListener( DOM.preventDefault, lLi);
|
||||
|
|
@ -538,70 +539,70 @@ CloudCmd._changeLinks = function(pPanelID){
|
|||
* { refresh, nohistory } - необходимость обновить данные о каталоге
|
||||
*/
|
||||
CloudCmd._ajaxLoad = function(pPath, pOptions){
|
||||
if(!pOptions)
|
||||
pOptions = {};
|
||||
if(!pOptions)
|
||||
pOptions = {};
|
||||
|
||||
/* Отображаем красивые пути */
|
||||
var lFSPath = decodeURI(pPath),
|
||||
lNOJSPath = Util.removeStr( lFSPath, '?json' ),
|
||||
lCleanPath = Util.removeStr( lNOJSPath, CloudFunc.FS ) || '/',
|
||||
|
||||
/* Отображаем красивые пути */
|
||||
var lFSPath = decodeURI(pPath),
|
||||
lNOJSPath = Util.removeStr( lFSPath, '?json' ),
|
||||
lCleanPath = Util.removeStr( lNOJSPath, CloudFunc.FS ) || '/',
|
||||
|
||||
lOldURL = window.location.pathname;
|
||||
lOldURL = window.location.pathname;
|
||||
|
||||
Util.log ('reading dir: "' + lCleanPath + '";');
|
||||
|
||||
if(!pOptions.nohistory){
|
||||
lNOJSPath = lCleanPath === '/' ? '/' : lNOJSPath;
|
||||
DOM.setHistory(lNOJSPath, null, lNOJSPath);
|
||||
}
|
||||
|
||||
DOM.setTitle( CloudFunc.getTitle(lCleanPath) );
|
||||
|
||||
var lPanel = DOM.getPanel().id;
|
||||
/* если доступен localStorage и
|
||||
* в нём есть нужная нам директория -
|
||||
* читаем данные с него и
|
||||
* выходим
|
||||
* если стоит поле обязательной перезагрузки -
|
||||
* перезагружаемся
|
||||
*/
|
||||
var lRet = pOptions.refresh;
|
||||
if(!lRet){
|
||||
var lJSON = DOM.Cache.get(lCleanPath);
|
||||
|
||||
Util.log ('reading dir: "' + lCleanPath + '";');
|
||||
|
||||
if(!pOptions.nohistory){
|
||||
lNOJSPath = lCleanPath === '/' ? '/' : lNOJSPath;
|
||||
DOM.setHistory(lNOJSPath, null, lNOJSPath);
|
||||
if (lJSON){
|
||||
/* переводим из текста в JSON */
|
||||
lJSON = Util.parseJSON(lJSON);
|
||||
CloudCmd._createFileTable(lPanel, lJSON, true);
|
||||
CloudCmd._changeLinks(lPanel);
|
||||
}
|
||||
|
||||
DOM.setTitle( CloudFunc.getTitle(lCleanPath) );
|
||||
|
||||
var lPanel = DOM.getPanel().id;
|
||||
/* если доступен localStorage и
|
||||
* в нём есть нужная нам директория -
|
||||
* читаем данные с него и
|
||||
* выходим
|
||||
* если стоит поле обязательной перезагрузки -
|
||||
* перезагружаемся
|
||||
*/
|
||||
var lRet = pOptions.refresh;
|
||||
if(!lRet){
|
||||
var lJSON = DOM.Cache.get(lCleanPath);
|
||||
else
|
||||
lRet = true;
|
||||
}
|
||||
|
||||
if(lRet)
|
||||
DOM.getCurrentFileContent({
|
||||
url : lFSPath,
|
||||
|
||||
if (lJSON){
|
||||
/* переводим из текста в JSON */
|
||||
lJSON = Util.parseJSON(lJSON);
|
||||
CloudCmd._createFileTable(lPanel, lJSON, true);
|
||||
error : function(){
|
||||
DOM.setHistory(lOldURL, null, lOldURL);
|
||||
},
|
||||
|
||||
success : function(pData){
|
||||
CloudCmd._createFileTable(lPanel, pData, true);
|
||||
CloudCmd._changeLinks(lPanel);
|
||||
|
||||
/* переводим таблицу файлов в строку, для *
|
||||
* сохранения в localStorage */
|
||||
var lJSON_s = Util.stringifyJSON(pData);
|
||||
Util.log(lJSON_s.length);
|
||||
|
||||
/* если размер данных не очень бошьой *
|
||||
* сохраняем их в кэше */
|
||||
if(lJSON_s.length < 50000 )
|
||||
DOM.Cache.set(lCleanPath, lJSON_s);
|
||||
}
|
||||
else
|
||||
lRet = true;
|
||||
}
|
||||
|
||||
if(lRet)
|
||||
DOM.getCurrentFileContent({
|
||||
url : lFSPath,
|
||||
|
||||
error : function(){
|
||||
DOM.setHistory(lOldURL, null, lOldURL);
|
||||
},
|
||||
|
||||
success : function(pData){
|
||||
CloudCmd._createFileTable(lPanel, pData, true);
|
||||
CloudCmd._changeLinks(lPanel);
|
||||
|
||||
/* переводим таблицу файлов в строку, для *
|
||||
* сохранения в localStorage */
|
||||
var lJSON_s = Util.stringifyJSON(pData);
|
||||
Util.log(lJSON_s.length);
|
||||
|
||||
/* если размер данных не очень бошьой *
|
||||
* сохраняем их в кэше */
|
||||
if(lJSON_s.length < 50000 )
|
||||
DOM.Cache.set(lCleanPath, lJSON_s);
|
||||
}
|
||||
});
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
|
|
@ -627,7 +628,7 @@ CloudCmd._createFileTable = function(pElem, pJSON, pSetCurrent){
|
|||
while(i--)
|
||||
lElem.removeChild(lElem.lastChild);
|
||||
|
||||
/* заполняем панель новыми элементами */
|
||||
/* заполняем панель новыми элементами */
|
||||
lElem.innerHTML = CloudFunc.buildFromJSON(pJSON, pSetCurrent);
|
||||
|
||||
/* searching current file */
|
||||
|
|
@ -661,15 +662,15 @@ CloudCmd._getJSONfromFileTable = function(){
|
|||
lPath = DOM.getByClass('path')[0].textContent,
|
||||
|
||||
lFileTable = [{
|
||||
path:lPath,
|
||||
size:'dir'
|
||||
path : lPath,
|
||||
size : 'dir'
|
||||
}],
|
||||
|
||||
lLI = lLeft.getElementsByTagName('li'),
|
||||
i, n, j = 1; /* счётчик реальных файлов */
|
||||
|
||||
/* счётчик элементов файлов в DOM */
|
||||
/* Если путь отличный от корневного
|
||||
/* счётчик элементов файлов в DOM
|
||||
* Если путь отличный от корневного
|
||||
* второй элемент li - это ссылка на верхний
|
||||
* каталог '..'
|
||||
*/
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue