Guest User

Untitled

a guest
Sep 3rd, 2018
134
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.23 KB | None | 0 0
  1. function MainController() {
  2.  
  3. var util = require('util');
  4.  
  5. this.authRequired = true;
  6.  
  7. public_get('/login', function(req, res) {
  8. res.rawHttpMessage("Please " + "Authenticate →".link('/auth'));
  9. });
  10.  
  11. public_get('/auth', function(req, res) {
  12. app.session.create(req, res, {user: 'ernie'}, true, function(session) {
  13. app.home(res);
  14. });
  15. });
  16.  
  17. get('/logout', function(req, res) {
  18. app.session.destroy(req, res, function() {
  19. app.login(res);
  20. });
  21. });
  22.  
  23. get('/', function(req, res) {
  24. app.usersModel.getAll({
  25. cacheID: 'users_query',
  26. timeout: 3600
  27. }, function(err, models) {
  28. if (err) app.serverError(res, err);
  29. else {
  30. if (models.length > 0) res.end(util.inspect(models));
  31. else res.end('No users yet.');
  32. }
  33. });
  34. });
  35.  
  36. get('/new/:user/:pass', {user: 'alpha', pass: 'password'}, function(req, res) {
  37. var userData = req.__params;
  38. app.usersModel.insert(userData,
  39. {cacheInvalidate: 'users_query'}, function(err, id) {
  40. if (err) app.rawServerError(res, util.format("The user '%s' already exists.", userData.user), err);
  41. else { app.home(res); }
  42. });
  43. });
  44.  
  45. get('/cleanup', function(req, res) {
  46. app.usersModel.driver.deleteWhere({
  47. condition: '1=1',
  48. table: 'users',
  49. cacheInvalidate: 'users_query'
  50. }, function(err, info) {
  51. if (err) app.serverErr(res, err);
  52. else app.home(res);
  53. })
  54. });
  55.  
  56. get('/update/:user/:pass',
  57. {user: 'alpha', pass: 'password'},
  58. function(req, res) {
  59. var userData = req.__params;
  60. app.usersModel.find({user: userData.user}, function(err, model) {
  61. if (err) app.serverError(res, err);
  62. else {
  63. if (model) {
  64. model.pass = userData.pass;
  65. model.save({cacheInvalidate: 'users_query'}, function(err) {
  66. if (err) app.serverError(res, err);
  67. else {
  68. var msg = "Password for '%s' successfully updated. " + "Back Home →".link('/');
  69. res.rawHttpMessage(util.format(msg, userData.user));
  70. }
  71. });
  72. } else {
  73. app.rawServerError(res, util.format("The user '%s' does not exist.", userData.user));
  74. }
  75. }
  76. })
  77. });
  78.  
  79. }
  80.  
  81. module.exports = MainController;
Add Comment
Please, Sign In to add comment