2015-06-29 22:51:29 +00:00
|
|
|
'use strict';
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Module dependencies.
|
|
|
|
*/
|
2017-04-21 05:00:10 +00:00
|
|
|
var forms = require('../../app/controllers/forms.server.controller'),
|
2017-03-10 20:19:46 +00:00
|
|
|
auth = require('../../config/passport_helpers');
|
2015-06-29 22:51:29 +00:00
|
|
|
|
|
|
|
module.exports = function(app) {
|
|
|
|
// Form Routes
|
2016-05-13 18:13:09 +00:00
|
|
|
app.route('/forms')
|
2016-08-26 00:54:16 +00:00
|
|
|
.get(auth.isAuthenticatedOrApiKey, forms.list)
|
|
|
|
.post(auth.isAuthenticatedOrApiKey, forms.create);
|
2016-05-13 18:13:09 +00:00
|
|
|
|
2015-07-02 23:34:00 +00:00
|
|
|
app.route('/forms/:formId([a-zA-Z0-9]+)')
|
2017-03-06 20:30:31 +00:00
|
|
|
.get(auth.isAuthenticatedOrApiKey, forms.hasAuthorization, forms.read)
|
2015-07-07 01:56:38 +00:00
|
|
|
.post(forms.createSubmission)
|
2016-08-26 00:54:16 +00:00
|
|
|
.put(auth.isAuthenticatedOrApiKey, forms.hasAuthorization, forms.update)
|
|
|
|
.delete(auth.isAuthenticatedOrApiKey, forms.hasAuthorization, forms.delete);
|
2015-06-29 22:51:29 +00:00
|
|
|
|
2015-07-02 23:34:00 +00:00
|
|
|
app.route('/forms/:formId([a-zA-Z0-9]+)/submissions')
|
2016-08-26 00:54:16 +00:00
|
|
|
.get(auth.isAuthenticatedOrApiKey, forms.hasAuthorization, forms.listSubmissions)
|
|
|
|
.delete(auth.isAuthenticatedOrApiKey, forms.hasAuthorization, forms.deleteSubmissions);
|
2015-07-02 23:34:00 +00:00
|
|
|
|
2015-06-29 22:51:29 +00:00
|
|
|
// Finish by binding the form middleware
|
|
|
|
app.param('formId', forms.formByID);
|
|
|
|
};
|