all repos — caroster @ d2e47634bff1fe498b6b81f90a89ff0b5817c5c8

[Octree] Group carpool to your event https://caroster.io

backend/api/event/controllers/event.js (view raw)

 1'use strict';
 2
 3module.exports = {
 4  async findOne(ctx) {
 5    const uuid = ctx.params._uuid || ctx.params.uuid;
 6    if (!uuid) throw new Error('No uuid provided');
 7    const event = await strapi.services.event.findOne({uuid});
 8    if (event) return strapi.services.event.sanitize(event);
 9    else return ctx.badRequest('No event found');
10  },
11
12  async create(ctx) {
13    let event = ctx.request.body;
14    const user = ctx.state.user;
15
16    if (user) event = {...event, users: [user.id]};
17
18    const entity = await strapi.services.event.create(event);
19    return strapi.services.event.sanitize(entity);
20  },
21
22  async update(ctx) {
23    const uuid = ctx.params._uuid || ctx.params.uuid;
24    const eventUpdate = ctx.request.body;
25
26    try {
27      const updatedEvent = await strapi.services.event.update(
28        {uuid},
29        eventUpdate
30      );
31      const event = strapi.services.event.sanitize(updatedEvent);
32      return {event};
33    } catch (error) {
34      return ctx.badRequest('No event found');
35    }
36  },
37};