26 lines
871 B
JavaScript
26 lines
871 B
JavaScript
const express = require('express');
|
|
const router = express.Router();
|
|
const {
|
|
submitFeedback,
|
|
getFeedback,
|
|
getFeedbackList,
|
|
processFeedback,
|
|
getFeedbackStats
|
|
} = require('../controllers/feedbackController');
|
|
const { authenticate, authorize } = require('../middleware/auth');
|
|
const { validate, schemas } = require('../middleware/validation');
|
|
|
|
// All feedback routes require authentication
|
|
router.use(authenticate);
|
|
|
|
// Feedback submission (public to authenticated users)
|
|
router.post('/submit', validate(schemas.submitFeedback), submitFeedback);
|
|
|
|
// Feedback management (admin only)
|
|
router.get('/stats', authorize('admin'), getFeedbackStats);
|
|
router.get('/', authorize('admin'), getFeedbackList);
|
|
router.get('/:feedbackId', authorize('admin'), getFeedback);
|
|
router.put('/:feedbackId/process', authorize('admin'), processFeedback);
|
|
|
|
module.exports = router;
|