-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathwebserver.js
108 lines (66 loc) · 2.28 KB
/
webserver.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
const express = require('express');
const app = express();
const fs = require('fs');
const {readDataBase, saveAccountData,login,saveTaskInfo,giveUserData,giveUsersInDatebase,giveUserTaskWeekly,giveUserTaskMonthly} = require('./utils.js');
const res = require('express/lib/response');
const { redirect } = require('express/lib/response');
const path = require('path');
const staticPath=path.join(__dirname,"views");
app.use(express.static(staticPath));
app.use(express.json()); // Used to parse JSON bodies
app.use(express.urlencoded()); //Parse URL-encoded bodies
app.get('/',(req,res)=>{
res.sendFile(__dirname + "/views" +"/signup.html")
});
//change code
app.get('/api',(req,res)=>{
let userNameList = giveUsersInDatebase();
res.send(userNameList);
})
app.post('/',(req, res) => {
let myDataBase = readDataBase("db");
const newAccountId = Math.floor(100000 + Math.random()*900000);
myDataBase[newAccountId] = req.body;
myDataBase[newAccountId]["tasks"] = [];
saveAccountData(myDataBase)
return res.redirect('/login')
})
app.get('/login',(req,res) =>{
res.sendFile(__dirname + "/views" +"/login.html")
})
app.post('/login',(req,res)=>{
const formData = req.body;
const userName = formData["username"];
const passWord = formData["password"];
let userLogin = login(userName,passWord);
if (userLogin.islogin){
return res.redirect(`/tasks/${userLogin.userId}`)
}
})
app.get('/api/tasks/:id',(req,res)=>{
let userId = req.params.id;
let userData = giveUserData(userId);
res.send(userData);
})
app.post('/tasks/:id',(req,res)=>{
let requestContent = req.body;
let userId = req.params.id;
saveTaskInfo(requestContent, userId);
return res.redirect(`/tasks/${userId}`);
})
app.get('/tasks/:id',(req,res)=>{
let userId = req.params.id;
res.sendFile(__dirname + "/views" + "/task.html")
})
app.get('/api/weekly/:id',(req,res)=>{
let userId = req.params.id;
let weeklyTasks = giveUserTaskWeekly(userId);
res.send(weeklyTasks);
})
app.get('/api/monthly/:id',(req,res)=>{
let userId = req.params.id;
let monthlyTasks = giveUserTaskMonthly(userId);
res.send(monthlyTasks);
})
app.listen(3000);
console.log("I am listenng");