feature(rest) add markdown get

This commit is contained in:
coderaiser 2014-03-13 05:44:42 -04:00
parent c8a223c072
commit d0fad7dda7
5 changed files with 55 additions and 47 deletions

View file

@ -27,24 +27,17 @@ var CloudCmd, Util, DOM;
top:true
});
DOM.ajax({
url : '/HELP.md',
success : function (data) {
Markdown.render(data, function(result) {
var div = DOM.anyload({
name : 'div',
className : 'help',
inner : result
});
Images.hideLoad();
CloudCmd.View.show(div);
Markdown.read('/HELP.md', function(result) {
var div = DOM.anyload({
name : 'div',
className : 'help',
inner : result
});
},
error : Images.showError
});
Images.hideLoad();
CloudCmd.View.show(div);
}, '?relative');
};
this.hide = function() {

View file

@ -79,7 +79,17 @@ var Util, DOM, CloudCmd;
};
this.Markdown = {
render : function(data, callback) {
read : function(url, callback, query) {
sendRequest({
method : 'GET',
url : '/markdown' + url+ (query || ''),
callback : callback,
imgPosition : { top: true },
doNotLog : true
});
},
render : function(data, callback) {
sendRequest({
method : 'PUT',
url : '/markdown',

View file

@ -105,7 +105,7 @@
if (isFS)
onFS(pParams);
else if (isMD)
markdown.operate(p.request, function(error, data) {
markdown.operate(p.name, p.request, function(error, data) {
if (error)
sendError(p, error);
else

View file

@ -2,27 +2,54 @@
'use strict';
var main = global.cloudcmd.main,
marked = main.require('marked'),
Util = main.util,
DIR = main.DIR,
MD_DIR = 'rest/markdown/',
pipe = main.pipe,
parse = main.srvrequire(MD_DIR + 'put').parse,
Util = main.util;
fs = require('fs'),
pipe = main.pipe;
exports.operate = operate;
function operate(request, callback) {
var method = request.method;
function operate(name, request, callback) {
var query,
method = request.method;
switch(method) {
case 'GET':
name = Util.removeStrOneTime(name, '/markdown');
query = main.getQuery(request);
if (query === 'relative')
name = DIR + name;
fs.readFile(name, 'utf8', function(error, data) {
if (error)
callback(error);
else
parse(data, callback);
});
break;
case 'PUT':
pipe.getBody(request, function(data) {
parse(data, callback);
});
break;
}
}
function parse(data, callback) {
var md;
process.nextTick(function() {
if (marked)
md = marked(data);
else
md = '<pre>' + data + '</pre>';
Util.exec(callback, null, md);
});
}
})();

View file

@ -1,22 +0,0 @@
(function(){
'use strict';
var main = global.cloudcmd.main,
marked = main.require('marked'),
Util = main.util;
exports.parse = parse;
function parse(data, callback) {
var md;
process.nextTick(function() {
if (marked)
md = marked(data);
else
md = '<pre>' + data + '</pre>';
Util.exec(callback, null, md);
});
}
})();