Flesh out Cobalt, LDAP groups, &c.
This commit is contained in:
43
app/controllers/Cobalt.controller.js
Normal file
43
app/controllers/Cobalt.controller.js
Normal file
@@ -0,0 +1,43 @@
|
||||
const { Controller } = require('libflitter')
|
||||
|
||||
class CobaltController extends Controller {
|
||||
static get services() {
|
||||
return [...super.services, 'Vue']
|
||||
}
|
||||
|
||||
async listing(req, res, next) {
|
||||
return res.page('cobalt:listing', {
|
||||
...this.Vue.data({ resource: this._get_resource(req.params) }),
|
||||
...this.Vue.session(req)
|
||||
})
|
||||
}
|
||||
|
||||
async form(req, res, next) {
|
||||
const other = {
|
||||
mode: (req.query.id ? (req.query.mode === 'view' ? 'view' : 'update') : 'insert'),
|
||||
form_id: req.query.id || ''
|
||||
}
|
||||
|
||||
return res.page('cobalt:form', {
|
||||
...this.Vue.data({ resource: this._get_resource(req.params), ...other }),
|
||||
...this.Vue.session(req),
|
||||
})
|
||||
}
|
||||
|
||||
_get_resource(params) {
|
||||
const resource = params.resource
|
||||
delete params.resource
|
||||
|
||||
const parts = [resource]
|
||||
let i = 0
|
||||
while ( params[i] ) {
|
||||
parts.push(params[i])
|
||||
i++
|
||||
}
|
||||
|
||||
return parts.join('')
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
module.exports = exports = CobaltController
|
||||
Reference in New Issue
Block a user