forked from mackyboy001/employee-records-system
-
Notifications
You must be signed in to change notification settings - Fork 0
/
index.js
115 lines (102 loc) · 2.48 KB
/
index.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
106
107
108
109
110
111
112
113
114
115
var express = require('express');
var bodyParser = require('body-parser');
var path = require('path');
var Datastore = require('nedb');
var db = new Datastore({
filename: 'data/employees.db',
autoload: true
});
var app = express();
var http = require('http').Server(app);
var io = require('socket.io')(http);
var PORT = 3000;
// View Engine
app.set('view engine', 'ejs');
app.set('views', path.join(__dirname, 'views'));
// Body Parser Middleware
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({
extended: false
}));
// Set Static Path
app.use(express.static(path.join(__dirname, 'public')));
io.on('connection', function (socket) {
console.log("A user connected.")
socket.on('add', function (data) {
io.emit('add', data);
});
socket.on('update', function (data) {
io.emit('update', true);
});
socket.on('delete', function (data) {
io.emit('delete', true);
});
});
app.get('/', function (req, res) {
res.render('index')
});
app.get('/api/employees', function (req, res) {
db.find({}, function (err, docs) {
if (err) {
res.json({
success: false,
message: err
});
} else {
res.json(docs);
}
})
});
app.post('/api/employees', function (req, res) {
var employee = req.body;
db.insert(employee, function (err, newDoc) {
if (err) {
res.json({
success: false,
message: err
});
} else {
res.json({
success: true,
doc: newDoc
});
}
});
});
app.put('/api/employees', function (req, res) {
var employee = req.body;
db.update({
_id: employee._id
}, employee, {}, function (err, numReplaced) {
if (err) {
res.json({
success: false,
message: err
});
} else {
res.json({
success: true
});
}
});
});
app.delete('/api/employees/:_id', function (req, res) {
var _id = req.params._id;
db.remove({
_id: _id
}, {}, function (err, numRemoved) {
if (err) {
res.json({
success: false,
message: err
});
} else {
res.json({
success: true
});
}
});
});
http.listen(PORT, function () {
console.log(`Server Started on Port ${PORT}....`);
})