Guest User

Untitled

a guest
Mar 9th, 2018
92
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.44 KB | None | 0 0
  1. var express = require('express')
  2. const Todo = require('../models/todo')
  3. const User = require('../models/user')
  4. var session = require('express-session')
  5. const app = express()
  6.  
  7. app.use(session({
  8. secret: 'keyboard cat',
  9. resave: false,
  10. saveUninitialized: true
  11. }))
  12.  
  13. app.get('/user', (request, response) => {
  14. User.find().then(user => {
  15. response.json({user})
  16. })
  17. })
  18. app.post('/newUser', (request, response) => {
  19. let user = new User(request.body)
  20. user.save((err, createdUser) => {
  21. if (err) {
  22. response.status(500).send(err)
  23. }
  24. response.status(200).send(createdUser)
  25. })
  26. })
  27. // login
  28. app.post('/login', (request, response) => {
  29. User.findOne({
  30. email: request.body.email
  31. }, (err, user) => {
  32. if (err) throw err
  33. if (!user) {
  34. response.status(401).json({ message: 'Authentication failed. User not found.' })
  35. } else if (user) {
  36. if (!user.password === request.body.password) {
  37. response.status(401).json({ message: 'Authentication failed. Wrong password.' })
  38. } else {
  39. let sess = request.session
  40. sess.email = user.email
  41. sess._id = user._id
  42. response.status(200).send(user.email + ' ' + user._id)
  43. }
  44. }
  45. })
  46. })
  47. app.get('/session', (request, response) => {
  48. let sess = request.session
  49. console.log(sess)
  50. response.status(200).send('email = ' + sess.email + ' ' + '_id = ' + sess._id)
  51. })
  52.  
  53. app.get('/todos', (request, response) => {
  54. Todo.find().then(todos => {
  55. response.json({todos})
  56. })
  57. })
  58. app.post('/post', (request, response) => {
  59. let todo = new Todo(request.body)
  60. todo.save((err, createdTodo) => {
  61. if (err) {
  62. response.status(500).send(err)
  63. }
  64. response.status(200).send(createdTodo)
  65. })
  66. })
  67. app.post('/put/:todoId', (request, response) => {
  68. Todo.findById(request.params.todoId, (err, todo) => {
  69. if (err) {
  70. response.status(500).send(err)
  71. } else {
  72. todo.description = request.body.description || todo.description
  73. todo.done = request.body.done || todo.done
  74. todo.save((err, todo) => {
  75. if (err) {
  76. response.status(500).send(err)
  77. }
  78. response.status(200).send(todo)
  79. })
  80. }
  81. })
  82. })
  83. app.post('/delete/:todoId', (request, response) => {
  84. Todo.findByIdAndRemove(request.params.todoId, (err, todo) => {
  85. if (err) {
  86. response.status(500).send(err)
  87. }
  88. let res = {
  89. message: 'Todo successfully deleted',
  90. id: todo._id
  91. }
  92. response.status(200).send(res)
  93. })
  94. })
  95. module.exports = app
Add Comment
Please, Sign In to add comment