'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); }