mirror of
https://github.com/coderaiser/cloudcmd.git
synced 2026-07-29 02:30:28 +00:00
feature(rest) mv rest from dom
This commit is contained in:
parent
dbaef834a7
commit
6a502612b8
3 changed files with 146 additions and 124 deletions
|
|
@ -68,6 +68,7 @@
|
|||
lib + 'util.js',
|
||||
lib + 'cloudfunc.js',
|
||||
client + 'dom.js',
|
||||
client + 'rest.js',
|
||||
client + 'loader.js',
|
||||
client + 'notify.js',
|
||||
client + 'storage.js',
|
||||
|
|
|
|||
|
|
@ -132,121 +132,6 @@ var CloudCmd, Util, DOM, CloudFunc, Dialog;
|
|||
};
|
||||
},
|
||||
|
||||
RESTfulProto = function() {
|
||||
this.delete = function(url, data, callback, query) {
|
||||
sendRequest({
|
||||
method : 'DELETE',
|
||||
url : CloudFunc.FS + url + (query || ''),
|
||||
data : data,
|
||||
callback : callback,
|
||||
imgPosition : { top: !!data }
|
||||
});
|
||||
};
|
||||
|
||||
this.save = function(url, data, callback, query) {
|
||||
sendRequest({
|
||||
method : 'PUT',
|
||||
url : CloudFunc.FS + url + (query || ''),
|
||||
data : data,
|
||||
callback : callback,
|
||||
imgPosition : { top: true }
|
||||
});
|
||||
};
|
||||
|
||||
this.read = function(url, callback, query) {
|
||||
sendRequest({
|
||||
method : 'GET',
|
||||
url : CloudFunc.FS + url + (query || ''),
|
||||
callback : callback
|
||||
});
|
||||
};
|
||||
|
||||
this.cp = function(data, callback) {
|
||||
sendRequest({
|
||||
method : 'PUT',
|
||||
url : '/cp',
|
||||
data : data,
|
||||
callback : callback
|
||||
});
|
||||
};
|
||||
|
||||
this.zip = function(data, callback) {
|
||||
sendRequest({
|
||||
method : 'PUT',
|
||||
url : '/zip',
|
||||
data : data,
|
||||
callback : callback
|
||||
});
|
||||
};
|
||||
|
||||
this.mv = function(data, callback) {
|
||||
sendRequest({
|
||||
method : 'PUT',
|
||||
url : '/mv',
|
||||
data : data,
|
||||
callback : callback
|
||||
});
|
||||
};
|
||||
|
||||
this.config = function(data, callback) {
|
||||
sendRequest({
|
||||
method : 'PUT',
|
||||
url : '/config',
|
||||
data : data,
|
||||
callback : callback,
|
||||
imgPosition : { top: true }
|
||||
});
|
||||
};
|
||||
|
||||
this.markdown = function(data, callback) {
|
||||
sendRequest({
|
||||
method : 'PUT',
|
||||
url : '/markdown',
|
||||
data : data,
|
||||
callback : callback,
|
||||
imgPosition : { top: true },
|
||||
doNotLog : true
|
||||
});
|
||||
};
|
||||
|
||||
function sendRequest(params) {
|
||||
var p = params;
|
||||
|
||||
Images.showLoad(p.imgPosition);
|
||||
|
||||
CloudCmd.getConfig(function(config) {
|
||||
var data,
|
||||
isString = Util.isString(p.data),
|
||||
isArrayBuffer = Util.isArrayBuffer(p.data);
|
||||
|
||||
if (Util.isString(p.url))
|
||||
p.url = decodeURI(p.url);
|
||||
|
||||
if (p.data && !isString && !isArrayBuffer)
|
||||
data = Util.stringifyJSON(p.data);
|
||||
else
|
||||
data = p.data;
|
||||
|
||||
p.url = config && config.apiURL + p.url;
|
||||
|
||||
DOM.ajax({
|
||||
method : p.method,
|
||||
url : p.url,
|
||||
data : data,
|
||||
error : Images.showError,
|
||||
success : function(data) {
|
||||
Images.hideLoad();
|
||||
|
||||
if (!p.doNotLog)
|
||||
Util.log(data);
|
||||
|
||||
Util.exec(p.callback, data);
|
||||
}
|
||||
});
|
||||
});
|
||||
}
|
||||
},
|
||||
|
||||
DOMTreeProto = function() {
|
||||
var DOM = this;
|
||||
/**
|
||||
|
|
@ -675,7 +560,8 @@ var CloudCmd, Util, DOM, CloudFunc, Dialog;
|
|||
};
|
||||
|
||||
function promptNew(pTypeName, pType) {
|
||||
var lName = Cmd.getCurrentName(),
|
||||
var RESTful = DOM.RESTful,
|
||||
lName = Cmd.getCurrentName(),
|
||||
lDir = Cmd.getCurrentDirPath(),
|
||||
lMsg = 'New ' + pTypeName || 'File',
|
||||
lType = Util.isString(pType) ? pType : '';
|
||||
|
|
@ -694,7 +580,8 @@ var CloudCmd, Util, DOM, CloudFunc, Dialog;
|
|||
*
|
||||
*/
|
||||
this.zipFile = function() {
|
||||
var lName = Cmd.getCurrentName(),
|
||||
var RESTful = DOM.RESTful,
|
||||
lName = Cmd.getCurrentName(),
|
||||
lDir = Cmd.getCurrentDirPath(),
|
||||
lPath = lDir + lName,
|
||||
lFiles = {
|
||||
|
|
@ -713,6 +600,7 @@ var CloudCmd, Util, DOM, CloudFunc, Dialog;
|
|||
*/
|
||||
this.promptDeleteSelected = function(current) {
|
||||
var ret, type, isDir, path, query, msg,
|
||||
RESTful = DOM.RESTful,
|
||||
name = '',
|
||||
msgAsk = 'Do you really want to delete the ',
|
||||
msgSel = 'selected ',
|
||||
|
|
@ -886,6 +774,7 @@ var CloudCmd, Util, DOM, CloudFunc, Dialog;
|
|||
*/
|
||||
this.loadCurrentSize = function(callback, currentFile) {
|
||||
var lRet,
|
||||
RESTful = DOM.RESTful,
|
||||
lCurrent = currentFile || this.getCurrentFile(),
|
||||
lLink = this.getCurrentPath(lCurrent),
|
||||
lName = this.getCurrentName(lCurrent);
|
||||
|
|
@ -906,6 +795,7 @@ var CloudCmd, Util, DOM, CloudFunc, Dialog;
|
|||
*/
|
||||
this.loadCurrentHash = function(callback, currentFile) {
|
||||
var lRet,
|
||||
RESTful = DOM.RESTful,
|
||||
lCurrent = currentFile || this.getCurrentFile(),
|
||||
lLink = this.getCurrentPath(lCurrent),
|
||||
lName = this.getCurrentName(lCurrent);
|
||||
|
|
@ -922,6 +812,7 @@ var CloudCmd, Util, DOM, CloudFunc, Dialog;
|
|||
*/
|
||||
this.loadCurrentTime = function(callback, currentFile) {
|
||||
var lRet,
|
||||
RESTful = DOM.RESTful,
|
||||
lCurrent = currentFile || this.getCurrentFile(),
|
||||
lLink = this.getCurrentPath(lCurrent),
|
||||
lName = this.getCurrentName(lCurrent);
|
||||
|
|
@ -1052,7 +943,7 @@ var CloudCmd, Util, DOM, CloudFunc, Dialog;
|
|||
* @currentFile
|
||||
*/
|
||||
this.saveCurrentData = function(url, data, callback, query) {
|
||||
RESTful.save(url, data, function() {
|
||||
DOM.RESTful.save(url, data, function() {
|
||||
DOM.saveDataToStorage(url, data);
|
||||
}, query);
|
||||
};
|
||||
|
|
@ -1621,7 +1512,8 @@ var CloudCmd, Util, DOM, CloudFunc, Dialog;
|
|||
* @currentFile
|
||||
*/
|
||||
this.renameCurrent = function(current) {
|
||||
var from, to, dirPath, cmp, files;
|
||||
var from, to, dirPath, cmp, files,
|
||||
RESTful = DOM.RESTful;
|
||||
|
||||
if (!Cmd.isCurrentFile(current))
|
||||
current = Cmd.getCurrentFile();
|
||||
|
|
@ -1654,7 +1546,8 @@ var CloudCmd, Util, DOM, CloudFunc, Dialog;
|
|||
* @currentFile
|
||||
*/
|
||||
this.moveCurrent = function(current) {
|
||||
var name, from, to, cmp, files;
|
||||
var name, from, to, cmp, files,
|
||||
RESTful = DOM.RESTful;
|
||||
|
||||
if (!Cmd.isCurrentFile(current))
|
||||
current = Cmd.getCurrentFile();
|
||||
|
|
@ -1693,7 +1586,8 @@ var CloudCmd, Util, DOM, CloudFunc, Dialog;
|
|||
* @param current
|
||||
*/
|
||||
this.copyCurrent = function(current) {
|
||||
var name, from, to, files, cmp;
|
||||
var name, from, to, files, cmp,
|
||||
RESTful = DOM.RESTful;
|
||||
|
||||
if (!Cmd.isCurrentFile(current))
|
||||
current = Cmd.getCurrentFile();
|
||||
|
|
@ -1805,8 +1699,7 @@ var CloudCmd, Util, DOM, CloudFunc, Dialog;
|
|||
|
||||
DOMTree = Util.extendProto(DOMTreeProto),
|
||||
Events = Util.extendProto(EventsProto),
|
||||
Images = Util.extendProto(ImagesProto),
|
||||
RESTful = Util.extendProto(RESTfulProto);
|
||||
Images = Util.extendProto(ImagesProto);
|
||||
|
||||
DOMProto = DOMFunc.prototype = new CmdProto();
|
||||
|
||||
|
|
@ -1815,7 +1708,6 @@ var CloudCmd, Util, DOM, CloudFunc, Dialog;
|
|||
Util.extend(DOMProto, [
|
||||
DOMTree, {
|
||||
Events : Events,
|
||||
RESTful : RESTful,
|
||||
Images : Images,
|
||||
Dialog : Dialog
|
||||
}
|
||||
|
|
|
|||
129
lib/client/rest.js
Normal file
129
lib/client/rest.js
Normal file
|
|
@ -0,0 +1,129 @@
|
|||
var Util, DOM, CloudCmd;
|
||||
|
||||
(function(Util, DOM) {
|
||||
'use strict';
|
||||
|
||||
var RESTful = Util.extendProto(RESTfulProto),
|
||||
DOMProto = Object.getPrototypeOf(DOM);
|
||||
|
||||
Util.extend(DOMProto, {
|
||||
RESTful: RESTful
|
||||
});
|
||||
|
||||
function RESTfulProto() {
|
||||
var Images = DOM.Images;
|
||||
|
||||
this.delete = function(url, data, callback, query) {
|
||||
sendRequest({
|
||||
method : 'DELETE',
|
||||
url : CloudFunc.FS + url + (query || ''),
|
||||
data : data,
|
||||
callback : callback,
|
||||
imgPosition : { top: !!data }
|
||||
});
|
||||
};
|
||||
|
||||
this.save = function(url, data, callback, query) {
|
||||
sendRequest({
|
||||
method : 'PUT',
|
||||
url : CloudFunc.FS + url + (query || ''),
|
||||
data : data,
|
||||
callback : callback,
|
||||
imgPosition : { top: true }
|
||||
});
|
||||
};
|
||||
|
||||
this.read = function(url, callback, query) {
|
||||
sendRequest({
|
||||
method : 'GET',
|
||||
url : CloudFunc.FS + url + (query || ''),
|
||||
callback : callback
|
||||
});
|
||||
};
|
||||
|
||||
this.cp = function(data, callback) {
|
||||
sendRequest({
|
||||
method : 'PUT',
|
||||
url : '/cp',
|
||||
data : data,
|
||||
callback : callback
|
||||
});
|
||||
};
|
||||
|
||||
this.zip = function(data, callback) {
|
||||
sendRequest({
|
||||
method : 'PUT',
|
||||
url : '/zip',
|
||||
data : data,
|
||||
callback : callback
|
||||
});
|
||||
};
|
||||
|
||||
this.mv = function(data, callback) {
|
||||
sendRequest({
|
||||
method : 'PUT',
|
||||
url : '/mv',
|
||||
data : data,
|
||||
callback : callback
|
||||
});
|
||||
};
|
||||
|
||||
this.config = function(data, callback) {
|
||||
sendRequest({
|
||||
method : 'PUT',
|
||||
url : '/config',
|
||||
data : data,
|
||||
callback : callback,
|
||||
imgPosition : { top: true }
|
||||
});
|
||||
};
|
||||
|
||||
this.markdown = function(data, callback) {
|
||||
sendRequest({
|
||||
method : 'PUT',
|
||||
url : '/markdown',
|
||||
data : data,
|
||||
callback : callback,
|
||||
imgPosition : { top: true },
|
||||
doNotLog : true
|
||||
});
|
||||
};
|
||||
|
||||
function sendRequest(params) {
|
||||
var p = params;
|
||||
|
||||
Images.showLoad(p.imgPosition);
|
||||
|
||||
CloudCmd.getConfig(function(config) {
|
||||
var data,
|
||||
isString = Util.isString(p.data),
|
||||
isArrayBuffer = Util.isArrayBuffer(p.data);
|
||||
|
||||
if (Util.isString(p.url))
|
||||
p.url = decodeURI(p.url);
|
||||
|
||||
if (p.data && !isString && !isArrayBuffer)
|
||||
data = Util.stringifyJSON(p.data);
|
||||
else
|
||||
data = p.data;
|
||||
|
||||
p.url = config && config.apiURL + p.url;
|
||||
|
||||
DOM.ajax({
|
||||
method : p.method,
|
||||
url : p.url,
|
||||
data : data,
|
||||
error : Images.showError,
|
||||
success : function(data) {
|
||||
Images.hideLoad();
|
||||
|
||||
if (!p.doNotLog)
|
||||
Util.log(data);
|
||||
|
||||
Util.exec(p.callback, data);
|
||||
}
|
||||
});
|
||||
});
|
||||
}
|
||||
}
|
||||
})(Util, DOM);
|
||||
Loading…
Add table
Add a link
Reference in a new issue