1
0

web_auth.js 838 B

1234567891011121314151617181920212223242526272829303132
  1. const config = require('../config');
  2. exports.userRequired = (req, res, next) => {
  3. if (req.session.user) {
  4. if (req.session.user.isBlocked) {
  5. req.flash('message', '用户账户被禁用,请联系管理员');
  6. return res.redirect('/');
  7. }
  8. } else {
  9. req.flash('message', '用户尚未登录,请登录');
  10. return res.redirect('/login');
  11. }
  12. next();
  13. };
  14. exports.adminRequired = (req, res, next) => {
  15. if (!req.session.user || !req.session.user.isAdmin) {
  16. req.flash('message', '需要管理员权限');
  17. return res.redirect('/login');
  18. }
  19. next();
  20. };
  21. exports.allowRegister = (req, res, next) => {
  22. if (!config.allowRegister) {
  23. if (!req.session.user || !req.session.user.isAdmin) {
  24. req.flash('message', '管理员未开放注册!');
  25. return res.redirect('/');
  26. }
  27. }
  28. next();
  29. };