UNPKG

nyx_server

Version:

Node内容发布

78 lines (68 loc) 2.28 kB
var express = require('express'); var columnRouter = express.Router(); var Log = require('../core/log'); var cache = require("../core/Cache").cache; var _ = require("lodash"); var templateLoaderFn = require("../core/TemplateLoader"); var columns = require("../core/admin/Columns"); var cache = require("../core/Cache").cache; module.exports = columnRouter; /** * 创建栏目 */ columnRouter.post('/column', function (req, res) { var name = req.body.name; var parentId = req.body.parentId; var descr = req.body.descr; columns.addColumn({name:name,parentId:parentId,descr:descr}).then(function(column){ res.json({success:true , data:column}) }).catch(function(err){ res.json({success:false,message:err.message}); }); }); columnRouter.get("/exist/:parentId/:columnName" , function(req , res){ var parentId = req.params.parentId; var columnName = req.params.columnName; columns.isExistChild(parentId , columnName).then(function(exist){ res.json({success:true, data:exist}) }).catch(function(err){ res.json({success:false,message:err.message}); }); }); /** * 获取所有 * @param parent 父栏目id */ columnRouter.get('/children/:parent', function (req, res) { var parent = req.params.parent; if(parent == 'null'){ parent = null; } columns.getChildren(parent).then(function(columns){ res.json({success:true, data:columns}) }).catch(function(err){ res.json({success:false,message:err.message}); }); }); /** * 获取栏目下可以看见的模板信息 */ columnRouter.get("/template/:path" , function(req , res){ var path = req.params.path; //栏目路径 var logger = Log.getLogger(req.path); var context = { log: logger, cache: cache }; templateLoaderFn.loaderTemplateWithPath.bind(context)(path).then(function(templates){ var ret = templates.map(function(template){ var ret = Object.assign(template.config); ret.name = template.name+"_"+template._ownerProject.name; return ret; }); res.json({success:true , data:ret}); }).catch(function(err){ console.log(err); res.json({success:false, message:err.message}); }); });