Motion and EO endpoints
parent
cf0a386520
commit
7591ba8f20
|
@ -39,7 +39,8 @@
|
||||||
"no-param-reassign": "off",
|
"no-param-reassign": "off",
|
||||||
"no-underscore-dangle": "off",
|
"no-underscore-dangle": "off",
|
||||||
"keyword-spacing": "off",
|
"keyword-spacing": "off",
|
||||||
"no-multiple-empty-lines": "off"
|
"no-multiple-empty-lines": "off",
|
||||||
|
"consistent-return": "off"
|
||||||
},
|
},
|
||||||
"ignorePatterns": "**/*.js"
|
"ignorePatterns": "**/*.js"
|
||||||
}
|
}
|
||||||
|
|
|
@ -11,7 +11,7 @@ export default class Root extends Route {
|
||||||
}
|
}
|
||||||
|
|
||||||
public bind() {
|
public bind() {
|
||||||
this.router.post('/executive-orders', async (req, res) => {
|
this.router.post('/eo', async (req, res) => {
|
||||||
if (!req.body.pin) {
|
if (!req.body.pin) {
|
||||||
return res.status(401).json({
|
return res.status(401).json({
|
||||||
code: this.constants.codes.UNAUTHORIZED,
|
code: this.constants.codes.UNAUTHORIZED,
|
||||||
|
@ -59,13 +59,13 @@ export default class Root extends Route {
|
||||||
const channel = <TextChannel>this.server.client.getChannel('807444198969835550');
|
const channel = <TextChannel>this.server.client.getChannel('807444198969835550');
|
||||||
await channel.createMessage({ embed });
|
await channel.createMessage({ embed });
|
||||||
|
|
||||||
return res.status(200).json({
|
res.status(200).json({
|
||||||
code: this.constants.codes.SUCCESS,
|
code: this.constants.codes.SUCCESS,
|
||||||
message: `Created new Executive Order with ID ${executiveOrder.oID} by ${staffDiscord.username}#${staffDiscord.discriminator}, ${staffInformation.pn.join(', ')}.`,
|
message: `Created new Executive Order with ID ${executiveOrder.oID} by ${staffDiscord.username}#${staffDiscord.discriminator}, ${staffInformation.pn.join(', ')}.`,
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
this.router.post('/motions', async (req, res) => {
|
this.router.post('/motion', async (req, res) => {
|
||||||
if (!req.body.pin) {
|
if (!req.body.pin) {
|
||||||
return res.status(401).json({
|
return res.status(401).json({
|
||||||
code: this.constants.codes.UNAUTHORIZED,
|
code: this.constants.codes.UNAUTHORIZED,
|
||||||
|
@ -119,13 +119,89 @@ export default class Root extends Route {
|
||||||
processed: false,
|
processed: false,
|
||||||
});
|
});
|
||||||
|
|
||||||
return res.status(200).json({
|
res.status(200).json({
|
||||||
code: this.constants.codes.SUCCESS,
|
code: this.constants.codes.SUCCESS,
|
||||||
message: `Created new Motion with ID ${motion.oID} by ${staffDiscord.username}#${staffDiscord.discriminator}, ${staffInformation.pn.join(', ')}.`,
|
message: `Created new Motion with ID ${motion.oID} by ${staffDiscord.username}#${staffDiscord.discriminator}, ${staffInformation.pn.join(', ')}.`,
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
this.router.get('/motions', async (_req, res) => {
|
this.router.delete('/eo/:id', async (req, res) => {
|
||||||
|
if (!req.params.id) return res.status(400).send(this.constants.messages.CLIENT_ERROR);
|
||||||
|
if (!(await this.server.client.db.ExecutiveOrder.exists({ oID: req.params.id }))) return res.status(404).send(this.constants.messages.NOT_FOUND);
|
||||||
|
|
||||||
|
await this.server.client.db.ExecutiveOrder.deleteOne({ oID: req.params.id });
|
||||||
|
|
||||||
|
res.status(200).send({ message: `Executive Order with ID ${req.params.id} deleted.` });
|
||||||
|
});
|
||||||
|
|
||||||
|
this.router.delete('/motion/:id', async (req, res) => {
|
||||||
|
if (!req.params.id) return res.status(400).send(this.constants.messages.CLIENT_ERROR);
|
||||||
|
if (!(await this.server.client.db.Motion.exists({ oID: req.params.id }))) return res.status(404).send(this.constants.messages.NOT_FOUND);
|
||||||
|
|
||||||
|
await this.server.client.db.Motion.deleteOne({ oID: req.params.id });
|
||||||
|
|
||||||
|
res.status(200).send({ message: `Motion with ID ${req.params.id} deleted.` });
|
||||||
|
});
|
||||||
|
|
||||||
|
this.router.get('/eo/:id', async (req, res) => {
|
||||||
|
if (!req.params.id) return res.status(400).send(this.constants.messages.CLIENT_ERROR);
|
||||||
|
if (!(await this.server.client.db.ExecutiveOrder.exists({ oID: req.params.id }))) return res.status(404).send(this.constants.messages.NOT_FOUND);
|
||||||
|
|
||||||
|
const executiveOrder = await this.server.client.db.ExecutiveOrder.findOne({ oID: req.params.id });
|
||||||
|
|
||||||
|
res.status(200).send({
|
||||||
|
issuedBy: executiveOrder.issuedBy,
|
||||||
|
id: executiveOrder.oID,
|
||||||
|
subject: executiveOrder.subject,
|
||||||
|
body: executiveOrder.body,
|
||||||
|
at: new Date(executiveOrder.at),
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
this.router.get('/motion/:id', async (req, res) => {
|
||||||
|
if (!req.params.id) return res.status(400).send(this.constants.messages.CLIENT_ERROR);
|
||||||
|
if (!(await this.server.client.db.Motion.exists({ oID: req.params.id }))) return res.status(404).send(this.constants.messages.NOT_FOUND);
|
||||||
|
|
||||||
|
const motion = await this.server.client.db.Motion.findOne({ oID: req.params.id });
|
||||||
|
|
||||||
|
res.status(200).send({
|
||||||
|
issuedBy: motion.issuedBy,
|
||||||
|
id: motion.oID,
|
||||||
|
subject: motion.subject,
|
||||||
|
body: motion.body,
|
||||||
|
at: new Date(motion.at),
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
this.router.patch('/eo/:id', async (req, res) => {
|
||||||
|
if (!req.params.id) return res.status(400).send(this.constants.messages.CLIENT_ERROR);
|
||||||
|
if (!(await this.server.client.db.ExecutiveOrder.exists({ oID: req.params.id }))) return res.status(404).send(this.constants.messages.NOT_FOUND);
|
||||||
|
if (!req.body.subject && !req.body.body) return res.status(400).send(this.constants.messages.CLIENT_ERROR);
|
||||||
|
|
||||||
|
const executiveOrder = await this.server.client.db.ExecutiveOrder.findOne({ oID: req.params.id });
|
||||||
|
await executiveOrder.updateOne({
|
||||||
|
subject: req.body.subject || executiveOrder.subject,
|
||||||
|
body: req.body.body || executiveOrder.body,
|
||||||
|
});
|
||||||
|
|
||||||
|
res.status(200).send({ message: `Updated Executive Order with ID ${executiveOrder.oID}.` });
|
||||||
|
});
|
||||||
|
|
||||||
|
this.router.patch('/motion/:id', async (req, res) => {
|
||||||
|
if (!req.params.id) return res.status(400).send(this.constants.messages.CLIENT_ERROR);
|
||||||
|
if (!(await this.server.client.db.Motion.exists({ oID: req.params.id }))) return res.status(404).send(this.constants.messages.NOT_FOUND);
|
||||||
|
if (!req.body.subject && !req.body.body) return res.status(400).send(this.constants.messages.CLIENT_ERROR);
|
||||||
|
|
||||||
|
const motion = await this.server.client.db.Motion.findOne({ oID: req.params.id });
|
||||||
|
await motion.updateOne({
|
||||||
|
subject: req.body.subject || motion.subject,
|
||||||
|
body: req.body.body || motion.body,
|
||||||
|
});
|
||||||
|
|
||||||
|
res.status(200).send({ message: `Updated Motion with ID ${motion.oID}.` });
|
||||||
|
});
|
||||||
|
|
||||||
|
this.router.get('/motion', async (_req, res) => {
|
||||||
const motions = await this.server.client.db.Motion.find().lean();
|
const motions = await this.server.client.db.Motion.find().lean();
|
||||||
|
|
||||||
res.status(200).send({
|
res.status(200).send({
|
||||||
|
@ -133,7 +209,7 @@ export default class Root extends Route {
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
this.router.get('/resolutions', async (_req, res) => {
|
this.router.get('/resolution', async (_req, res) => {
|
||||||
const resolutions = await this.server.client.db.Resolution.find().lean();
|
const resolutions = await this.server.client.db.Resolution.find().lean();
|
||||||
|
|
||||||
res.status(200).send({
|
res.status(200).send({
|
||||||
|
@ -141,7 +217,7 @@ export default class Root extends Route {
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
this.router.get('/executive-orders', async (_req, res) => {
|
this.router.get('/eo', async (_req, res) => {
|
||||||
const executiveOrders = await this.server.client.db.ExecutiveOrder.find().lean();
|
const executiveOrders = await this.server.client.db.ExecutiveOrder.find().lean();
|
||||||
|
|
||||||
res.status(200).send({
|
res.status(200).send({
|
||||||
|
|
Loading…
Reference in New Issue