-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathapi-routes.js
39 lines (32 loc) · 1.02 KB
/
api-routes.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
const router = require('express').Router();
const path = require('path');
// Set default API response
router.get('/v1/', function(req, res) {
res.json({
status: 'success',
message: 'Style Hatch API',
});
});
// Import contact controller
const supportController = require('./supportController');
// POST route for form submissions
router.route('/v1/support').post(supportController.new);
// Get the full index list of all submissions only in development env
if (process.env.NODE_ENV === 'development') {
router.route('/v1/support').get(supportController.index);
}
// Get individual support requests by the db _id
router.route('/v1/support/:support_id').get(supportController.view);
// Temporary, quick-and-dirty form for testing submissions
router.get('/form', function(req, res) {
res.sendFile(path.join(__dirname + '/form.html'));
});
// Wildcard '404'
router.get('*', function(req, res) {
res.json({
status: 'error',
message: 'Invalid API enpoint',
});
});
// Export API routes
module.exports = router;