agmission/Development/server/routes/main.js

38 lines
1.4 KiB
JavaScript

'use strict';
module.exports = function (app) {
const router = require('express').Router(),
mailer = require('../helpers/mailer'),
mainCtl = require('../controllers/main');
router.get('/appConfig', mainCtl.getAppConfig_get);
router.post('/appConfig', mainCtl.setAppConfig_post);
router.post('/siteVer', mainCtl.getSiteVer_post);
router.post('/sendTestMail', mailer.sendTestMail);
router.get('/ping', mainCtl.pingAPI_get);
// ========== Subscription Promo Routes ==========
// Public: Get active promos for front-end display
router.get('/activePromos', mainCtl.getActivePromos_get);
// Admin: Full promo management
router.get('/admin/subscriptionPromos', mainCtl.getSubscriptionPromos_get);
router.get('/admin/subscriptionPromos/coupons', mainCtl.getForeverCoupons_get);
router.post('/admin/subscriptionPromos', mainCtl.setSubscriptionPromos_post);
router.post('/admin/subscriptionPromos/add', mainCtl.addSubscriptionPromo_post);
router.put('/admin/subscriptionPromos/:id', mainCtl.updateSubscriptionPromo_put);
router.delete('/admin/subscriptionPromos/:id', mainCtl.deleteSubscriptionPromo_delete);
// router.get('/longOp', mainCtl.doLongOp_post);
// router.get('/check', (req, res) => {
// res.send("OK").end();
// });
router.get('/testIP', (request, response) => response.send(request.ip))
app.use('/api', router);
}