forked from websecurify/acme-no-login
-
Notifications
You must be signed in to change notification settings - Fork 0
/
index.js
83 lines (55 loc) · 1.31 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
var express = require('express');
var mongoose = require('mongoose');
// ---
// ---
// ---
var UserSchema = new mongoose.Schema({
name: String,
user: String,
pass: String
});
// ---
var User = mongoose.model('User', UserSchema);
// ---
[['Administrator', 'admin', 'admin'], ['User', 'user', 'user'], ['Jules', 'bad', 'motherfucker']].forEach(function (cred) {
var instance = new User();
// ---
instance.name = cred[0];
instance.user = cred[1];
instance.pass = cred[2];
// ---
instance.save();
});
// ---
// ---
// ---
var app = express();
// ---
app.set('views', __dirname);
app.set('view engine', 'jade');
// ---
app.use(require('body-parser').urlencoded({extended: true}));
// ---
app.get('/', function(req, res) {
res.render('index', {});
});
app.post('/', function(req, res) {
User.findOne({user: req.body.user, pass: req.body.pass}, function (err, user) {
if (err) {
return res.render('index', {message: err.message});
}
// ---
if (!user) {
return res.render('index', {message: 'Sorry!'});
}
// ---
return res.render('index', {message: 'Welcome back ' + user.name + '!!!'});
});
});
// ---
var server = app.listen(49090, function () {
mongoose.connect('mongodb://localhost/acme-no-login');
// ---
console.log('listening on port %d', server.address().port);
});
// ---