forked from sfetrow/JSFBrowser
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathapp.js
More file actions
114 lines (102 loc) · 4.4 KB
/
Copy pathapp.js
File metadata and controls
114 lines (102 loc) · 4.4 KB
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
const express = require('express'); //Load express framework module
const app = express(); //create an instance of express named "app"
const path = require('path'); //create an instance of the express direcrory handler
const request = require('request'); // For making API requests
const bodyParser = require('body-parser'); //Parses data from http request bodies
//Set up bodyParser
app.use(bodyParser.urlencoded({
extended: true
}));
app.use(bodyParser.json());
//Set up PUG view engine
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'pug');
app.use(express.static("public"));
app.listen(3000, function() {
console.log('Listening on port ' + 3000 + '.');
});
app.get('/', function(req, res, err) {
res.status(200).render('index');
});
app.post('/search', function(req, res, err) {
request('http://jsfdb.supermechacow.com/api/v0/fighter/search/' + req.body.search, function(request_err, request_res, request_body) {
if (request_err || request_res.statusCode != 200) {
res.send("Oops! There was a problem with the request module: <br>" + request_err);
} else if (request_body == "undefined") {
res.send("Oops! Server had no fighters!");
} else {
res.status(200).render('listfighters', {
list: JSON.parse(request_body)
});
}
})
});
app.get('/list/fighters', function(req, res, err) {
request('http://jsfdb.supermechacow.com/api/v0/fighter/list/', function(request_err, request_res, request_body) {
if (request_err || request_res.statusCode != 200) {
res.send("Oops! There was a problem with the request module: <br>" + request_err);
} else if (request_body == "undefined") {
res.send("Oops! Server had no fighters!");
} else {
res.status(200).render('listfighters', {
list: JSON.parse(request_body)
});
}
})
});
app.get('/list/players', function(req, res, err) {
request('http://jsfdb.supermechacow.com/api/v0/player/list', function(request_err, request_res, request_body) {
if (request_err || request_res.statusCode != 200) {
res.send("Oops! There was a problem with the request module: <br>" + request_err);
} else if (request_body == "undefined") {
res.send("Oops! Server had no players!");
} else {
res.status(200).render('listplayers', {
list: JSON.parse(request_body)
});
}
})
});
app.get('/player/:player', function(req, res, err) {
request('http://jsfdb.supermechacow.com/api/v0/player/show/' + req.params.player, function(request_err, request_res, request_body) {
if (request_err || request_res.statusCode != 200) {
res.send("Oops! There was a problem with the request module: <br>" + request_err);
} else if (request_body == "undefined") {
res.send("Oops! Server didn't find that player in the database: <br>" + req.params.player);
} else {
res.status(200).render('listfighters', {
list: JSON.parse(request_body)
});
}
})
});
app.get('/fighter/:fighterUID', function(req, res, err) {
request('http://jsfdb.supermechacow.com/api/v0/fighter/show/' + req.params.fighterUID, function(request_err, request_res, request_body) {
if (request_err || request_res.statusCode != 200) {
res.send("Oops! There was a problem with the request module: <br>" + request_err);
} else if (request_body == "undefined") {
res.send("Oops! Server didn't find that fighter in the database: <br>" + req.params.fighterUID);
} else {
res.status(200).render('fighter', JSON.parse(request_body));
}
})
});
app.get('/add/', function(req, res, err) {
res.status(200).render('add');
});
app.post('/add/', function(req, res, err) {
request.post("http://jsfdb.supermechacow.com/api/v0/fighter/", {
form: {
fightername: req.body.fightername,
fighterID: req.body.fighterID
}
}, function(request_err, request_res, request_body) {
if (request_res.statusCode == 201) {
res.status(200).redirect("/fighter/" + req.body.fighterID);
} else if (request_res.statusCode == 403) {
res.status(200).redirect("/fighter/" + req.body.fighterID);
} else {
res.send("Error!")
}
})
});