Module: controllers/eventController

Controller for event-related operations.

Source:

Requires

  • module:../models/eventModel

Methods

(static) createEvent(req, res) → {Promise.<void>}

Creates a new event. The organizer is automatically set to the logged-in user.

Parameters:
Name Type Description
req Object

Express request object (body should contain title, description, date, location; user ID available in req.user._id).

res Object

Express response object.

Source:
Returns:
Type
Promise.<void>

(static) deleteEvent(req, res) → {Promise.<void>}

Deletes an event by its ID.

Parameters:
Name Type Description
req Object

Express request object (contains params.id).

res Object

Express response object.

Source:
Returns:
Type
Promise.<void>

(static) getEventById(req, res) → {Promise.<void>}

Fetches a single event by its ID, populating the organizer's name and email.

Parameters:
Name Type Description
req Object

Express request object (contains params.id).

res Object

Express response object.

Source:
Returns:
Type
Promise.<void>

(static) getEvents(req, res) → {Promise.<void>}

Fetches all events, populating the organizer's name and email.

Parameters:
Name Type Description
req Object

Express request object.

res Object

Express response object.

Source:
Returns:
Type
Promise.<void>

(static) updateEvent(req, res) → {Promise.<void>}

Updates an existing event by its ID.

Parameters:
Name Type Description
req Object

Express request object (contains params.id and updated event data in body).

res Object

Express response object.

Source:
Returns:
Type
Promise.<void>