This commit is contained in:
Ben Grant 2021-02-27 00:52:20 +11:00
parent 15d4e2f126
commit edcd4dcaa0
15 changed files with 1195 additions and 82 deletions

View file

@ -1,10 +1,43 @@
module.exports = (req, res) => {
const dayjs = require('dayjs');
const generateId = (name) => {
const id = name.trim().toLowerCase().replace(/[^A-Za-z0-9 ]/g, '').replace(/\s+/g, '-');
const number = Math.floor(100000 + Math.random() * 900000);
return `${id}-${number}`;
};
module.exports = async (req, res) => {
const { event } = req.body;
if (event) {
console.log(event);
res.sendStatus(201);
} else {
try {
const eventId = generateId(event.name);
const currentTime = dayjs().unix();
const entity = {
key: req.datastore.key(['Event', eventId]),
data: {
name: event.name.trim(),
created: currentTime,
timezone: event.timezone,
startTime: event.startTime,
endTime: event.endTime,
dates: event.dates,
},
};
await req.datastore.insert(entity);
res.status(201).send({
id: eventId,
name: event.name.trim(),
created: currentTime,
timezone: event.timezone,
startTime: event.startTime,
endTime: event.endTime,
dates: event.dates,
});
} catch (e) {
console.error(e);
res.sendStatus(400);
}
};