Advertisement
Guest User

Untitled

a guest
Jan 31st, 2017
95
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.12 KB | None | 0 0
  1. var mongoose = require('mongoose');
  2.  
  3.  
  4. var userSchema = new mongoose.Schema({
  5. username: String,
  6. password: String,
  7. created_at: { type: Date, default: Date.now }
  8. });
  9.  
  10. var todoSchema = new mongoose.Schema({
  11. title: String,
  12. done: Boolean,
  13. priority: String,
  14. deadLine: String,
  15. masterDetailNote: String
  16. });
  17.  
  18. mongoose.model('User', userSchema);
  19. mongoose.model('Todo', todoSchema);
  20.  
  21. var express = require('express');
  22. var router = express.Router();
  23. var mongoose = require('mongoose');
  24. var Todo = mongoose.model('Todo', todoSchema);
  25.  
  26. router.use(function(req, res, next) {
  27.  
  28. if (req.method === "GET") {
  29. return next();
  30. }
  31.  
  32. if (!req.isAuthenticated()) {
  33. return res.redirect('#/login');
  34. }
  35. return next();
  36. });
  37. router.route('/posts')
  38.  
  39. //returns all todos
  40. .get(function(req, res) {
  41.  
  42. Todo.find(function(err, data) {
  43.  
  44. if (err) {
  45. return res.send(500, err);
  46. }
  47.  
  48. return res.send(data);
  49.  
  50. });
  51.  
  52. })
  53.  
  54. //creates a new todo
  55. .post(function(req, res) {
  56.  
  57. var todo = new Todo();
  58. todo.title = req.body.title;
  59. todo.done = req.body.done;
  60. todo.priority = req.body.priority;
  61. todo.deadLine = req.body.deadLine;
  62. todo.masterDetailNote = req.body.masterDetailNote;
  63.  
  64. todo.save(function(err, post) {
  65. if (err) {
  66. return res.send(500, err);
  67. }
  68. return res.json(todo);
  69. });
  70. });
  71.  
  72. router.route('/posts/:id')
  73.  
  74. //egy bizonyos Todo-t hoz vissza
  75. .get(function(req, res) {
  76. Todo.findById(req.params.id, function(err, post) {
  77. if (err)
  78. res.send(err);
  79. res.json(post);
  80. });
  81. })
  82.  
  83. //frissít egy todot
  84. .put(function(req, res) {
  85. Todo.findById(req.params.id, function(err, post) {
  86. if (err)
  87. res.send(err);
  88.  
  89. todo.title = req.body.title;
  90. todo.done = req.body.done;
  91. todo.priority = req.body.priority;
  92. todo.deadLine = req.body.deadLine;
  93. todo.masterDetailNote = req.body.masterDetailNote;
  94.  
  95. todo.save(function(err, post) {
  96. if (err)
  97. res.send(err);
  98.  
  99. res.json(post);
  100. });
  101. });
  102. })
  103.  
  104. .delete(function(req, res) {
  105. Todo.remove({
  106. _id: req.params.id
  107. }, function(err) {
  108. if (err)
  109. res.send(err);
  110. res.json("deleted :(");
  111. });
  112. });
  113.  
  114. module.exports = router;
  115.  
  116. var Todo = mongoose.model('Todo', todoSchema);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement