Du kannst nicht mehr als 25 Themen auswählen Themen müssen entweder mit einem Buchstaben oder einer Ziffer beginnen. Sie können Bindestriche („-“) enthalten und bis zu 35 Zeichen lang sein.
 
 
 

59 Zeilen
1.9 KiB

  1. /* eslint-disable vars-on-top */
  2. /* eslint-disable no-var */
  3. const express = require('express');
  4. const router = express.Router();
  5. const userApi = require('../api/users');
  6. const editApi = require('../api/editable');
  7. const clearApi = require('../api/auto-clear');
  8. async function isAuthenticated(req, res, next) {
  9. if (req.user && req.isAuthenticated()) {
  10. var editable = await editApi.isEditable(req.session.passport.user.jwt);
  11. var autoClear = await clearApi.autoClear(req.session.passport.user.jwt);
  12. res.locals.editable = editable ? editable.attributes.Active : false;
  13. res.locals.autoClear = autoClear ? autoClear.attributes : null;
  14. res.locals.role = req.session.passport.user.role ? req.session.passport.user.role.name : null;
  15. if(res.locals.role !='Admin'){
  16. req.session.companySelected = req.session.passport.user.company;
  17. req.session.divisionSelected = req.session.passport.user.division;
  18. }
  19. return next();
  20. }
  21. return res.redirect('/login');
  22. }
  23. router.post('/change', isAuthenticated, async (req, res) => {
  24. var user = req.body.user;
  25. var state = req.body.state;
  26. var editor = req.body.editor;
  27. if(user && state){
  28. var changeUser = await userApi.setState(req.session.passport.user.jwt,req.body.user,req.body.state == 'Active'?true:false);
  29. if(!changeUser){
  30. return res.redirect('/users?s=err');
  31. }
  32. }
  33. if(user && editor){
  34. var setEditor = await userApi.setEditor(req.session.passport.user.jwt,req.body.user,editor);
  35. if(!setEditor){
  36. return res.redirect('/users?s=err');
  37. }
  38. }
  39. return res.redirect('/users');
  40. });
  41. router.post('/delete', isAuthenticated, async (req, res) => {
  42. var user = req.body.user;
  43. if(user){
  44. var deleteUser = await userApi.deleteUser(req.session.passport.user.jwt,req.body.user);
  45. if(!deleteUser){
  46. return res.redirect('/users?s=err');
  47. }
  48. }
  49. return res.redirect('/users');
  50. });
  51. module.exports = router;