From 8927cc1cd39bc8e6aff58bf1c0b15db4f394406c Mon Sep 17 00:00:00 2001 From: Ryan Mwangi Date: Tue, 29 Oct 2024 02:31:00 +0300 Subject: [PATCH] parse calendar data using ical-generator --- server.js | 30 +++++++++++++----------------- 1 file changed, 13 insertions(+), 17 deletions(-) diff --git a/server.js b/server.js index d36870c..ba1c762 100644 --- a/server.js +++ b/server.js @@ -142,24 +142,20 @@ app.get('/calendar/:name', async (req, res) => { const calendar = icalGenerator({ name: calendarName }); // Parse calendar data - const mergedCal = []; validResults.forEach((result) => { - const calendar = ical.parseICS(result.data); - Object.keys(calendar).forEach((key) => { - const event = calendar[key]; - if (result.override) { - mergedCal.push({ - start: event.start, - end: event.end, - summary: result.prefix, - }); - } else { - mergedCal.push({ - start: event.start, - end: event.end, - summary: `${result.prefix} ${event.summary}`, - }); - } + const parsedCalendar = ical.parseICS(result.data); + Object.keys(parsedCalendar).forEach((key) => { + const event = parsedCalendar[key]; + const start = new Date(event.start); + const end = new Date(event.end); + const summary = result.override ? result.prefix : `${result.prefix} ${event.summary}`; + + // Add event to the calendar + calendar.createEvent({ + start: start, + end: end, + summary: summary, + }); }); });