Clarkson/clarkson.js
Josh Stark 4a67b8ea3a Show error on registration failure.
Also fixed registration flag bug in server side
2018-02-11 09:47:25 +00:00

47 lines
1.5 KiB
JavaScript

var express = require("express"),
app = express(),
path = require("path"),
morgan = require("morgan"),
db = require("./server/db/mysql"),
config = require("./server/config"),
auth = require("./server/security/auth");
app.use(require("helmet")());
app.use(require("body-parser").json());
app.use(require("cors")());
app.use(morgan("combined", {
skip: function(req, res) {
return res.statusCode < 400;
}
}));
app.use(express.static(path.join(__dirname, 'dist')));
// Unauthenticated endpoint used for checking user credentials
app.use("/api/auth", require("./server/routes/auth"));
app.use("/api/units", require("./server/routes/units"));
app.use("/api/ping", require("./server/routes/ping"));
// User endpoint contains a mix of authenticated and unauthenticated endpoints
app.use("/api/user", require("./server/routes/user"));
// All authenticated endpoints - user must provide a valid JWT in the header
app.use("/api/vehicle", auth.verify, require("./server/routes/vehicle"));
app.use("/api/fuel", auth.verify, require("./server/routes/fuel"));
app.use("/api/cost", auth.verify, require("./server/routes/cost"));
app.use("/api/dashboard", auth.verify, require("./server/routes/dashboard"));
// Serve the main web app
app.get("*", function(req, res) {
res.sendFile(path.join(__dirname, 'dist/index.html'));
});
db.connect(function(err) {
if (err) {
throw err;
} else {
module.exports = app.listen(config.port);
}
});