Files
kavehhn cd98adff84 feat: add pending student registration flow and pricing APIs.
Support public class lookup, user provisioning, installment pricing, and admin approval before final enrollment.
2026-08-16 08:42:25 +03:30

39 lines
1.1 KiB
JavaScript

'use strict';
const express = require('express');
const pendingStudentController = require('./pendingStudentController');
const authMiddleware = require('../../middlewares/authMiddleware');
const perm = require('../../middlewares/permissionMiddleware');
const { PERMISSIONS } = require('../../constants/permissions');
const router = express.Router();
router.get('/public/pricing', pendingStudentController.getPricing);
router.post('/public/ensure-user', pendingStudentController.ensureUser);
router.post('/public/complete', pendingStudentController.completeAfterPayment);
router.use(authMiddleware);
router.get(
'/admin/get-all',
perm.requires(PERMISSIONS.PENDING_STUDENTS_READ),
pendingStudentController.getAll
);
router.get(
'/admin/get-one/:id',
perm.requires(PERMISSIONS.PENDING_STUDENTS_READ),
pendingStudentController.getOne
);
router.post(
'/admin/:id/approve',
perm.requires(PERMISSIONS.PENDING_STUDENTS_UPDATE),
pendingStudentController.approve
);
router.post(
'/admin/:id/reject',
perm.requires(PERMISSIONS.PENDING_STUDENTS_UPDATE),
pendingStudentController.reject
);
module.exports = router;