2023-07-19 12:29:44 +02:00
|
|
|
const axios = require("axios");
|
2021-07-16 09:12:30 +02:00
|
|
|
|
|
|
|
module.exports = (fastify, opts, done) => {
|
2023-07-19 12:29:44 +02:00
|
|
|
fastify.get("/flight/:id", async (req, reply) => {
|
|
|
|
const ENDPOINT = "https://www.flightradar24.com/v1/search/web/find";
|
|
|
|
const FORMAT = "-";
|
|
|
|
if (req.params.id) {
|
|
|
|
axios
|
|
|
|
.get(ENDPOINT, {
|
|
|
|
params: {
|
|
|
|
format: FORMAT,
|
|
|
|
query: req.params.id,
|
|
|
|
limit: 16,
|
|
|
|
type: "schedule",
|
|
|
|
},
|
|
|
|
})
|
|
|
|
.then((res) => reply.send(res.data));
|
|
|
|
} else {
|
|
|
|
return reply.send([]);
|
|
|
|
}
|
|
|
|
return reply;
|
|
|
|
});
|
|
|
|
fastify.get("/place/:id", async (req, reply) => {
|
|
|
|
const ENDPOINT = "https://nominatim.openstreetmap.org/";
|
|
|
|
const FORMAT = "jsonv2";
|
|
|
|
if (req.params.id) {
|
|
|
|
axios
|
|
|
|
.get(ENDPOINT, {
|
|
|
|
params: {
|
|
|
|
format: FORMAT,
|
|
|
|
q: req.params.id,
|
|
|
|
},
|
|
|
|
})
|
|
|
|
.then((res) => reply.send(res.data));
|
|
|
|
} else {
|
|
|
|
return reply.send([]);
|
|
|
|
}
|
|
|
|
return reply;
|
|
|
|
});
|
2021-07-16 09:12:30 +02:00
|
|
|
|
2023-07-19 12:29:44 +02:00
|
|
|
fastify.get("/:id", async (req, reply) => {
|
|
|
|
if (req.params.id == undefined)
|
|
|
|
return reply.code(400).send({ error: "No ID query parameter" });
|
2021-07-16 09:12:30 +02:00
|
|
|
|
2023-07-19 12:29:44 +02:00
|
|
|
fastify.level.db.get(req.params.id, (err, val) => {
|
|
|
|
if (err) {
|
|
|
|
console.warn(err);
|
|
|
|
reply.code(500).send();
|
|
|
|
} else {
|
|
|
|
reply.send(JSON.parse(val));
|
|
|
|
}
|
|
|
|
});
|
|
|
|
return reply;
|
|
|
|
});
|
2021-07-16 09:12:30 +02:00
|
|
|
|
2023-07-19 12:29:44 +02:00
|
|
|
fastify.post("/:id", async (req, reply) => {
|
|
|
|
if (req.params.id == undefined)
|
|
|
|
return reply.code(400).send({ error: "No ID query parameter" });
|
2021-07-16 12:12:05 +02:00
|
|
|
|
2023-07-19 12:29:44 +02:00
|
|
|
fastify.level.db.put(req.params.id, JSON.stringify(req.body), (err) => {
|
|
|
|
if (err) {
|
|
|
|
console.warn(err);
|
|
|
|
reply.code(500).send({ error: "Error with DB" });
|
|
|
|
} else {
|
|
|
|
reply.send({ content: "ok" });
|
|
|
|
}
|
|
|
|
});
|
|
|
|
return reply;
|
|
|
|
});
|
2021-07-16 09:12:30 +02:00
|
|
|
|
2023-07-19 12:29:44 +02:00
|
|
|
done();
|
|
|
|
};
|