Update stats when creating events and people

This commit is contained in:
Ben Grant 2021-06-16 01:16:23 +10:00
parent 99989e66aa
commit ac96c9b441
3 changed files with 25 additions and 1 deletions

View file

@ -62,6 +62,18 @@ module.exports = async (req, res) => {
times: event.times, times: event.times,
timezone: event.timezone, timezone: event.timezone,
}); });
// Update stats
let eventCountResult = (await req.datastore.get(req.datastore.key([req.types.stats, 'eventCount'])))[0] || null;
if (eventCountResult) {
eventCountResult.value++;
await req.datastore.upsert(eventCountResult);
} else {
await req.datastore.insert({
key: req.datastore.key([req.types.stats, 'eventCount']),
data: { value: 1 },
});
}
} catch (e) { } catch (e) {
console.error(e); console.error(e);
res.sendStatus(400); res.sendStatus(400);

View file

@ -36,6 +36,18 @@ module.exports = async (req, res) => {
await req.datastore.insert(entity); await req.datastore.insert(entity);
res.sendStatus(201); res.sendStatus(201);
// Update stats
let personCountResult = (await req.datastore.get(req.datastore.key([req.types.stats, 'personCount'])))[0] || null;
if (personCountResult) {
personCountResult.value++;
await req.datastore.upsert(personCountResult);
} else {
await req.datastore.insert({
key: req.datastore.key([req.types.stats, 'personCount']),
data: { value: 1 },
});
}
} else { } else {
res.sendStatus(400); res.sendStatus(400);
} }

View file

@ -4,7 +4,7 @@ module.exports = async (req, res) => {
const { eventId } = req.params; const { eventId } = req.params;
try { try {
const event = (await req.datastore.get(req.datastore.key([req.types.event, eventId])))[0]; let event = (await req.datastore.get(req.datastore.key([req.types.event, eventId])))[0];
if (event) { if (event) {
res.send({ res.send({