-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathapp.js
95 lines (83 loc) · 2.47 KB
/
app.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
// simple paypal checkout node script
// npm packages used
let express = require('express');
let paypal = require('paypal-rest-sdk');
let app = express();
let fs = require('fs');
// server settings
app.set('view engine', 'ejs');
app.use('/public/images/', express.static('./public/images'));
app.use('/public/css/', express.static('./public/css'));
// handle the different website handlers
app.get('/', (req, res) => {
res.render('home')
})
app.get('/projects.ejs', (req, res) => {
res.render('projects')
})
app.get('/home.ejs', (req, res) => {
res.render('home')
})
app.get('/index.ejs', (req, res) => {
res.render('index')
})
app.get('/contact.ejs', (req, res) => {
res.render('contact')
})
app.get('/privacy-policy.ejs', (req, res) => {
res.render('privacy-policy')
})
// initialize express server
app.listen(80, () => {
console.log("Server started on: localhost:80");
})
// stock test code
app.get('/api/stocks/tickerTest', (req, res) => {
var fileName = './json/stocks.json';
fs.access(fileName, fs.constants.R_OK, (error) => {
if(!error) {
fs.readFile(fileName, (err, json) => {
let obj = JSON.parse(json);
obj["status"] = 0;
res.json(obj);
});
} else {
console.log(error);
res.send({status: -1});
}
});
});
// season example 19-20
app.get('/api/premierleague/:season/standings', (req, res) => {
var fileName = './json/' + req.params.season + '/PremierLeagueTable.json';
fs.access(fileName, fs.constants.R_OK, (error) => {
if(!error) {
fs.readFile('./json/' + req.params.season + '/PremierLeagueTable.json', (err, json) => {
let obj = JSON.parse(json);
obj["status"] = 0;
res.json(obj);
});
} else {
console.log(error);
res.send({status: -1});
}
});
});
app.get('/api/premierleague/:season/week/:weekNumber', (req, res) => {
var fileName = './json/' + req.params.season + '/Week' + req.params.weekNumber + '.json';
fs.access(fileName, fs.constants.R_OK, (error) => {
if(!error) {
console.log(fileName);
fs.readFile(fileName, (err, json) => {
let obj = JSON.parse(json);
obj["status"] = 0;
res.json(obj);
});
} else {
console.log("Couldn't find data");
res.send({status: -1});
}
});
console.log("Page visited");
});
app.get('/cancelled', (req, res) => res.render('projects'));