Advertisement
Guest User

Untitled

a guest
May 13th, 2016
78
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.05 KB | None | 0 0
  1. var express = require('express');
  2.  
  3. var app = express();
  4. var fs = require('fs');
  5. var bodyParser = require('body-parser');
  6. var session = require('express-session');
  7.  
  8.  
  9. app.use(bodyParser.json());
  10. app.use(express.static(__dirname));
  11.  
  12. var urlencodedParser = bodyParser.urlencoded({extended : true });
  13.  
  14.  
  15. app.use(session({secret:"hayarowanfarah",resave:false,saveUninitialized:true}));
  16.  
  17.  
  18.  
  19. app.get('/dashboard',function(req, res){
  20. if(!req.session.userIndex){
  21. return res.status(401).send();
  22. }
  23.  
  24. return res.status(200).send("Welcome to super secret API");
  25.  
  26.  
  27.  
  28. });
  29.  
  30.  
  31.  
  32. app.get('/', function (req, res) {
  33. res.sendFile( __dirname + "/" + "to do register.html" );
  34. })
  35.  
  36. app.get('/log', function (req, res) {
  37. res.sendFile( __dirname + "/" + "loginForm.html" );
  38. })
  39.  
  40. app.get('/project', function (req, res) {
  41. res.sendFile( __dirname + "/" + "project.html" );
  42. })
  43.  
  44. app.get('/sendMyTasks', function (req, res) {
  45. res.json(userTasks);
  46. });
  47.  
  48.  
  49. app.get('/logout',urlencodedParser, function (req,res) {
  50. delete req.session.userIndex ;
  51. res.redirect("/");
  52. });
  53.  
  54. app.post('/login',urlencodedParser, function (req,res) {
  55. // load all data
  56. var data = fs.readFileSync(__dirname + "/" + "users.json",'utf8');
  57. data = JSON.parse(data);
  58.  
  59. // search for user
  60. var flag = 0 ;
  61. for(var x in data["users"]){
  62. if(req.body.demail == data["users"][x].email && req.body.password == data["users"][x].password){
  63. flag = 1 ;
  64. user_id = x;
  65. break;
  66. }
  67. }
  68.  
  69. if(flag == 1) {
  70. userTasks = data["users"][req.session.userIndex].tasks;
  71. console.log("Successfully logged in.");
  72. req.session.userIndex = user_id ;
  73. res.redirect("/project");
  74. } else {
  75. flag = 0;
  76. console.log("ERROR");
  77.  
  78. res.redirect("/");
  79. }
  80.  
  81. });
  82.  
  83. app.post('/save', urlencodedParser, function(req, res){
  84. var data = fs.readFileSync(__dirname + "/" + "users.json",'utf8');
  85. data = JSON.parse(data);
  86. var tasks = req.body.data;
  87. data["users"][req.session.userIndex].tasks = tasks;
  88. fs.writeFile(__dirname + "/" + "users.json" , JSON.stringify(data), function(err){
  89. if(err) return console.log(err);
  90. userTasks = data["users"][req.session.userIndex].tasks;
  91. });
  92. });
  93.  
  94. app.post('/register',urlencodedParser, function (req,res) {
  95.  
  96. var data = fs.readFileSync(__dirname + "/" + "users.json",'utf8');
  97. data = JSON.parse(data);
  98. for(var x in data["users"]){
  99. if(req.body.demail == data["users"][x].email){
  100. return res.redirect("/");
  101. }
  102. }
  103.  
  104. var user = {
  105. "name" : req.body.dname,
  106. "email" : req.body.demail,
  107. "password" : req.body.password,
  108. "tasks" :[]
  109. }
  110. data["users"].push(user);
  111. fs.writeFile(__dirname + "/" + "users.json" , JSON.stringify(data), function(err){
  112. if(err) return console.log(err);
  113. } );
  114.  
  115. res.redirect("/log");
  116.  
  117. });
  118.  
  119. var server = app.listen(8001, function () {
  120.  
  121. var host = server.address().address
  122. var port = server.address().port
  123. var user_id = 0
  124. var userTasks
  125. console.log("Example app listening at http://%s:%s", host, port)
  126.  
  127. })
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement