File size: 705 Bytes
0e394c7
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
import { Request, Response } from 'express';
import { ActivityModel } from '../models/ActivityModel';

export class ActivityController {
  /**
   * GET /api/activities
   * Returns the list of activities used by the mobile UI.
   */
  static async listActivities(req: Request, res: Response): Promise<void> {
    try {
      const includeHidden = (req.query.includeHidden as string | undefined) === 'true';
      const activities = includeHidden
        ? await ActivityModel.listAll()
        : await ActivityModel.listVisible();

      res.json({ activities });
    } catch (err) {
      console.error('Error in listActivities:', err);
      res.status(500).json({ error: 'Server Error' });
    }
  }
}