Converted more stuff to support TS

This commit is contained in:
2025-10-19 00:06:49 -04:00
parent e2a147d1e2
commit e6016a19bb
12 changed files with 113 additions and 46 deletions

View File

@@ -0,0 +1,50 @@
import { getEventAttendance, getEventDetails, getShortEventsInRange } from "../services/calendarService";
const express = require('express');
const r = express.Router();
function addMonths(date: Date, months: number): Date {
const d = new Date(date)
d.setMonth(d.getMonth() + months)
return d
}
//get calendar events paged
r.get('/', async (req, res) => {
const viewDate: Date = req.body.date;
//generate date range
const backDate: Date = addMonths(viewDate, -1);
const frontDate: Date = addMonths(viewDate, 2);
const events = getShortEventsInRange(backDate, frontDate);
res.status(200).json(events);
});
r.get('/upcoming', async (req, res) => {
res.sendStatus(501);
})
//get event details
r.get('/:id', async (req, res) => {
try {
const eventID: number = req.params.id;
let details = getEventDetails(eventID);
let attendance = await getEventAttendance(eventID);
let out = { ...details, attendance }
console.log(out);
res.status(200).json(out);
} catch (err) {
console.error('Insert failed:', err);
res.status(500).json(err);
}
})
//post a new calendar event
r.post('/', async (req, res) => {
})
module.exports.calendar = r;