Browse Source

Add 404 route

master
Garrit Franke 3 years ago
parent
commit
f118b8deef
  1. 4
      client/app.js
  2. 15
      client/routes/clients.js
  3. 13
      client/views/404.jsx
  4. 6
      server/routes/clients.js

4
client/app.js

@ -42,4 +42,8 @@ app.use((req, res, next) => {
app.use("/", require("./routes/index"));
app.use("/clients", require("./routes/clients"));
app.get("/*", (req, res) => {
res.render("404");
});
app.listen(process.env.PORT || 80);

15
client/routes/clients.js

@ -28,12 +28,15 @@ router.get("/new", async (req, res) => {
});
router.get("/:id", async (req, res) => {
const client = await axios
.get(basePath + "/clients/" + req.params.id, {
headers: { Authorization: "Bearer " + req.cookies.token },
})
.then((r) => r.data);
res.send(client);
const client = await axios.get(basePath + "/clients/" + req.params.id, {
headers: { Authorization: "Bearer " + req.cookies.token },
});
if (res.status === 404) {
res.render("404");
} else {
res.send(client.data);
}
});
module.exports = router;

13
client/views/404.jsx

@ -0,0 +1,13 @@
import React from "react";
import Layout from "./layouts/Main";
export default function Index() {
return (
<Layout>
<div className="jumbotron">
<h1 className="display-4">404</h1>
<p class="lead">This page was not found.</p>
</div>
</Layout>
);
}

6
server/routes/clients.js

@ -1,4 +1,5 @@
const router = require("express").Router();
const mongoose = require("mongoose");
const Client = require("../model/Client");
const User = require("../model/User");
@ -53,6 +54,11 @@ router.post("/", async (req, res) => {
router.get("/:id", async (req, res) => {
const id = req.params.id;
if (!mongoose.Types.ObjectId.isValid(id)) {
res.status(404).send("Client not found");
return;
}
const client = await Client.findOne({ _id: id, created_by: req.userId });
const status = client.events
.filter((event) => event.eventType == "status_changed")

Loading…
Cancel
Save