anthtrigger
Version:
Trigger events via http service
58 lines (47 loc) • 1.12 kB
text/coffeescript
Ctrl = require './controller'
userCtrl = require '../users/controller'
exports.route = (app)->
app.get '/scriptLogs/list', (req, res)->
page = req.param('page')
page = parseInt(page) or 1
pageSize = req.param('pageSize')
pageSize = parseInt(pageSize) or 10
Ctrl
.listByPage {}, {
skip: (page-1)*pageSize
limit: pageSize
sort: {
startAt: -1
}
}
.fin (cont, err, list, total)->
res.json {
success: !!!err
total: total
data: list or []
}
app.get '/scriptLogs/find/:id', (req, res)->
lid = '' + req.param('id')
Ctrl
.findById lid
.then (cont, logs)->
# Populate the user
userCtrl.findById {
_id: logs.runByUser
}
.then (cont2, user)-> cont2(null, user or {})
.fail (cont2, err)-> cont2(null, {})
.fin (cont2, err, user)->
user.password = null
cont(null, logs, user)
.fin (cont, err, logs, user)->
data = logs.toObject()
data.runByUser = {
name: user.name
role: user.role
_id: user._id
}
res.json {
success: !!!err
data: data
}