From 9ea38bea9ee22f9a0c753733846aebf8957b25a9 Mon Sep 17 00:00:00 2001 From: Keifer Erikson Date: Tue, 30 Apr 2024 16:24:01 -0600 Subject: [PATCH 01/34] Create new Calendar tab - WIP --- constants/navigation.ts | 5 +++ package-lock.json | 13 ++++++ package.json | 3 +- pages/calendar.vue | 94 +++++++++++++++++++++++++++++++++++++++++ 4 files changed, 114 insertions(+), 1 deletion(-) create mode 100644 pages/calendar.vue diff --git a/constants/navigation.ts b/constants/navigation.ts index 90269089..5cad0226 100644 --- a/constants/navigation.ts +++ b/constants/navigation.ts @@ -16,6 +16,11 @@ export const navigation: NavItem[] = [ icon: 'i-ph-calendar-blank-duotone', to: '/events', }, + { + name: 'Calendar', + icon: 'i-ph-calendar-duotone', + to: '/calendar', + }, { name: 'Resources', icon: 'i-ph-books-duotone', diff --git a/package-lock.json b/package-lock.json index 0bfd8d27..60601c2c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -29,6 +29,7 @@ "typescript": "^5.4.3", "vitest": "^1.4.0", "vue": "^3.4.21", + "vue-cal": "^4.8.1", "vue-router": "^4.3.0" } }, @@ -21193,6 +21194,18 @@ "ufo": "^1.2.0" } }, + "node_modules/vue-cal": { + "version": "4.8.1", + "resolved": "https://registry.npmjs.org/vue-cal/-/vue-cal-4.8.1.tgz", + "integrity": "sha512-qe0jSDmbzdKF3/MSTPcHSJMOovav4MwmXtgs1n7jkI345zAtfErQVv4uFEVXg1rD62sBi1qWflYRUKy1mzQapg==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/antoniandre" + }, + "peerDependencies": { + "vue": "^2.6.14 || ^3.2.0" + } + }, "node_modules/vue-component-type-helpers": { "version": "2.0.7", "resolved": "https://registry.npmjs.org/vue-component-type-helpers/-/vue-component-type-helpers-2.0.7.tgz", diff --git a/package.json b/package.json index 02cb41b1..85bc1e34 100644 --- a/package.json +++ b/package.json @@ -39,6 +39,7 @@ "typescript": "^5.4.3", "vitest": "^1.4.0", "vue": "^3.4.21", - "vue-router": "^4.3.0" + "vue-router": "^4.3.0", + "vue-cal": "^4.8.1" } } diff --git a/pages/calendar.vue b/pages/calendar.vue new file mode 100644 index 00000000..df824010 --- /dev/null +++ b/pages/calendar.vue @@ -0,0 +1,94 @@ + + + + + From 4dfab43e5fc6ab923f5147e6f8d08e28c4c0a239 Mon Sep 17 00:00:00 2001 From: Keifer Erikson Date: Wed, 1 May 2024 16:17:50 -0600 Subject: [PATCH 02/34] Restructure files to better match the existing project --- components/app/Calendar.vue | 80 +++++++++++++++++++++++++++++++++++ constants/calendar-events.ts | 20 +++++++++ pages/calendar.vue | 81 +++--------------------------------- 3 files changed, 105 insertions(+), 76 deletions(-) create mode 100644 components/app/Calendar.vue create mode 100644 constants/calendar-events.ts diff --git a/components/app/Calendar.vue b/components/app/Calendar.vue new file mode 100644 index 00000000..51bf18f1 --- /dev/null +++ b/components/app/Calendar.vue @@ -0,0 +1,80 @@ + + + + + diff --git a/constants/calendar-events.ts b/constants/calendar-events.ts new file mode 100644 index 00000000..0d730be5 --- /dev/null +++ b/constants/calendar-events.ts @@ -0,0 +1,20 @@ +export const calendarEvents = [ + { + start: '2024-05-01 16:00', + end: '2024-05-01 18:00', + title: ' JS Ruby Python Meetup', + content: '', + location: '123 Main St, Edmonton', + class: 'js-rb-py-meetup', + url: 'https://www.meetup.com/edmontonunlimited/events/300218136/', + }, + { + start: '2024-04-30 12:30', + end: '2024-04-30 14:30', + title: 'Edmonton .Net User Group', + content: '', + location: '321 Maple St, Edmonton', + class: 'dot-net-user-group', + url: 'https://www.meetup.com/edmonton-net-user-group/events/233916054/', + }, +] diff --git a/pages/calendar.vue b/pages/calendar.vue index df824010..abe58e17 100644 --- a/pages/calendar.vue +++ b/pages/calendar.vue @@ -1,94 +1,23 @@ - - From 091307a82285431699469f33a9b20d1b34028cf8 Mon Sep 17 00:00:00 2001 From: Keifer Erikson Date: Thu, 2 May 2024 18:41:56 -0600 Subject: [PATCH 03/34] Progress on styling the calendar --- components/app/Calendar.vue | 27 +++++++++++++++++++++------ constants/calendar-events.ts | 7 +++++-- 2 files changed, 26 insertions(+), 8 deletions(-) diff --git a/components/app/Calendar.vue b/components/app/Calendar.vue index 51bf18f1..dc500e16 100644 --- a/components/app/Calendar.vue +++ b/components/app/Calendar.vue @@ -2,7 +2,7 @@ import VueCal from 'vue-cal' import 'vue-cal/dist/vuecal.css' -const props = defineProps<{ +defineProps<{ group: any }>() @@ -22,9 +22,11 @@ const onEventClick = (event: any) => { {{ group.name }} { :time-to="22 * 60" :time-step="60" :on-event-click="onEventClick" + small > +
+ +
diff --git a/constants/calendar-events.ts b/constants/calendar-events.ts index 13abf2a0..fd8d89cc 100644 --- a/constants/calendar-events.ts +++ b/constants/calendar-events.ts @@ -36,11 +36,11 @@ class Event { } export const calendarEvents: Event[] = [ - new Event('2024-05-03 12:00', '2024-05-03 17:00', 'JS Ruby Python Meetup', 'js-ruby-python-meetup', 'This is a test', 'https://www.meetup.com/edmontonunlimited/events/300218136/'), - new Event('2024-05-02 13:00', '2024-05-02 16:00', 'Edmonton .Net User Group', 'dotnet-user-group', '', 'https://www.meetup.com/edmontonunlimited/events/300218136/'), - new Event('2024-05-02 17:00', '2024-05-02 20:00', 'Edmonton Women In Tech', 'edmonton-women-in-tech', '', 'https://www.meetup.com/edmontonunlimited/events/300218136/'), - new Event('2024-05-01 10:00', '2024-05-01 12:00', 'YEGSec Meetup', 'yegsec', '', 'https://www.meetup.com/edmontonunlimited/events/300218136/'), - new Event('2024-05-01 13:00', '2024-05-01 18:00', 'Weekly Dev Chat', 'weekly-dev-chat', '', 'https://www.meetup.com/edmontonunlimited/events/300218136/'), - new Event('2024-05-03 18:00', '2024-05-03 20:00', 'Edmonton R User Group', 'edmonton-r-user-group', '', 'https://www.meetup.com/edmontonunlimited/events/300218136/'), - new Event('2024-04-30 18:00', '2024-04-30 20:00', 'Edmonton Data Science Community', 'edmonton-data-science-community', '', 'https://www.meetup.com/edmontonunlimited/events/300218136/'), + new Event('2024-05-01 12:00', '2024-05-01 17:00', 'JS Ruby Python Meetup', 'js-ruby-python-meetup', 'This is a test', 'https://www.meetup.com/edmontonunlimited/events/300218136/'), + new Event('2024-04-30 13:00', '2024-04-30 16:00', 'Edmonton .Net User Group', 'dotnet-user-group', '', 'https://www.meetup.com/edmontonunlimited/events/300218136/'), + new Event('2024-04-30 17:00', '2024-04-30 20:00', 'Edmonton Women In Tech', 'edmonton-women-in-tech', '', 'https://www.meetup.com/edmontonunlimited/events/300218136/'), + new Event('2024-04-29 10:00', '2024-04-29 12:00', 'YEGSec Meetup', 'yegsec', '', 'https://www.meetup.com/edmontonunlimited/events/300218136/'), + new Event('2024-04-29 13:00', '2024-04-29 18:00', 'Weekly Dev Chat', 'weekly-dev-chat', '', 'https://www.meetup.com/edmontonunlimited/events/300218136/'), + new Event('2024-05-01 18:00', '2024-05-01 20:00', 'Edmonton R User Group', 'edmonton-r-user-group', '', 'https://www.meetup.com/edmontonunlimited/events/300218136/'), + new Event('2024-04-28 18:00', '2024-04-28 20:00', 'Edmonton Data Science Community', 'edmonton-data-science-community', '', 'https://www.meetup.com/edmontonunlimited/events/300218136/'), ] From 875b151a89d0f97695c4d200f9217771e2b39b4f Mon Sep 17 00:00:00 2001 From: Keifer Erikson Date: Tue, 21 May 2024 11:58:23 -0600 Subject: [PATCH 06/34] Update styles --- constants/calendar-events.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/constants/calendar-events.ts b/constants/calendar-events.ts index fd8d89cc..8d683a8e 100644 --- a/constants/calendar-events.ts +++ b/constants/calendar-events.ts @@ -1,4 +1,4 @@ -const iconStyles = 'width:20px;height:20px;position:absolute;bottom:0;right:0;border-left: 1px outset rgba(0,0,0,0.5);border-top: 1px outset rgba(0,0,0,0.5);border-radius: 3px 0 0 0;' +const iconStyles = 'width:20px;height:20px;position:absolute;bottom:2px;right:2px;' const imageKitUrl = 'https://ik.imagekit.io/des/' const meetupIcons = { From a48cd0f2e082b76bd284f21f498037aa9eb5fc81 Mon Sep 17 00:00:00 2001 From: Keifer Erikson Date: Tue, 21 May 2024 13:24:30 -0600 Subject: [PATCH 07/34] Remove EventList.vue - seperate feature --- components/app/Calendar.vue | 3 --- components/app/EventList.vue | 28 ---------------------------- 2 files changed, 31 deletions(-) delete mode 100644 components/app/EventList.vue diff --git a/components/app/Calendar.vue b/components/app/Calendar.vue index 9a2a6d8d..f4199358 100644 --- a/components/app/Calendar.vue +++ b/components/app/Calendar.vue @@ -51,9 +51,6 @@ const onEventClick = (event: any) => { -
- -
From b4c5eb83589b452b5cf79a58fcdf5efc6a346123 Mon Sep 17 00:00:00 2001 From: Keifer Erikson Date: Tue, 21 May 2024 13:28:04 -0600 Subject: [PATCH 08/34] Change to current event dates --- constants/calendar-events.ts | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/constants/calendar-events.ts b/constants/calendar-events.ts index 8d683a8e..1d4ad2cc 100644 --- a/constants/calendar-events.ts +++ b/constants/calendar-events.ts @@ -36,11 +36,11 @@ class Event { } export const calendarEvents: Event[] = [ - new Event('2024-05-01 12:00', '2024-05-01 17:00', 'JS Ruby Python Meetup', 'js-ruby-python-meetup', 'This is a test', 'https://www.meetup.com/edmontonunlimited/events/300218136/'), - new Event('2024-04-30 13:00', '2024-04-30 16:00', 'Edmonton .Net User Group', 'dotnet-user-group', '', 'https://www.meetup.com/edmontonunlimited/events/300218136/'), - new Event('2024-04-30 17:00', '2024-04-30 20:00', 'Edmonton Women In Tech', 'edmonton-women-in-tech', '', 'https://www.meetup.com/edmontonunlimited/events/300218136/'), - new Event('2024-04-29 10:00', '2024-04-29 12:00', 'YEGSec Meetup', 'yegsec', '', 'https://www.meetup.com/edmontonunlimited/events/300218136/'), - new Event('2024-04-29 13:00', '2024-04-29 18:00', 'Weekly Dev Chat', 'weekly-dev-chat', '', 'https://www.meetup.com/edmontonunlimited/events/300218136/'), - new Event('2024-05-01 18:00', '2024-05-01 20:00', 'Edmonton R User Group', 'edmonton-r-user-group', '', 'https://www.meetup.com/edmontonunlimited/events/300218136/'), - new Event('2024-04-28 18:00', '2024-04-28 20:00', 'Edmonton Data Science Community', 'edmonton-data-science-community', '', 'https://www.meetup.com/edmontonunlimited/events/300218136/'), + new Event('2024-05-20 12:00', '2024-05-20 17:00', 'JS Ruby Python Meetup', 'js-ruby-python-meetup', 'This is a test', 'https://www.meetup.com/edmontonunlimited/events/300218136/'), + new Event('2024-05-21 13:00', '2024-05-21 16:00', 'Edmonton .Net User Group', 'dotnet-user-group', '', 'https://www.meetup.com/edmontonunlimited/events/300218136/'), + new Event('2024-05-22 17:00', '2024-05-22 20:00', 'Edmonton Women In Tech', 'edmonton-women-in-tech', '', 'https://www.meetup.com/edmontonunlimited/events/300218136/'), + new Event('2024-05-23 10:00', '2024-05-23 12:00', 'YEGSec Meetup', 'yegsec', '', 'https://www.meetup.com/edmontonunlimited/events/300218136/'), + new Event('2024-05-24 13:00', '2024-05-24 18:00', 'Weekly Dev Chat', 'weekly-dev-chat', '', 'https://www.meetup.com/edmontonunlimited/events/300218136/'), + new Event('2024-05-23 18:00', '2024-05-23 20:00', 'Edmonton R User Group', 'edmonton-r-user-group', '', 'https://www.meetup.com/edmontonunlimited/events/300218136/'), + new Event('2024-05-22 13:00', '2024-05-22 15:00', 'Edmonton Data Science Community', 'edmonton-data-science-community', '', 'https://www.meetup.com/edmontonunlimited/events/300218136/'), ] From 6de2d7950ceab08f73b9a81b36dfa3ff81f4e175 Mon Sep 17 00:00:00 2001 From: Keifer Erikson Date: Tue, 21 May 2024 14:12:22 -0600 Subject: [PATCH 09/34] Implementing API - CORS Error --- constants/calendar-events.ts | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/constants/calendar-events.ts b/constants/calendar-events.ts index 1d4ad2cc..7fc705bd 100644 --- a/constants/calendar-events.ts +++ b/constants/calendar-events.ts @@ -35,6 +35,15 @@ class Event { } } +const eventData = async () => { + const response = await fetch('https://devedmonton.com/api/events') + const data = await response.json() + return data +} + +const data = await eventData() +console.log(data) + export const calendarEvents: Event[] = [ new Event('2024-05-20 12:00', '2024-05-20 17:00', 'JS Ruby Python Meetup', 'js-ruby-python-meetup', 'This is a test', 'https://www.meetup.com/edmontonunlimited/events/300218136/'), new Event('2024-05-21 13:00', '2024-05-21 16:00', 'Edmonton .Net User Group', 'dotnet-user-group', '', 'https://www.meetup.com/edmontonunlimited/events/300218136/'), From fcba8b96c62cad5b0df2a53ef556be2b9a145d92 Mon Sep 17 00:00:00 2001 From: Keifer Erikson Date: Wed, 22 May 2024 15:43:17 -0600 Subject: [PATCH 10/34] Add Dialog Popup on click rawData is a temporary solution until we resolve the CORS error --- components/app/Calendar.vue | 68 ++- constants/calendar-events.ts | 990 ++++++++++++++++++++++++++++++++++- 2 files changed, 1028 insertions(+), 30 deletions(-) diff --git a/components/app/Calendar.vue b/components/app/Calendar.vue index f4199358..b608fcae 100644 --- a/components/app/Calendar.vue +++ b/components/app/Calendar.vue @@ -6,10 +6,16 @@ defineProps<{ group: any }>() -const onEventClick = (event: any) => { - const selectedEvent = event +const showDialog = ref(false) +const selectedEvent = ref({}) + +const onEventClick = (event: any, e: any) => { + selectedEvent.value = event + showDialog.value = true console.log(selectedEvent) - window.open(selectedEvent.eventUrl) + // window.open(selectedEvent.eventUrl) + + e.stopPropagation() } @@ -50,6 +56,58 @@ const onEventClick = (event: any) => { /> + +
+
+
+
+

+ {{ selectedEvent.title }} +

+ +
+
+

+ {{ selectedEvent.start.format('DD/MM/YYYY') }} +

+

+

+ Event details: +
    +
  • Event starts at: {{ selectedEvent.start.formatTime() }} MT
  • +
  • Event ends at: {{ selectedEvent.end.formatTime() }} MT
  • +
+
+
+
+ +
+
+
+
@@ -120,4 +178,8 @@ const onEventClick = (event: any) => { div.vuecal__cell:nth-child(7)::before { @apply rounded-ee-lg; } + + #dialog .content-full a{ + @apply hover:underline text-gray-600 dark:text-gray-400; + } diff --git a/constants/calendar-events.ts b/constants/calendar-events.ts index 7fc705bd..f180982e 100644 --- a/constants/calendar-events.ts +++ b/constants/calendar-events.ts @@ -1,7 +1,945 @@ const iconStyles = 'width:20px;height:20px;position:absolute;bottom:2px;right:2px;' const imageKitUrl = 'https://ik.imagekit.io/des/' -const meetupIcons = { +const rawData = { + "statusCode": 200, + "statusMessage": "Success", + "message": "Events fetched successfully", + "events": [ + { + "kind": "calendar#event", + "etag": "\"3432356189960000\"", + "id": "2lu0m4snmnkq18q5j3fb15qrqd", + "status": "confirmed", + "htmlLink": "https://www.google.com/calendar/event?eid=Mmx1MG00c25tbmtxMThxNWozZmIxNXFycWQgZGV2ZWRtb250b24uY29tXzE4YmZrNzQyajFlYmE5aWR1aDRwN3U0ZmdzQGc", + "created": "2024-05-20T04:08:15.000Z", + "updated": "2024-05-20T04:08:14.980Z", + "summary": "BetaCityYEG Meetup", + "description": "Edmonton Unlimited\nWednesday, May 22 at 6:30 PM\n\nJoin us for BetaCityYEG, where you learn about and can participate in novel tech-related initiatives that improve our community. We help connect you w...\n\nhttps://www.meetup.com/edmontonunlimited/events/sqgstrygchbdc/", + "creator": { + "email": "mandy@devedmonton.com" + }, + "organizer": { + "email": "devedmonton.com_18bfk742j1eba9iduh4p7u4fgs@group.calendar.google.com", + "displayName": "DES Public Events", + "self": true + }, + "start": { + "dateTime": "2024-05-22T18:30:00-06:00", + "timeZone": "America/Edmonton" + }, + "end": { + "dateTime": "2024-05-22T20:00:00-06:00", + "timeZone": "America/Edmonton" + }, + "iCalUID": "2lu0m4snmnkq18q5j3fb15qrqd@google.com", + "sequence": 0, + "reminders": { + "useDefault": true + }, + "eventType": "default" + }, + { + "kind": "calendar#event", + "etag": "\"3432356205862000\"", + "id": "43rvqs42la1r91pcqhj94hsa07", + "status": "confirmed", + "htmlLink": "https://www.google.com/calendar/event?eid=NDNydnFzNDJsYTFyOTFwY3Foajk0aHNhMDcgZGV2ZWRtb250b24uY29tXzE4YmZrNzQyajFlYmE5aWR1aDRwN3U0ZmdzQGc", + "created": "2024-05-20T04:08:22.000Z", + "updated": "2024-05-20T04:08:22.931Z", + "summary": "Edmonton Linux User Group", + "description": "Edmonton Unlimited\nThursday, May 23 at 6:30 PM\n\nThe Edmonton Linux User Group ((elug.ca)) is a chance to get together with other users of Linux, GNU, and Unix-like operating systems, and open source...\n\nhttps://www.meetup.com/edmontonunlimited/events/vcrzgtygchbfc/", + "creator": { + "email": "mandy@devedmonton.com" + }, + "organizer": { + "email": "devedmonton.com_18bfk742j1eba9iduh4p7u4fgs@group.calendar.google.com", + "displayName": "DES Public Events", + "self": true + }, + "start": { + "dateTime": "2024-05-23T18:30:00-06:00", + "timeZone": "America/Edmonton" + }, + "end": { + "dateTime": "2024-05-23T20:00:00-06:00", + "timeZone": "America/Edmonton" + }, + "iCalUID": "43rvqs42la1r91pcqhj94hsa07@google.com", + "sequence": 0, + "reminders": { + "useDefault": true + }, + "eventType": "default" + }, + { + "kind": "calendar#event", + "etag": "\"3432352333440000\"", + "id": "0afkd8sj0qbubmqsmabuuohr9e_20240613T020000Z", + "status": "confirmed", + "htmlLink": "https://www.google.com/calendar/event?eid=MGFma2Q4c2owcWJ1Ym1xc21hYnV1b2hyOWVfMjAyNDA2MTNUMDIwMDAwWiBkZXZlZG1vbnRvbi5jb21fMThiZms3NDJqMWViYTlpZHVoNHA3dTRmZ3NAZw", + "created": "2023-01-24T19:51:04.000Z", + "updated": "2024-05-20T03:36:06.720Z", + "summary": "Monthly Dev Edmonton Society Meeting", + "creator": { + "email": "mandy@devedmonton.com" + }, + "organizer": { + "email": "devedmonton.com_18bfk742j1eba9iduh4p7u4fgs@group.calendar.google.com", + "displayName": "DES Public Events", + "self": true + }, + "start": { + "dateTime": "2024-06-12T20:00:00-06:00", + "timeZone": "America/Edmonton" + }, + "end": { + "dateTime": "2024-06-12T21:00:00-06:00", + "timeZone": "America/Edmonton" + }, + "recurringEventId": "0afkd8sj0qbubmqsmabuuohr9e_R20240314T020000", + "originalStartTime": { + "dateTime": "2024-06-12T20:00:00-06:00", + "timeZone": "America/Edmonton" + }, + "iCalUID": "0afkd8sj0qbubmqsmabuuohr9e_R20240314T020000@google.com", + "sequence": 0, + "attendees": [ + { + "email": "mandy@devedmonton.com", + "responseStatus": "accepted" + }, + { + "email": "mandy.m.meindersma@gmail.com", + "responseStatus": "accepted" + }, + { + "email": "des-monthly-meeting-member-invite-list@devedmonton.com", + "displayName": "DES Monthly Meeting Member Invite List", + "responseStatus": "needsAction" + }, + { + "email": "board@devedmonton.com", + "displayName": "Board of Governors", + "responseStatus": "needsAction" + }, + { + "email": "justicehemming@gmail.com", + "displayName": "Justice", + "responseStatus": "needsAction" + }, + { + "email": "salma.ibrahim1307@gmail.com", + "responseStatus": "needsAction" + }, + { + "email": "borlonganpatricia@gmail.com", + "responseStatus": "accepted" + }, + { + "email": "nickaniesther@gmail.com", + "responseStatus": "needsAction" + }, + { + "email": "leslie.tshuma@gmail.com", + "responseStatus": "accepted" + } + ], + "hangoutLink": "https://meet.google.com/oav-bwko-ybg", + "conferenceData": { + "entryPoints": [ + { + "entryPointType": "video", + "uri": "https://meet.google.com/oav-bwko-ybg", + "label": "meet.google.com/oav-bwko-ybg" + }, + { + "entryPointType": "more", + "uri": "https://tel.meet/oav-bwko-ybg?pin=6201779528408", + "pin": "6201779528408" + }, + { + "regionCode": "CA", + "entryPointType": "phone", + "uri": "tel:+1-289-323-2593", + "label": "+1 289-323-2593", + "pin": "741779055" + } + ], + "conferenceSolution": { + "key": { + "type": "hangoutsMeet" + }, + "name": "Google Meet", + "iconUri": "https://fonts.gstatic.com/s/i/productlogos/meet_2020q4/v6/web-512dp/logo_meet_2020q4_color_2x_web_512dp.png" + }, + "conferenceId": "oav-bwko-ybg" + }, + "reminders": { + "useDefault": true + }, + "eventType": "default" + }, + { + "kind": "calendar#event", + "etag": "\"3432352333440000\"", + "id": "0afkd8sj0qbubmqsmabuuohr9e_20240711T020000Z", + "status": "confirmed", + "htmlLink": "https://www.google.com/calendar/event?eid=MGFma2Q4c2owcWJ1Ym1xc21hYnV1b2hyOWVfMjAyNDA3MTFUMDIwMDAwWiBkZXZlZG1vbnRvbi5jb21fMThiZms3NDJqMWViYTlpZHVoNHA3dTRmZ3NAZw", + "created": "2023-01-24T19:51:04.000Z", + "updated": "2024-05-20T03:36:06.720Z", + "summary": "Monthly Dev Edmonton Society Meeting", + "creator": { + "email": "mandy@devedmonton.com" + }, + "organizer": { + "email": "devedmonton.com_18bfk742j1eba9iduh4p7u4fgs@group.calendar.google.com", + "displayName": "DES Public Events", + "self": true + }, + "start": { + "dateTime": "2024-07-10T20:00:00-06:00", + "timeZone": "America/Edmonton" + }, + "end": { + "dateTime": "2024-07-10T21:00:00-06:00", + "timeZone": "America/Edmonton" + }, + "recurringEventId": "0afkd8sj0qbubmqsmabuuohr9e_R20240314T020000", + "originalStartTime": { + "dateTime": "2024-07-10T20:00:00-06:00", + "timeZone": "America/Edmonton" + }, + "iCalUID": "0afkd8sj0qbubmqsmabuuohr9e_R20240314T020000@google.com", + "sequence": 0, + "attendees": [ + { + "email": "mandy@devedmonton.com", + "responseStatus": "accepted" + }, + { + "email": "mandy.m.meindersma@gmail.com", + "responseStatus": "accepted" + }, + { + "email": "des-monthly-meeting-member-invite-list@devedmonton.com", + "displayName": "DES Monthly Meeting Member Invite List", + "responseStatus": "needsAction" + }, + { + "email": "board@devedmonton.com", + "displayName": "Board of Governors", + "responseStatus": "needsAction" + }, + { + "email": "justicehemming@gmail.com", + "displayName": "Justice", + "responseStatus": "needsAction" + }, + { + "email": "salma.ibrahim1307@gmail.com", + "responseStatus": "needsAction" + }, + { + "email": "borlonganpatricia@gmail.com", + "responseStatus": "accepted" + }, + { + "email": "nickaniesther@gmail.com", + "responseStatus": "needsAction" + }, + { + "email": "leslie.tshuma@gmail.com", + "responseStatus": "accepted" + } + ], + "hangoutLink": "https://meet.google.com/oav-bwko-ybg", + "conferenceData": { + "entryPoints": [ + { + "entryPointType": "video", + "uri": "https://meet.google.com/oav-bwko-ybg", + "label": "meet.google.com/oav-bwko-ybg" + }, + { + "entryPointType": "more", + "uri": "https://tel.meet/oav-bwko-ybg?pin=6201779528408", + "pin": "6201779528408" + }, + { + "regionCode": "CA", + "entryPointType": "phone", + "uri": "tel:+1-289-323-2593", + "label": "+1 289-323-2593", + "pin": "741779055" + } + ], + "conferenceSolution": { + "key": { + "type": "hangoutsMeet" + }, + "name": "Google Meet", + "iconUri": "https://fonts.gstatic.com/s/i/productlogos/meet_2020q4/v6/web-512dp/logo_meet_2020q4_color_2x_web_512dp.png" + }, + "conferenceId": "oav-bwko-ybg" + }, + "reminders": { + "useDefault": true + }, + "eventType": "default" + }, + { + "kind": "calendar#event", + "etag": "\"3432352333440000\"", + "id": "0afkd8sj0qbubmqsmabuuohr9e_20240815T020000Z", + "status": "confirmed", + "htmlLink": "https://www.google.com/calendar/event?eid=MGFma2Q4c2owcWJ1Ym1xc21hYnV1b2hyOWVfMjAyNDA4MTVUMDIwMDAwWiBkZXZlZG1vbnRvbi5jb21fMThiZms3NDJqMWViYTlpZHVoNHA3dTRmZ3NAZw", + "created": "2023-01-24T19:51:04.000Z", + "updated": "2024-05-20T03:36:06.720Z", + "summary": "Monthly Dev Edmonton Society Meeting", + "creator": { + "email": "mandy@devedmonton.com" + }, + "organizer": { + "email": "devedmonton.com_18bfk742j1eba9iduh4p7u4fgs@group.calendar.google.com", + "displayName": "DES Public Events", + "self": true + }, + "start": { + "dateTime": "2024-08-14T20:00:00-06:00", + "timeZone": "America/Edmonton" + }, + "end": { + "dateTime": "2024-08-14T21:00:00-06:00", + "timeZone": "America/Edmonton" + }, + "recurringEventId": "0afkd8sj0qbubmqsmabuuohr9e_R20240314T020000", + "originalStartTime": { + "dateTime": "2024-08-14T20:00:00-06:00", + "timeZone": "America/Edmonton" + }, + "iCalUID": "0afkd8sj0qbubmqsmabuuohr9e_R20240314T020000@google.com", + "sequence": 0, + "attendees": [ + { + "email": "mandy@devedmonton.com", + "responseStatus": "accepted" + }, + { + "email": "mandy.m.meindersma@gmail.com", + "responseStatus": "accepted" + }, + { + "email": "des-monthly-meeting-member-invite-list@devedmonton.com", + "displayName": "DES Monthly Meeting Member Invite List", + "responseStatus": "needsAction" + }, + { + "email": "board@devedmonton.com", + "displayName": "Board of Governors", + "responseStatus": "needsAction" + }, + { + "email": "justicehemming@gmail.com", + "displayName": "Justice", + "responseStatus": "needsAction" + }, + { + "email": "salma.ibrahim1307@gmail.com", + "responseStatus": "needsAction" + }, + { + "email": "borlonganpatricia@gmail.com", + "responseStatus": "accepted" + }, + { + "email": "nickaniesther@gmail.com", + "responseStatus": "needsAction" + }, + { + "email": "leslie.tshuma@gmail.com", + "responseStatus": "accepted" + } + ], + "hangoutLink": "https://meet.google.com/oav-bwko-ybg", + "conferenceData": { + "entryPoints": [ + { + "entryPointType": "video", + "uri": "https://meet.google.com/oav-bwko-ybg", + "label": "meet.google.com/oav-bwko-ybg" + }, + { + "entryPointType": "more", + "uri": "https://tel.meet/oav-bwko-ybg?pin=6201779528408", + "pin": "6201779528408" + }, + { + "regionCode": "CA", + "entryPointType": "phone", + "uri": "tel:+1-289-323-2593", + "label": "+1 289-323-2593", + "pin": "741779055" + } + ], + "conferenceSolution": { + "key": { + "type": "hangoutsMeet" + }, + "name": "Google Meet", + "iconUri": "https://fonts.gstatic.com/s/i/productlogos/meet_2020q4/v6/web-512dp/logo_meet_2020q4_color_2x_web_512dp.png" + }, + "conferenceId": "oav-bwko-ybg" + }, + "reminders": { + "useDefault": true + }, + "eventType": "default" + }, + { + "kind": "calendar#event", + "etag": "\"3432352333440000\"", + "id": "0afkd8sj0qbubmqsmabuuohr9e_20240912T020000Z", + "status": "confirmed", + "htmlLink": "https://www.google.com/calendar/event?eid=MGFma2Q4c2owcWJ1Ym1xc21hYnV1b2hyOWVfMjAyNDA5MTJUMDIwMDAwWiBkZXZlZG1vbnRvbi5jb21fMThiZms3NDJqMWViYTlpZHVoNHA3dTRmZ3NAZw", + "created": "2023-01-24T19:51:04.000Z", + "updated": "2024-05-20T03:36:06.720Z", + "summary": "Monthly Dev Edmonton Society Meeting", + "creator": { + "email": "mandy@devedmonton.com" + }, + "organizer": { + "email": "devedmonton.com_18bfk742j1eba9iduh4p7u4fgs@group.calendar.google.com", + "displayName": "DES Public Events", + "self": true + }, + "start": { + "dateTime": "2024-09-11T20:00:00-06:00", + "timeZone": "America/Edmonton" + }, + "end": { + "dateTime": "2024-09-11T21:00:00-06:00", + "timeZone": "America/Edmonton" + }, + "recurringEventId": "0afkd8sj0qbubmqsmabuuohr9e_R20240314T020000", + "originalStartTime": { + "dateTime": "2024-09-11T20:00:00-06:00", + "timeZone": "America/Edmonton" + }, + "iCalUID": "0afkd8sj0qbubmqsmabuuohr9e_R20240314T020000@google.com", + "sequence": 0, + "attendees": [ + { + "email": "mandy@devedmonton.com", + "responseStatus": "accepted" + }, + { + "email": "mandy.m.meindersma@gmail.com", + "responseStatus": "accepted" + }, + { + "email": "des-monthly-meeting-member-invite-list@devedmonton.com", + "displayName": "DES Monthly Meeting Member Invite List", + "responseStatus": "needsAction" + }, + { + "email": "board@devedmonton.com", + "displayName": "Board of Governors", + "responseStatus": "needsAction" + }, + { + "email": "justicehemming@gmail.com", + "displayName": "Justice", + "responseStatus": "needsAction" + }, + { + "email": "salma.ibrahim1307@gmail.com", + "responseStatus": "needsAction" + }, + { + "email": "borlonganpatricia@gmail.com", + "responseStatus": "accepted" + }, + { + "email": "nickaniesther@gmail.com", + "responseStatus": "needsAction" + }, + { + "email": "leslie.tshuma@gmail.com", + "responseStatus": "accepted" + } + ], + "hangoutLink": "https://meet.google.com/oav-bwko-ybg", + "conferenceData": { + "entryPoints": [ + { + "entryPointType": "video", + "uri": "https://meet.google.com/oav-bwko-ybg", + "label": "meet.google.com/oav-bwko-ybg" + }, + { + "entryPointType": "more", + "uri": "https://tel.meet/oav-bwko-ybg?pin=6201779528408", + "pin": "6201779528408" + }, + { + "regionCode": "CA", + "entryPointType": "phone", + "uri": "tel:+1-289-323-2593", + "label": "+1 289-323-2593", + "pin": "741779055" + } + ], + "conferenceSolution": { + "key": { + "type": "hangoutsMeet" + }, + "name": "Google Meet", + "iconUri": "https://fonts.gstatic.com/s/i/productlogos/meet_2020q4/v6/web-512dp/logo_meet_2020q4_color_2x_web_512dp.png" + }, + "conferenceId": "oav-bwko-ybg" + }, + "reminders": { + "useDefault": true + }, + "eventType": "default" + }, + { + "kind": "calendar#event", + "etag": "\"3432352333440000\"", + "id": "0afkd8sj0qbubmqsmabuuohr9e_20241010T020000Z", + "status": "confirmed", + "htmlLink": "https://www.google.com/calendar/event?eid=MGFma2Q4c2owcWJ1Ym1xc21hYnV1b2hyOWVfMjAyNDEwMTBUMDIwMDAwWiBkZXZlZG1vbnRvbi5jb21fMThiZms3NDJqMWViYTlpZHVoNHA3dTRmZ3NAZw", + "created": "2023-01-24T19:51:04.000Z", + "updated": "2024-05-20T03:36:06.720Z", + "summary": "Monthly Dev Edmonton Society Meeting", + "creator": { + "email": "mandy@devedmonton.com" + }, + "organizer": { + "email": "devedmonton.com_18bfk742j1eba9iduh4p7u4fgs@group.calendar.google.com", + "displayName": "DES Public Events", + "self": true + }, + "start": { + "dateTime": "2024-10-09T20:00:00-06:00", + "timeZone": "America/Edmonton" + }, + "end": { + "dateTime": "2024-10-09T21:00:00-06:00", + "timeZone": "America/Edmonton" + }, + "recurringEventId": "0afkd8sj0qbubmqsmabuuohr9e_R20240314T020000", + "originalStartTime": { + "dateTime": "2024-10-09T20:00:00-06:00", + "timeZone": "America/Edmonton" + }, + "iCalUID": "0afkd8sj0qbubmqsmabuuohr9e_R20240314T020000@google.com", + "sequence": 0, + "attendees": [ + { + "email": "mandy@devedmonton.com", + "responseStatus": "accepted" + }, + { + "email": "mandy.m.meindersma@gmail.com", + "responseStatus": "accepted" + }, + { + "email": "des-monthly-meeting-member-invite-list@devedmonton.com", + "displayName": "DES Monthly Meeting Member Invite List", + "responseStatus": "needsAction" + }, + { + "email": "board@devedmonton.com", + "displayName": "Board of Governors", + "responseStatus": "needsAction" + }, + { + "email": "justicehemming@gmail.com", + "displayName": "Justice", + "responseStatus": "needsAction" + }, + { + "email": "salma.ibrahim1307@gmail.com", + "responseStatus": "needsAction" + }, + { + "email": "borlonganpatricia@gmail.com", + "responseStatus": "accepted" + }, + { + "email": "nickaniesther@gmail.com", + "responseStatus": "needsAction" + }, + { + "email": "leslie.tshuma@gmail.com", + "responseStatus": "accepted" + } + ], + "hangoutLink": "https://meet.google.com/oav-bwko-ybg", + "conferenceData": { + "entryPoints": [ + { + "entryPointType": "video", + "uri": "https://meet.google.com/oav-bwko-ybg", + "label": "meet.google.com/oav-bwko-ybg" + }, + { + "entryPointType": "more", + "uri": "https://tel.meet/oav-bwko-ybg?pin=6201779528408", + "pin": "6201779528408" + }, + { + "regionCode": "CA", + "entryPointType": "phone", + "uri": "tel:+1-289-323-2593", + "label": "+1 289-323-2593", + "pin": "741779055" + } + ], + "conferenceSolution": { + "key": { + "type": "hangoutsMeet" + }, + "name": "Google Meet", + "iconUri": "https://fonts.gstatic.com/s/i/productlogos/meet_2020q4/v6/web-512dp/logo_meet_2020q4_color_2x_web_512dp.png" + }, + "conferenceId": "oav-bwko-ybg" + }, + "reminders": { + "useDefault": true + }, + "eventType": "default" + }, + { + "kind": "calendar#event", + "etag": "\"3432352333440000\"", + "id": "0afkd8sj0qbubmqsmabuuohr9e_20241114T030000Z", + "status": "confirmed", + "htmlLink": "https://www.google.com/calendar/event?eid=MGFma2Q4c2owcWJ1Ym1xc21hYnV1b2hyOWVfMjAyNDExMTRUMDMwMDAwWiBkZXZlZG1vbnRvbi5jb21fMThiZms3NDJqMWViYTlpZHVoNHA3dTRmZ3NAZw", + "created": "2023-01-24T19:51:04.000Z", + "updated": "2024-05-20T03:36:06.720Z", + "summary": "Monthly Dev Edmonton Society Meeting", + "creator": { + "email": "mandy@devedmonton.com" + }, + "organizer": { + "email": "devedmonton.com_18bfk742j1eba9iduh4p7u4fgs@group.calendar.google.com", + "displayName": "DES Public Events", + "self": true + }, + "start": { + "dateTime": "2024-11-13T20:00:00-07:00", + "timeZone": "America/Edmonton" + }, + "end": { + "dateTime": "2024-11-13T21:00:00-07:00", + "timeZone": "America/Edmonton" + }, + "recurringEventId": "0afkd8sj0qbubmqsmabuuohr9e_R20240314T020000", + "originalStartTime": { + "dateTime": "2024-11-13T20:00:00-07:00", + "timeZone": "America/Edmonton" + }, + "iCalUID": "0afkd8sj0qbubmqsmabuuohr9e_R20240314T020000@google.com", + "sequence": 0, + "attendees": [ + { + "email": "mandy@devedmonton.com", + "responseStatus": "accepted" + }, + { + "email": "mandy.m.meindersma@gmail.com", + "responseStatus": "accepted" + }, + { + "email": "des-monthly-meeting-member-invite-list@devedmonton.com", + "displayName": "DES Monthly Meeting Member Invite List", + "responseStatus": "needsAction" + }, + { + "email": "board@devedmonton.com", + "displayName": "Board of Governors", + "responseStatus": "needsAction" + }, + { + "email": "justicehemming@gmail.com", + "displayName": "Justice", + "responseStatus": "needsAction" + }, + { + "email": "salma.ibrahim1307@gmail.com", + "responseStatus": "needsAction" + }, + { + "email": "borlonganpatricia@gmail.com", + "responseStatus": "accepted" + }, + { + "email": "nickaniesther@gmail.com", + "responseStatus": "needsAction" + }, + { + "email": "leslie.tshuma@gmail.com", + "responseStatus": "accepted" + } + ], + "hangoutLink": "https://meet.google.com/oav-bwko-ybg", + "conferenceData": { + "entryPoints": [ + { + "entryPointType": "video", + "uri": "https://meet.google.com/oav-bwko-ybg", + "label": "meet.google.com/oav-bwko-ybg" + }, + { + "entryPointType": "more", + "uri": "https://tel.meet/oav-bwko-ybg?pin=6201779528408", + "pin": "6201779528408" + }, + { + "regionCode": "CA", + "entryPointType": "phone", + "uri": "tel:+1-289-323-2593", + "label": "+1 289-323-2593", + "pin": "741779055" + } + ], + "conferenceSolution": { + "key": { + "type": "hangoutsMeet" + }, + "name": "Google Meet", + "iconUri": "https://fonts.gstatic.com/s/i/productlogos/meet_2020q4/v6/web-512dp/logo_meet_2020q4_color_2x_web_512dp.png" + }, + "conferenceId": "oav-bwko-ybg" + }, + "reminders": { + "useDefault": true + }, + "eventType": "default" + }, + { + "kind": "calendar#event", + "etag": "\"3432352333440000\"", + "id": "0afkd8sj0qbubmqsmabuuohr9e_20241212T030000Z", + "status": "confirmed", + "htmlLink": "https://www.google.com/calendar/event?eid=MGFma2Q4c2owcWJ1Ym1xc21hYnV1b2hyOWVfMjAyNDEyMTJUMDMwMDAwWiBkZXZlZG1vbnRvbi5jb21fMThiZms3NDJqMWViYTlpZHVoNHA3dTRmZ3NAZw", + "created": "2023-01-24T19:51:04.000Z", + "updated": "2024-05-20T03:36:06.720Z", + "summary": "Monthly Dev Edmonton Society Meeting", + "creator": { + "email": "mandy@devedmonton.com" + }, + "organizer": { + "email": "devedmonton.com_18bfk742j1eba9iduh4p7u4fgs@group.calendar.google.com", + "displayName": "DES Public Events", + "self": true + }, + "start": { + "dateTime": "2024-12-11T20:00:00-07:00", + "timeZone": "America/Edmonton" + }, + "end": { + "dateTime": "2024-12-11T21:00:00-07:00", + "timeZone": "America/Edmonton" + }, + "recurringEventId": "0afkd8sj0qbubmqsmabuuohr9e_R20240314T020000", + "originalStartTime": { + "dateTime": "2024-12-11T20:00:00-07:00", + "timeZone": "America/Edmonton" + }, + "iCalUID": "0afkd8sj0qbubmqsmabuuohr9e_R20240314T020000@google.com", + "sequence": 0, + "attendees": [ + { + "email": "mandy@devedmonton.com", + "responseStatus": "accepted" + }, + { + "email": "mandy.m.meindersma@gmail.com", + "responseStatus": "accepted" + }, + { + "email": "des-monthly-meeting-member-invite-list@devedmonton.com", + "displayName": "DES Monthly Meeting Member Invite List", + "responseStatus": "needsAction" + }, + { + "email": "board@devedmonton.com", + "displayName": "Board of Governors", + "responseStatus": "needsAction" + }, + { + "email": "justicehemming@gmail.com", + "displayName": "Justice", + "responseStatus": "needsAction" + }, + { + "email": "salma.ibrahim1307@gmail.com", + "responseStatus": "needsAction" + }, + { + "email": "borlonganpatricia@gmail.com", + "responseStatus": "accepted" + }, + { + "email": "nickaniesther@gmail.com", + "responseStatus": "needsAction" + }, + { + "email": "leslie.tshuma@gmail.com", + "responseStatus": "accepted" + } + ], + "hangoutLink": "https://meet.google.com/oav-bwko-ybg", + "conferenceData": { + "entryPoints": [ + { + "entryPointType": "video", + "uri": "https://meet.google.com/oav-bwko-ybg", + "label": "meet.google.com/oav-bwko-ybg" + }, + { + "entryPointType": "more", + "uri": "https://tel.meet/oav-bwko-ybg?pin=6201779528408", + "pin": "6201779528408" + }, + { + "regionCode": "CA", + "entryPointType": "phone", + "uri": "tel:+1-289-323-2593", + "label": "+1 289-323-2593", + "pin": "741779055" + } + ], + "conferenceSolution": { + "key": { + "type": "hangoutsMeet" + }, + "name": "Google Meet", + "iconUri": "https://fonts.gstatic.com/s/i/productlogos/meet_2020q4/v6/web-512dp/logo_meet_2020q4_color_2x_web_512dp.png" + }, + "conferenceId": "oav-bwko-ybg" + }, + "reminders": { + "useDefault": true + }, + "eventType": "default" + }, + { + "kind": "calendar#event", + "etag": "\"3432352333440000\"", + "id": "0afkd8sj0qbubmqsmabuuohr9e_20250109T030000Z", + "status": "confirmed", + "htmlLink": "https://www.google.com/calendar/event?eid=MGFma2Q4c2owcWJ1Ym1xc21hYnV1b2hyOWVfMjAyNTAxMDlUMDMwMDAwWiBkZXZlZG1vbnRvbi5jb21fMThiZms3NDJqMWViYTlpZHVoNHA3dTRmZ3NAZw", + "created": "2023-01-24T19:51:04.000Z", + "updated": "2024-05-20T03:36:06.720Z", + "summary": "Monthly Dev Edmonton Society Meeting", + "creator": { + "email": "mandy@devedmonton.com" + }, + "organizer": { + "email": "devedmonton.com_18bfk742j1eba9iduh4p7u4fgs@group.calendar.google.com", + "displayName": "DES Public Events", + "self": true + }, + "start": { + "dateTime": "2025-01-08T20:00:00-07:00", + "timeZone": "America/Edmonton" + }, + "end": { + "dateTime": "2025-01-08T21:00:00-07:00", + "timeZone": "America/Edmonton" + }, + "recurringEventId": "0afkd8sj0qbubmqsmabuuohr9e_R20240314T020000", + "originalStartTime": { + "dateTime": "2025-01-08T20:00:00-07:00", + "timeZone": "America/Edmonton" + }, + "iCalUID": "0afkd8sj0qbubmqsmabuuohr9e_R20240314T020000@google.com", + "sequence": 0, + "attendees": [ + { + "email": "mandy@devedmonton.com", + "responseStatus": "accepted" + }, + { + "email": "mandy.m.meindersma@gmail.com", + "responseStatus": "accepted" + }, + { + "email": "des-monthly-meeting-member-invite-list@devedmonton.com", + "displayName": "DES Monthly Meeting Member Invite List", + "responseStatus": "needsAction" + }, + { + "email": "board@devedmonton.com", + "displayName": "Board of Governors", + "responseStatus": "needsAction" + }, + { + "email": "justicehemming@gmail.com", + "displayName": "Justice", + "responseStatus": "needsAction" + }, + { + "email": "salma.ibrahim1307@gmail.com", + "responseStatus": "needsAction" + }, + { + "email": "borlonganpatricia@gmail.com", + "responseStatus": "accepted" + }, + { + "email": "nickaniesther@gmail.com", + "responseStatus": "needsAction" + }, + { + "email": "leslie.tshuma@gmail.com", + "responseStatus": "accepted" + } + ], + "hangoutLink": "https://meet.google.com/oav-bwko-ybg", + "conferenceData": { + "entryPoints": [ + { + "entryPointType": "video", + "uri": "https://meet.google.com/oav-bwko-ybg", + "label": "meet.google.com/oav-bwko-ybg" + }, + { + "entryPointType": "more", + "uri": "https://tel.meet/oav-bwko-ybg?pin=6201779528408", + "pin": "6201779528408" + }, + { + "regionCode": "CA", + "entryPointType": "phone", + "uri": "tel:+1-289-323-2593", + "label": "+1 289-323-2593", + "pin": "741779055" + } + ], + "conferenceSolution": { + "key": { + "type": "hangoutsMeet" + }, + "name": "Google Meet", + "iconUri": "https://fonts.gstatic.com/s/i/productlogos/meet_2020q4/v6/web-512dp/logo_meet_2020q4_color_2x_web_512dp.png" + }, + "conferenceId": "oav-bwko-ybg" + }, + "reminders": { + "useDefault": true + }, + "eventType": "default" + } + ] +} + +const organizerIcons = { 'js-ruby-python-meetup': '/meetups/Python-js-ruby.png', 'dotnet-user-group': '/meetups/dotNet_logo.png', 'edmonton-r-user-group': 'r.svg', @@ -14,42 +952,40 @@ const meetupIcons = { class Event { start: Date end: Date - title: string - meetup: string + summary: string + organizer: string content: string + contentFull: string iconUrl: string imageTag: string class: string eventUrl: string - constructor(start: string, end: string, title: string, meetup: string, content: string, eventUrl: string) { + constructor(start: string, end: string, summary: string, organizer: string, content: string, contentFull: string, eventUrl: string) { this.start = new Date(start) this.end = new Date(end) - this.title = title - this.meetup = meetup - this.iconUrl = `${imageKitUrl}${meetupIcons[meetup as keyof typeof meetupIcons]}` - this.imageTag = `` - this.content = content + this.imageTag - this.class = this.meetup + this.title = summary + this.organizer = organizer + this.iconUrl = `${imageKitUrl}${organizerIcons[organizer as keyof typeof organizerIcons]}` + //this.imageTag = `` + this.content = content //+ this.imageTag + this.contentFull = contentFull + this.class = this.organizer this.eventUrl = eventUrl } } -const eventData = async () => { - const response = await fetch('https://devedmonton.com/api/events') - const data = await response.json() - return data -} - -const data = await eventData() -console.log(data) +export const calendarEvents: Event[] = rawData.events.map((event: any) => { + return new Event(event.start.dateTime, event.end.dateTime, event.summary, '', '', event.description, event.htmlLink) +}) -export const calendarEvents: Event[] = [ - new Event('2024-05-20 12:00', '2024-05-20 17:00', 'JS Ruby Python Meetup', 'js-ruby-python-meetup', 'This is a test', 'https://www.meetup.com/edmontonunlimited/events/300218136/'), - new Event('2024-05-21 13:00', '2024-05-21 16:00', 'Edmonton .Net User Group', 'dotnet-user-group', '', 'https://www.meetup.com/edmontonunlimited/events/300218136/'), - new Event('2024-05-22 17:00', '2024-05-22 20:00', 'Edmonton Women In Tech', 'edmonton-women-in-tech', '', 'https://www.meetup.com/edmontonunlimited/events/300218136/'), - new Event('2024-05-23 10:00', '2024-05-23 12:00', 'YEGSec Meetup', 'yegsec', '', 'https://www.meetup.com/edmontonunlimited/events/300218136/'), - new Event('2024-05-24 13:00', '2024-05-24 18:00', 'Weekly Dev Chat', 'weekly-dev-chat', '', 'https://www.meetup.com/edmontonunlimited/events/300218136/'), - new Event('2024-05-23 18:00', '2024-05-23 20:00', 'Edmonton R User Group', 'edmonton-r-user-group', '', 'https://www.meetup.com/edmontonunlimited/events/300218136/'), - new Event('2024-05-22 13:00', '2024-05-22 15:00', 'Edmonton Data Science Community', 'edmonton-data-science-community', '', 'https://www.meetup.com/edmontonunlimited/events/300218136/'), -] +// Mock Data +// export const calendarEvents: Event[] = [ +// new Event('2024-05-20 12:00', '2024-05-20 17:00', 'JS Ruby Python Meetup', 'js-ruby-python-meetup', 'This is a test', 'https://www.meetup.com/edmontonunlimited/events/300218136/'), +// new Event('2024-05-21 13:00', '2024-05-21 16:00', 'Edmonton .Net User Group', 'dotnet-user-group', '', 'https://www.meetup.com/edmontonunlimited/events/300218136/'), +// new Event('2024-05-22 17:00', '2024-05-22 20:00', 'Edmonton Women In Tech', 'edmonton-women-in-tech', '', 'https://www.meetup.com/edmontonunlimited/events/300218136/'), +// new Event('2024-05-23 10:00', '2024-05-23 12:00', 'YEGSec Meetup', 'yegsec', '', 'https://www.meetup.com/edmontonunlimited/events/300218136/'), +// new Event('2024-05-24 13:00', '2024-05-24 18:00', 'Weekly Dev Chat', 'weekly-dev-chat', '', 'https://www.meetup.com/edmontonunlimited/events/300218136/'), +// new Event('2024-05-23 18:00', '2024-05-23 20:00', 'Edmonton R User Group', 'edmonton-r-user-group', '', 'https://www.meetup.com/edmontonunlimited/events/300218136/'), +// new Event('2024-05-22 13:00', '2024-05-22 15:00', 'Edmonton Data Science Community', 'edmonton-data-science-community', '', 'https://www.meetup.com/edmontonunlimited/events/300218136/'), +// ] From f2216789eb1dafd8e0fb64f39dcb1d07e1c2b318 Mon Sep 17 00:00:00 2001 From: Keifer Erikson Date: Thu, 23 May 2024 14:32:45 -0600 Subject: [PATCH 11/34] Remove rawData - CORS error resolved --- components/app/Calendar.vue | 3 +- constants/calendar-events.ts | 993 +---------------------------------- pages/calendar.vue | 2 +- 3 files changed, 26 insertions(+), 972 deletions(-) diff --git a/components/app/Calendar.vue b/components/app/Calendar.vue index b608fcae..a2d2174d 100644 --- a/components/app/Calendar.vue +++ b/components/app/Calendar.vue @@ -12,8 +12,6 @@ const selectedEvent = ref({}) const onEventClick = (event: any, e: any) => { selectedEvent.value = event showDialog.value = true - console.log(selectedEvent) - // window.open(selectedEvent.eventUrl) e.stopPropagation() } @@ -57,6 +55,7 @@ const onEventClick = (event: any, e: any) => { +
https://www.meetup.com/edmontonunlimited/events/sqgstrygchbdc/", - "creator": { - "email": "mandy@devedmonton.com" - }, - "organizer": { - "email": "devedmonton.com_18bfk742j1eba9iduh4p7u4fgs@group.calendar.google.com", - "displayName": "DES Public Events", - "self": true - }, - "start": { - "dateTime": "2024-05-22T18:30:00-06:00", - "timeZone": "America/Edmonton" - }, - "end": { - "dateTime": "2024-05-22T20:00:00-06:00", - "timeZone": "America/Edmonton" - }, - "iCalUID": "2lu0m4snmnkq18q5j3fb15qrqd@google.com", - "sequence": 0, - "reminders": { - "useDefault": true - }, - "eventType": "default" - }, - { - "kind": "calendar#event", - "etag": "\"3432356205862000\"", - "id": "43rvqs42la1r91pcqhj94hsa07", - "status": "confirmed", - "htmlLink": "https://www.google.com/calendar/event?eid=NDNydnFzNDJsYTFyOTFwY3Foajk0aHNhMDcgZGV2ZWRtb250b24uY29tXzE4YmZrNzQyajFlYmE5aWR1aDRwN3U0ZmdzQGc", - "created": "2024-05-20T04:08:22.000Z", - "updated": "2024-05-20T04:08:22.931Z", - "summary": "Edmonton Linux User Group", - "description": "Edmonton Unlimited\nThursday, May 23 at 6:30 PM\n\nThe Edmonton Linux User Group ((elug.ca)) is a chance to get together with other users of Linux, GNU, and Unix-like operating systems, and open source...\n\nhttps://www.meetup.com/edmontonunlimited/events/vcrzgtygchbfc/", - "creator": { - "email": "mandy@devedmonton.com" - }, - "organizer": { - "email": "devedmonton.com_18bfk742j1eba9iduh4p7u4fgs@group.calendar.google.com", - "displayName": "DES Public Events", - "self": true - }, - "start": { - "dateTime": "2024-05-23T18:30:00-06:00", - "timeZone": "America/Edmonton" - }, - "end": { - "dateTime": "2024-05-23T20:00:00-06:00", - "timeZone": "America/Edmonton" - }, - "iCalUID": "43rvqs42la1r91pcqhj94hsa07@google.com", - "sequence": 0, - "reminders": { - "useDefault": true - }, - "eventType": "default" - }, - { - "kind": "calendar#event", - "etag": "\"3432352333440000\"", - "id": "0afkd8sj0qbubmqsmabuuohr9e_20240613T020000Z", - "status": "confirmed", - "htmlLink": "https://www.google.com/calendar/event?eid=MGFma2Q4c2owcWJ1Ym1xc21hYnV1b2hyOWVfMjAyNDA2MTNUMDIwMDAwWiBkZXZlZG1vbnRvbi5jb21fMThiZms3NDJqMWViYTlpZHVoNHA3dTRmZ3NAZw", - "created": "2023-01-24T19:51:04.000Z", - "updated": "2024-05-20T03:36:06.720Z", - "summary": "Monthly Dev Edmonton Society Meeting", - "creator": { - "email": "mandy@devedmonton.com" - }, - "organizer": { - "email": "devedmonton.com_18bfk742j1eba9iduh4p7u4fgs@group.calendar.google.com", - "displayName": "DES Public Events", - "self": true - }, - "start": { - "dateTime": "2024-06-12T20:00:00-06:00", - "timeZone": "America/Edmonton" - }, - "end": { - "dateTime": "2024-06-12T21:00:00-06:00", - "timeZone": "America/Edmonton" - }, - "recurringEventId": "0afkd8sj0qbubmqsmabuuohr9e_R20240314T020000", - "originalStartTime": { - "dateTime": "2024-06-12T20:00:00-06:00", - "timeZone": "America/Edmonton" - }, - "iCalUID": "0afkd8sj0qbubmqsmabuuohr9e_R20240314T020000@google.com", - "sequence": 0, - "attendees": [ - { - "email": "mandy@devedmonton.com", - "responseStatus": "accepted" - }, - { - "email": "mandy.m.meindersma@gmail.com", - "responseStatus": "accepted" - }, - { - "email": "des-monthly-meeting-member-invite-list@devedmonton.com", - "displayName": "DES Monthly Meeting Member Invite List", - "responseStatus": "needsAction" - }, - { - "email": "board@devedmonton.com", - "displayName": "Board of Governors", - "responseStatus": "needsAction" - }, - { - "email": "justicehemming@gmail.com", - "displayName": "Justice", - "responseStatus": "needsAction" - }, - { - "email": "salma.ibrahim1307@gmail.com", - "responseStatus": "needsAction" - }, - { - "email": "borlonganpatricia@gmail.com", - "responseStatus": "accepted" - }, - { - "email": "nickaniesther@gmail.com", - "responseStatus": "needsAction" - }, - { - "email": "leslie.tshuma@gmail.com", - "responseStatus": "accepted" - } - ], - "hangoutLink": "https://meet.google.com/oav-bwko-ybg", - "conferenceData": { - "entryPoints": [ - { - "entryPointType": "video", - "uri": "https://meet.google.com/oav-bwko-ybg", - "label": "meet.google.com/oav-bwko-ybg" - }, - { - "entryPointType": "more", - "uri": "https://tel.meet/oav-bwko-ybg?pin=6201779528408", - "pin": "6201779528408" - }, - { - "regionCode": "CA", - "entryPointType": "phone", - "uri": "tel:+1-289-323-2593", - "label": "+1 289-323-2593", - "pin": "741779055" - } - ], - "conferenceSolution": { - "key": { - "type": "hangoutsMeet" - }, - "name": "Google Meet", - "iconUri": "https://fonts.gstatic.com/s/i/productlogos/meet_2020q4/v6/web-512dp/logo_meet_2020q4_color_2x_web_512dp.png" - }, - "conferenceId": "oav-bwko-ybg" - }, - "reminders": { - "useDefault": true - }, - "eventType": "default" - }, - { - "kind": "calendar#event", - "etag": "\"3432352333440000\"", - "id": "0afkd8sj0qbubmqsmabuuohr9e_20240711T020000Z", - "status": "confirmed", - "htmlLink": "https://www.google.com/calendar/event?eid=MGFma2Q4c2owcWJ1Ym1xc21hYnV1b2hyOWVfMjAyNDA3MTFUMDIwMDAwWiBkZXZlZG1vbnRvbi5jb21fMThiZms3NDJqMWViYTlpZHVoNHA3dTRmZ3NAZw", - "created": "2023-01-24T19:51:04.000Z", - "updated": "2024-05-20T03:36:06.720Z", - "summary": "Monthly Dev Edmonton Society Meeting", - "creator": { - "email": "mandy@devedmonton.com" - }, - "organizer": { - "email": "devedmonton.com_18bfk742j1eba9iduh4p7u4fgs@group.calendar.google.com", - "displayName": "DES Public Events", - "self": true - }, - "start": { - "dateTime": "2024-07-10T20:00:00-06:00", - "timeZone": "America/Edmonton" - }, - "end": { - "dateTime": "2024-07-10T21:00:00-06:00", - "timeZone": "America/Edmonton" - }, - "recurringEventId": "0afkd8sj0qbubmqsmabuuohr9e_R20240314T020000", - "originalStartTime": { - "dateTime": "2024-07-10T20:00:00-06:00", - "timeZone": "America/Edmonton" - }, - "iCalUID": "0afkd8sj0qbubmqsmabuuohr9e_R20240314T020000@google.com", - "sequence": 0, - "attendees": [ - { - "email": "mandy@devedmonton.com", - "responseStatus": "accepted" - }, - { - "email": "mandy.m.meindersma@gmail.com", - "responseStatus": "accepted" - }, - { - "email": "des-monthly-meeting-member-invite-list@devedmonton.com", - "displayName": "DES Monthly Meeting Member Invite List", - "responseStatus": "needsAction" - }, - { - "email": "board@devedmonton.com", - "displayName": "Board of Governors", - "responseStatus": "needsAction" - }, - { - "email": "justicehemming@gmail.com", - "displayName": "Justice", - "responseStatus": "needsAction" - }, - { - "email": "salma.ibrahim1307@gmail.com", - "responseStatus": "needsAction" - }, - { - "email": "borlonganpatricia@gmail.com", - "responseStatus": "accepted" - }, - { - "email": "nickaniesther@gmail.com", - "responseStatus": "needsAction" - }, - { - "email": "leslie.tshuma@gmail.com", - "responseStatus": "accepted" - } - ], - "hangoutLink": "https://meet.google.com/oav-bwko-ybg", - "conferenceData": { - "entryPoints": [ - { - "entryPointType": "video", - "uri": "https://meet.google.com/oav-bwko-ybg", - "label": "meet.google.com/oav-bwko-ybg" - }, - { - "entryPointType": "more", - "uri": "https://tel.meet/oav-bwko-ybg?pin=6201779528408", - "pin": "6201779528408" - }, - { - "regionCode": "CA", - "entryPointType": "phone", - "uri": "tel:+1-289-323-2593", - "label": "+1 289-323-2593", - "pin": "741779055" - } - ], - "conferenceSolution": { - "key": { - "type": "hangoutsMeet" - }, - "name": "Google Meet", - "iconUri": "https://fonts.gstatic.com/s/i/productlogos/meet_2020q4/v6/web-512dp/logo_meet_2020q4_color_2x_web_512dp.png" - }, - "conferenceId": "oav-bwko-ybg" - }, - "reminders": { - "useDefault": true - }, - "eventType": "default" - }, - { - "kind": "calendar#event", - "etag": "\"3432352333440000\"", - "id": "0afkd8sj0qbubmqsmabuuohr9e_20240815T020000Z", - "status": "confirmed", - "htmlLink": "https://www.google.com/calendar/event?eid=MGFma2Q4c2owcWJ1Ym1xc21hYnV1b2hyOWVfMjAyNDA4MTVUMDIwMDAwWiBkZXZlZG1vbnRvbi5jb21fMThiZms3NDJqMWViYTlpZHVoNHA3dTRmZ3NAZw", - "created": "2023-01-24T19:51:04.000Z", - "updated": "2024-05-20T03:36:06.720Z", - "summary": "Monthly Dev Edmonton Society Meeting", - "creator": { - "email": "mandy@devedmonton.com" - }, - "organizer": { - "email": "devedmonton.com_18bfk742j1eba9iduh4p7u4fgs@group.calendar.google.com", - "displayName": "DES Public Events", - "self": true - }, - "start": { - "dateTime": "2024-08-14T20:00:00-06:00", - "timeZone": "America/Edmonton" - }, - "end": { - "dateTime": "2024-08-14T21:00:00-06:00", - "timeZone": "America/Edmonton" - }, - "recurringEventId": "0afkd8sj0qbubmqsmabuuohr9e_R20240314T020000", - "originalStartTime": { - "dateTime": "2024-08-14T20:00:00-06:00", - "timeZone": "America/Edmonton" - }, - "iCalUID": "0afkd8sj0qbubmqsmabuuohr9e_R20240314T020000@google.com", - "sequence": 0, - "attendees": [ - { - "email": "mandy@devedmonton.com", - "responseStatus": "accepted" - }, - { - "email": "mandy.m.meindersma@gmail.com", - "responseStatus": "accepted" - }, - { - "email": "des-monthly-meeting-member-invite-list@devedmonton.com", - "displayName": "DES Monthly Meeting Member Invite List", - "responseStatus": "needsAction" - }, - { - "email": "board@devedmonton.com", - "displayName": "Board of Governors", - "responseStatus": "needsAction" - }, - { - "email": "justicehemming@gmail.com", - "displayName": "Justice", - "responseStatus": "needsAction" - }, - { - "email": "salma.ibrahim1307@gmail.com", - "responseStatus": "needsAction" - }, - { - "email": "borlonganpatricia@gmail.com", - "responseStatus": "accepted" - }, - { - "email": "nickaniesther@gmail.com", - "responseStatus": "needsAction" - }, - { - "email": "leslie.tshuma@gmail.com", - "responseStatus": "accepted" - } - ], - "hangoutLink": "https://meet.google.com/oav-bwko-ybg", - "conferenceData": { - "entryPoints": [ - { - "entryPointType": "video", - "uri": "https://meet.google.com/oav-bwko-ybg", - "label": "meet.google.com/oav-bwko-ybg" - }, - { - "entryPointType": "more", - "uri": "https://tel.meet/oav-bwko-ybg?pin=6201779528408", - "pin": "6201779528408" - }, - { - "regionCode": "CA", - "entryPointType": "phone", - "uri": "tel:+1-289-323-2593", - "label": "+1 289-323-2593", - "pin": "741779055" - } - ], - "conferenceSolution": { - "key": { - "type": "hangoutsMeet" - }, - "name": "Google Meet", - "iconUri": "https://fonts.gstatic.com/s/i/productlogos/meet_2020q4/v6/web-512dp/logo_meet_2020q4_color_2x_web_512dp.png" - }, - "conferenceId": "oav-bwko-ybg" - }, - "reminders": { - "useDefault": true - }, - "eventType": "default" - }, - { - "kind": "calendar#event", - "etag": "\"3432352333440000\"", - "id": "0afkd8sj0qbubmqsmabuuohr9e_20240912T020000Z", - "status": "confirmed", - "htmlLink": "https://www.google.com/calendar/event?eid=MGFma2Q4c2owcWJ1Ym1xc21hYnV1b2hyOWVfMjAyNDA5MTJUMDIwMDAwWiBkZXZlZG1vbnRvbi5jb21fMThiZms3NDJqMWViYTlpZHVoNHA3dTRmZ3NAZw", - "created": "2023-01-24T19:51:04.000Z", - "updated": "2024-05-20T03:36:06.720Z", - "summary": "Monthly Dev Edmonton Society Meeting", - "creator": { - "email": "mandy@devedmonton.com" - }, - "organizer": { - "email": "devedmonton.com_18bfk742j1eba9iduh4p7u4fgs@group.calendar.google.com", - "displayName": "DES Public Events", - "self": true - }, - "start": { - "dateTime": "2024-09-11T20:00:00-06:00", - "timeZone": "America/Edmonton" - }, - "end": { - "dateTime": "2024-09-11T21:00:00-06:00", - "timeZone": "America/Edmonton" - }, - "recurringEventId": "0afkd8sj0qbubmqsmabuuohr9e_R20240314T020000", - "originalStartTime": { - "dateTime": "2024-09-11T20:00:00-06:00", - "timeZone": "America/Edmonton" - }, - "iCalUID": "0afkd8sj0qbubmqsmabuuohr9e_R20240314T020000@google.com", - "sequence": 0, - "attendees": [ - { - "email": "mandy@devedmonton.com", - "responseStatus": "accepted" - }, - { - "email": "mandy.m.meindersma@gmail.com", - "responseStatus": "accepted" - }, - { - "email": "des-monthly-meeting-member-invite-list@devedmonton.com", - "displayName": "DES Monthly Meeting Member Invite List", - "responseStatus": "needsAction" - }, - { - "email": "board@devedmonton.com", - "displayName": "Board of Governors", - "responseStatus": "needsAction" - }, - { - "email": "justicehemming@gmail.com", - "displayName": "Justice", - "responseStatus": "needsAction" - }, - { - "email": "salma.ibrahim1307@gmail.com", - "responseStatus": "needsAction" - }, - { - "email": "borlonganpatricia@gmail.com", - "responseStatus": "accepted" - }, - { - "email": "nickaniesther@gmail.com", - "responseStatus": "needsAction" - }, - { - "email": "leslie.tshuma@gmail.com", - "responseStatus": "accepted" - } - ], - "hangoutLink": "https://meet.google.com/oav-bwko-ybg", - "conferenceData": { - "entryPoints": [ - { - "entryPointType": "video", - "uri": "https://meet.google.com/oav-bwko-ybg", - "label": "meet.google.com/oav-bwko-ybg" - }, - { - "entryPointType": "more", - "uri": "https://tel.meet/oav-bwko-ybg?pin=6201779528408", - "pin": "6201779528408" - }, - { - "regionCode": "CA", - "entryPointType": "phone", - "uri": "tel:+1-289-323-2593", - "label": "+1 289-323-2593", - "pin": "741779055" - } - ], - "conferenceSolution": { - "key": { - "type": "hangoutsMeet" - }, - "name": "Google Meet", - "iconUri": "https://fonts.gstatic.com/s/i/productlogos/meet_2020q4/v6/web-512dp/logo_meet_2020q4_color_2x_web_512dp.png" - }, - "conferenceId": "oav-bwko-ybg" - }, - "reminders": { - "useDefault": true - }, - "eventType": "default" - }, - { - "kind": "calendar#event", - "etag": "\"3432352333440000\"", - "id": "0afkd8sj0qbubmqsmabuuohr9e_20241010T020000Z", - "status": "confirmed", - "htmlLink": "https://www.google.com/calendar/event?eid=MGFma2Q4c2owcWJ1Ym1xc21hYnV1b2hyOWVfMjAyNDEwMTBUMDIwMDAwWiBkZXZlZG1vbnRvbi5jb21fMThiZms3NDJqMWViYTlpZHVoNHA3dTRmZ3NAZw", - "created": "2023-01-24T19:51:04.000Z", - "updated": "2024-05-20T03:36:06.720Z", - "summary": "Monthly Dev Edmonton Society Meeting", - "creator": { - "email": "mandy@devedmonton.com" - }, - "organizer": { - "email": "devedmonton.com_18bfk742j1eba9iduh4p7u4fgs@group.calendar.google.com", - "displayName": "DES Public Events", - "self": true - }, - "start": { - "dateTime": "2024-10-09T20:00:00-06:00", - "timeZone": "America/Edmonton" - }, - "end": { - "dateTime": "2024-10-09T21:00:00-06:00", - "timeZone": "America/Edmonton" - }, - "recurringEventId": "0afkd8sj0qbubmqsmabuuohr9e_R20240314T020000", - "originalStartTime": { - "dateTime": "2024-10-09T20:00:00-06:00", - "timeZone": "America/Edmonton" - }, - "iCalUID": "0afkd8sj0qbubmqsmabuuohr9e_R20240314T020000@google.com", - "sequence": 0, - "attendees": [ - { - "email": "mandy@devedmonton.com", - "responseStatus": "accepted" - }, - { - "email": "mandy.m.meindersma@gmail.com", - "responseStatus": "accepted" - }, - { - "email": "des-monthly-meeting-member-invite-list@devedmonton.com", - "displayName": "DES Monthly Meeting Member Invite List", - "responseStatus": "needsAction" - }, - { - "email": "board@devedmonton.com", - "displayName": "Board of Governors", - "responseStatus": "needsAction" - }, - { - "email": "justicehemming@gmail.com", - "displayName": "Justice", - "responseStatus": "needsAction" - }, - { - "email": "salma.ibrahim1307@gmail.com", - "responseStatus": "needsAction" - }, - { - "email": "borlonganpatricia@gmail.com", - "responseStatus": "accepted" - }, - { - "email": "nickaniesther@gmail.com", - "responseStatus": "needsAction" - }, - { - "email": "leslie.tshuma@gmail.com", - "responseStatus": "accepted" - } - ], - "hangoutLink": "https://meet.google.com/oav-bwko-ybg", - "conferenceData": { - "entryPoints": [ - { - "entryPointType": "video", - "uri": "https://meet.google.com/oav-bwko-ybg", - "label": "meet.google.com/oav-bwko-ybg" - }, - { - "entryPointType": "more", - "uri": "https://tel.meet/oav-bwko-ybg?pin=6201779528408", - "pin": "6201779528408" - }, - { - "regionCode": "CA", - "entryPointType": "phone", - "uri": "tel:+1-289-323-2593", - "label": "+1 289-323-2593", - "pin": "741779055" - } - ], - "conferenceSolution": { - "key": { - "type": "hangoutsMeet" - }, - "name": "Google Meet", - "iconUri": "https://fonts.gstatic.com/s/i/productlogos/meet_2020q4/v6/web-512dp/logo_meet_2020q4_color_2x_web_512dp.png" - }, - "conferenceId": "oav-bwko-ybg" - }, - "reminders": { - "useDefault": true - }, - "eventType": "default" - }, - { - "kind": "calendar#event", - "etag": "\"3432352333440000\"", - "id": "0afkd8sj0qbubmqsmabuuohr9e_20241114T030000Z", - "status": "confirmed", - "htmlLink": "https://www.google.com/calendar/event?eid=MGFma2Q4c2owcWJ1Ym1xc21hYnV1b2hyOWVfMjAyNDExMTRUMDMwMDAwWiBkZXZlZG1vbnRvbi5jb21fMThiZms3NDJqMWViYTlpZHVoNHA3dTRmZ3NAZw", - "created": "2023-01-24T19:51:04.000Z", - "updated": "2024-05-20T03:36:06.720Z", - "summary": "Monthly Dev Edmonton Society Meeting", - "creator": { - "email": "mandy@devedmonton.com" - }, - "organizer": { - "email": "devedmonton.com_18bfk742j1eba9iduh4p7u4fgs@group.calendar.google.com", - "displayName": "DES Public Events", - "self": true - }, - "start": { - "dateTime": "2024-11-13T20:00:00-07:00", - "timeZone": "America/Edmonton" - }, - "end": { - "dateTime": "2024-11-13T21:00:00-07:00", - "timeZone": "America/Edmonton" - }, - "recurringEventId": "0afkd8sj0qbubmqsmabuuohr9e_R20240314T020000", - "originalStartTime": { - "dateTime": "2024-11-13T20:00:00-07:00", - "timeZone": "America/Edmonton" - }, - "iCalUID": "0afkd8sj0qbubmqsmabuuohr9e_R20240314T020000@google.com", - "sequence": 0, - "attendees": [ - { - "email": "mandy@devedmonton.com", - "responseStatus": "accepted" - }, - { - "email": "mandy.m.meindersma@gmail.com", - "responseStatus": "accepted" - }, - { - "email": "des-monthly-meeting-member-invite-list@devedmonton.com", - "displayName": "DES Monthly Meeting Member Invite List", - "responseStatus": "needsAction" - }, - { - "email": "board@devedmonton.com", - "displayName": "Board of Governors", - "responseStatus": "needsAction" - }, - { - "email": "justicehemming@gmail.com", - "displayName": "Justice", - "responseStatus": "needsAction" - }, - { - "email": "salma.ibrahim1307@gmail.com", - "responseStatus": "needsAction" - }, - { - "email": "borlonganpatricia@gmail.com", - "responseStatus": "accepted" - }, - { - "email": "nickaniesther@gmail.com", - "responseStatus": "needsAction" - }, - { - "email": "leslie.tshuma@gmail.com", - "responseStatus": "accepted" - } - ], - "hangoutLink": "https://meet.google.com/oav-bwko-ybg", - "conferenceData": { - "entryPoints": [ - { - "entryPointType": "video", - "uri": "https://meet.google.com/oav-bwko-ybg", - "label": "meet.google.com/oav-bwko-ybg" - }, - { - "entryPointType": "more", - "uri": "https://tel.meet/oav-bwko-ybg?pin=6201779528408", - "pin": "6201779528408" - }, - { - "regionCode": "CA", - "entryPointType": "phone", - "uri": "tel:+1-289-323-2593", - "label": "+1 289-323-2593", - "pin": "741779055" - } - ], - "conferenceSolution": { - "key": { - "type": "hangoutsMeet" - }, - "name": "Google Meet", - "iconUri": "https://fonts.gstatic.com/s/i/productlogos/meet_2020q4/v6/web-512dp/logo_meet_2020q4_color_2x_web_512dp.png" - }, - "conferenceId": "oav-bwko-ybg" - }, - "reminders": { - "useDefault": true - }, - "eventType": "default" - }, - { - "kind": "calendar#event", - "etag": "\"3432352333440000\"", - "id": "0afkd8sj0qbubmqsmabuuohr9e_20241212T030000Z", - "status": "confirmed", - "htmlLink": "https://www.google.com/calendar/event?eid=MGFma2Q4c2owcWJ1Ym1xc21hYnV1b2hyOWVfMjAyNDEyMTJUMDMwMDAwWiBkZXZlZG1vbnRvbi5jb21fMThiZms3NDJqMWViYTlpZHVoNHA3dTRmZ3NAZw", - "created": "2023-01-24T19:51:04.000Z", - "updated": "2024-05-20T03:36:06.720Z", - "summary": "Monthly Dev Edmonton Society Meeting", - "creator": { - "email": "mandy@devedmonton.com" - }, - "organizer": { - "email": "devedmonton.com_18bfk742j1eba9iduh4p7u4fgs@group.calendar.google.com", - "displayName": "DES Public Events", - "self": true - }, - "start": { - "dateTime": "2024-12-11T20:00:00-07:00", - "timeZone": "America/Edmonton" - }, - "end": { - "dateTime": "2024-12-11T21:00:00-07:00", - "timeZone": "America/Edmonton" - }, - "recurringEventId": "0afkd8sj0qbubmqsmabuuohr9e_R20240314T020000", - "originalStartTime": { - "dateTime": "2024-12-11T20:00:00-07:00", - "timeZone": "America/Edmonton" - }, - "iCalUID": "0afkd8sj0qbubmqsmabuuohr9e_R20240314T020000@google.com", - "sequence": 0, - "attendees": [ - { - "email": "mandy@devedmonton.com", - "responseStatus": "accepted" - }, - { - "email": "mandy.m.meindersma@gmail.com", - "responseStatus": "accepted" - }, - { - "email": "des-monthly-meeting-member-invite-list@devedmonton.com", - "displayName": "DES Monthly Meeting Member Invite List", - "responseStatus": "needsAction" - }, - { - "email": "board@devedmonton.com", - "displayName": "Board of Governors", - "responseStatus": "needsAction" - }, - { - "email": "justicehemming@gmail.com", - "displayName": "Justice", - "responseStatus": "needsAction" - }, - { - "email": "salma.ibrahim1307@gmail.com", - "responseStatus": "needsAction" - }, - { - "email": "borlonganpatricia@gmail.com", - "responseStatus": "accepted" - }, - { - "email": "nickaniesther@gmail.com", - "responseStatus": "needsAction" - }, - { - "email": "leslie.tshuma@gmail.com", - "responseStatus": "accepted" - } - ], - "hangoutLink": "https://meet.google.com/oav-bwko-ybg", - "conferenceData": { - "entryPoints": [ - { - "entryPointType": "video", - "uri": "https://meet.google.com/oav-bwko-ybg", - "label": "meet.google.com/oav-bwko-ybg" - }, - { - "entryPointType": "more", - "uri": "https://tel.meet/oav-bwko-ybg?pin=6201779528408", - "pin": "6201779528408" - }, - { - "regionCode": "CA", - "entryPointType": "phone", - "uri": "tel:+1-289-323-2593", - "label": "+1 289-323-2593", - "pin": "741779055" - } - ], - "conferenceSolution": { - "key": { - "type": "hangoutsMeet" - }, - "name": "Google Meet", - "iconUri": "https://fonts.gstatic.com/s/i/productlogos/meet_2020q4/v6/web-512dp/logo_meet_2020q4_color_2x_web_512dp.png" - }, - "conferenceId": "oav-bwko-ybg" - }, - "reminders": { - "useDefault": true - }, - "eventType": "default" - }, - { - "kind": "calendar#event", - "etag": "\"3432352333440000\"", - "id": "0afkd8sj0qbubmqsmabuuohr9e_20250109T030000Z", - "status": "confirmed", - "htmlLink": "https://www.google.com/calendar/event?eid=MGFma2Q4c2owcWJ1Ym1xc21hYnV1b2hyOWVfMjAyNTAxMDlUMDMwMDAwWiBkZXZlZG1vbnRvbi5jb21fMThiZms3NDJqMWViYTlpZHVoNHA3dTRmZ3NAZw", - "created": "2023-01-24T19:51:04.000Z", - "updated": "2024-05-20T03:36:06.720Z", - "summary": "Monthly Dev Edmonton Society Meeting", - "creator": { - "email": "mandy@devedmonton.com" - }, - "organizer": { - "email": "devedmonton.com_18bfk742j1eba9iduh4p7u4fgs@group.calendar.google.com", - "displayName": "DES Public Events", - "self": true - }, - "start": { - "dateTime": "2025-01-08T20:00:00-07:00", - "timeZone": "America/Edmonton" - }, - "end": { - "dateTime": "2025-01-08T21:00:00-07:00", - "timeZone": "America/Edmonton" - }, - "recurringEventId": "0afkd8sj0qbubmqsmabuuohr9e_R20240314T020000", - "originalStartTime": { - "dateTime": "2025-01-08T20:00:00-07:00", - "timeZone": "America/Edmonton" - }, - "iCalUID": "0afkd8sj0qbubmqsmabuuohr9e_R20240314T020000@google.com", - "sequence": 0, - "attendees": [ - { - "email": "mandy@devedmonton.com", - "responseStatus": "accepted" - }, - { - "email": "mandy.m.meindersma@gmail.com", - "responseStatus": "accepted" - }, - { - "email": "des-monthly-meeting-member-invite-list@devedmonton.com", - "displayName": "DES Monthly Meeting Member Invite List", - "responseStatus": "needsAction" - }, - { - "email": "board@devedmonton.com", - "displayName": "Board of Governors", - "responseStatus": "needsAction" - }, - { - "email": "justicehemming@gmail.com", - "displayName": "Justice", - "responseStatus": "needsAction" - }, - { - "email": "salma.ibrahim1307@gmail.com", - "responseStatus": "needsAction" - }, - { - "email": "borlonganpatricia@gmail.com", - "responseStatus": "accepted" - }, - { - "email": "nickaniesther@gmail.com", - "responseStatus": "needsAction" - }, - { - "email": "leslie.tshuma@gmail.com", - "responseStatus": "accepted" - } - ], - "hangoutLink": "https://meet.google.com/oav-bwko-ybg", - "conferenceData": { - "entryPoints": [ - { - "entryPointType": "video", - "uri": "https://meet.google.com/oav-bwko-ybg", - "label": "meet.google.com/oav-bwko-ybg" - }, - { - "entryPointType": "more", - "uri": "https://tel.meet/oav-bwko-ybg?pin=6201779528408", - "pin": "6201779528408" - }, - { - "regionCode": "CA", - "entryPointType": "phone", - "uri": "tel:+1-289-323-2593", - "label": "+1 289-323-2593", - "pin": "741779055" - } - ], - "conferenceSolution": { - "key": { - "type": "hangoutsMeet" - }, - "name": "Google Meet", - "iconUri": "https://fonts.gstatic.com/s/i/productlogos/meet_2020q4/v6/web-512dp/logo_meet_2020q4_color_2x_web_512dp.png" - }, - "conferenceId": "oav-bwko-ybg" - }, - "reminders": { - "useDefault": true - }, - "eventType": "default" - } - ] -} - -const organizerIcons = { - 'js-ruby-python-meetup': '/meetups/Python-js-ruby.png', - 'dotnet-user-group': '/meetups/dotNet_logo.png', - 'edmonton-r-user-group': 'r.svg', - 'edmonton-women-in-tech': '/meetups/yegwit.png', - 'weekly-dev-chat': 'weeklydevchat.svg', - 'edmonton-data-science-community': '/meetups/DataScience', - 'yegsec': '/meetups/YEGSec.png', -} +// const organizerIcons = { +// 'js-ruby-python-meetup': '/meetups/Python-js-ruby.png', +// 'dotnet-user-group': '/meetups/dotNet_logo.png', +// 'edmonton-r-user-group': 'r.svg', +// 'edmonton-women-in-tech': '/meetups/yegwit.png', +// 'weekly-dev-chat': 'weeklydevchat.svg', +// 'edmonton-data-science-community': '/meetups/DataScience', +// 'yegsec': '/meetups/YEGSec.png', +// } class Event { start: Date end: Date - summary: string + title: string organizer: string content: string contentFull: string - iconUrl: string - imageTag: string + // iconUrl: string + // imageTag: string class: string eventUrl: string @@ -966,26 +28,19 @@ class Event { this.end = new Date(end) this.title = summary this.organizer = organizer - this.iconUrl = `${imageKitUrl}${organizerIcons[organizer as keyof typeof organizerIcons]}` - //this.imageTag = `` - this.content = content //+ this.imageTag + // this.iconUrl = `${imageKitUrl}${organizerIcons[organizer as keyof typeof organizerIcons]}` + // this.imageTag = `` + this.content = content this.contentFull = contentFull this.class = this.organizer this.eventUrl = eventUrl } } -export const calendarEvents: Event[] = rawData.events.map((event: any) => { - return new Event(event.start.dateTime, event.end.dateTime, event.summary, '', '', event.description, event.htmlLink) -}) - -// Mock Data -// export const calendarEvents: Event[] = [ -// new Event('2024-05-20 12:00', '2024-05-20 17:00', 'JS Ruby Python Meetup', 'js-ruby-python-meetup', 'This is a test', 'https://www.meetup.com/edmontonunlimited/events/300218136/'), -// new Event('2024-05-21 13:00', '2024-05-21 16:00', 'Edmonton .Net User Group', 'dotnet-user-group', '', 'https://www.meetup.com/edmontonunlimited/events/300218136/'), -// new Event('2024-05-22 17:00', '2024-05-22 20:00', 'Edmonton Women In Tech', 'edmonton-women-in-tech', '', 'https://www.meetup.com/edmontonunlimited/events/300218136/'), -// new Event('2024-05-23 10:00', '2024-05-23 12:00', 'YEGSec Meetup', 'yegsec', '', 'https://www.meetup.com/edmontonunlimited/events/300218136/'), -// new Event('2024-05-24 13:00', '2024-05-24 18:00', 'Weekly Dev Chat', 'weekly-dev-chat', '', 'https://www.meetup.com/edmontonunlimited/events/300218136/'), -// new Event('2024-05-23 18:00', '2024-05-23 20:00', 'Edmonton R User Group', 'edmonton-r-user-group', '', 'https://www.meetup.com/edmontonunlimited/events/300218136/'), -// new Event('2024-05-22 13:00', '2024-05-22 15:00', 'Edmonton Data Science Community', 'edmonton-data-science-community', '', 'https://www.meetup.com/edmontonunlimited/events/300218136/'), -// ] +export const fetchEvents = async () => { + const response = await fetch('https://devedmonton.com/api/events') + const data = await response.json() + return data.events.map((event: any) => { + return new Event(event.start.dateTime, event.end.dateTime, event.summary, '', '', event.description, event.htmlLink) + }) +} diff --git a/pages/calendar.vue b/pages/calendar.vue index abe58e17..dec77c49 100644 --- a/pages/calendar.vue +++ b/pages/calendar.vue @@ -1,5 +1,5 @@ + + + + diff --git a/pages/calendar.vue b/pages/calendar.vue index dec77c49..dc7237ba 100644 --- a/pages/calendar.vue +++ b/pages/calendar.vue @@ -18,6 +18,8 @@ onMounted(() => { From e4fb77aae7072153bffdc0aefd1a4705923fc160 Mon Sep 17 00:00:00 2001 From: Keifer Erikson Date: Fri, 24 May 2024 13:52:44 -0600 Subject: [PATCH 14/34] Cleanup and optimization --- components/app/Calendar.vue | 1 - pages/calendar.vue | 23 +++++++++++++++-------- 2 files changed, 15 insertions(+), 9 deletions(-) diff --git a/components/app/Calendar.vue b/components/app/Calendar.vue index 0fa3efc2..267efdd2 100644 --- a/components/app/Calendar.vue +++ b/components/app/Calendar.vue @@ -32,7 +32,6 @@ const onEventClick = (event: any, e: any) => { -const group = { name: 'Calendar', items: await fetchEvents() } +const group = ref({ name: 'Calendar', items: [] }) const title = 'Calendar' const description = 'List of all upcoming events in Edmonton' @@ -9,17 +9,24 @@ useServerSeoMeta({ description, }) -onMounted(() => { - // fetch the events using the google api. - // change the events ref to use the google api - // profit. +defineOgImage({ + component: 'AppOgImageFrame', + icon: 'i-ph-calendar-duotone', +}) + +onMounted(async () => { + try { + const items = await fetchEvents() + group.value = { name: 'Calendar', items } + } + catch (error) { + console.error('Failed to fetch events:', error) + } }) From 000f688a85df365882f5c31d704a253606f69a7b Mon Sep 17 00:00:00 2001 From: Keifer Erikson Date: Fri, 24 May 2024 14:26:47 -0600 Subject: [PATCH 15/34] Fix fetch url --- constants/calendar-events.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/constants/calendar-events.ts b/constants/calendar-events.ts index a2a53fed..3797b1ac 100644 --- a/constants/calendar-events.ts +++ b/constants/calendar-events.ts @@ -21,7 +21,7 @@ class Event { } export const fetchEvents = async () => { - const response = await fetch('https://devedmonton.com/api/events') + const response = await fetch('/api/events') const data = await response.json() return data.events.map((event: any) => { return new Event(event.start.dateTime, event.end.dateTime, event.summary, '', '', event.description, event.htmlLink) From 473cd7c0ecc9bc7a82e8ec794bf8f8ce8357ecc9 Mon Sep 17 00:00:00 2001 From: Keifer Erikson Date: Fri, 24 May 2024 14:36:25 -0600 Subject: [PATCH 16/34] Add domain to fetch url --- constants/calendar-events.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/constants/calendar-events.ts b/constants/calendar-events.ts index 3797b1ac..a2a53fed 100644 --- a/constants/calendar-events.ts +++ b/constants/calendar-events.ts @@ -21,7 +21,7 @@ class Event { } export const fetchEvents = async () => { - const response = await fetch('/api/events') + const response = await fetch('https://devedmonton.com/api/events') const data = await response.json() return data.events.map((event: any) => { return new Event(event.start.dateTime, event.end.dateTime, event.summary, '', '', event.description, event.htmlLink) From 953fd078285dd951c2e3801bb76ca358d205ea40 Mon Sep 17 00:00:00 2001 From: Keifer Erikson Date: Fri, 24 May 2024 15:53:47 -0600 Subject: [PATCH 17/34] WIP: switching to useLazyAsyncData instead of onMounted --- constants/calendar-events.ts | 2 +- pages/calendar.vue | 24 +++++++++++++----------- 2 files changed, 14 insertions(+), 12 deletions(-) diff --git a/constants/calendar-events.ts b/constants/calendar-events.ts index a2a53fed..3797b1ac 100644 --- a/constants/calendar-events.ts +++ b/constants/calendar-events.ts @@ -21,7 +21,7 @@ class Event { } export const fetchEvents = async () => { - const response = await fetch('https://devedmonton.com/api/events') + const response = await fetch('/api/events') const data = await response.json() return data.events.map((event: any) => { return new Event(event.start.dateTime, event.end.dateTime, event.summary, '', '', event.description, event.htmlLink) diff --git a/pages/calendar.vue b/pages/calendar.vue index 00bedf7e..58110cf4 100644 --- a/pages/calendar.vue +++ b/pages/calendar.vue @@ -1,6 +1,12 @@ From b3897e4ce70bb5d792d1f9735b061b05beaa299d Mon Sep 17 00:00:00 2001 From: Keifer Erikson Date: Fri, 24 May 2024 21:14:42 -0600 Subject: [PATCH 18/34] Remove improper calendar-events.ts - not a constant Move Event class to calendar.vue page --- components/app/Calendar.vue | 18 +++++++++++++++++ constants/calendar-events.ts | 29 --------------------------- pages/calendar.vue | 38 +++++++++++++++++++++++++++++------- 3 files changed, 49 insertions(+), 36 deletions(-) delete mode 100644 constants/calendar-events.ts diff --git a/components/app/Calendar.vue b/components/app/Calendar.vue index 267efdd2..59952105 100644 --- a/components/app/Calendar.vue +++ b/components/app/Calendar.vue @@ -4,6 +4,7 @@ import 'vue-cal/dist/vuecal.css' defineProps<{ group: any + pending: boolean }>() const showEventDetail = ref(false) @@ -23,6 +24,7 @@ const onEventClick = (event: any, e: any) => { diff --git a/components/app/Modal.vue b/components/app/Modal.vue new file mode 100644 index 00000000..9f8a96aa --- /dev/null +++ b/components/app/Modal.vue @@ -0,0 +1,35 @@ + + + + + From 3085d796dedf8ea7fd7bc78613dfb813d9a578eb Mon Sep 17 00:00:00 2001 From: Keifer Erikson Date: Tue, 28 May 2024 15:17:29 -0600 Subject: [PATCH 27/34] Add footer to Modal --- components/app/Calendar.vue | 10 +--------- components/app/Modal.vue | 11 +++++++++++ 2 files changed, 12 insertions(+), 9 deletions(-) diff --git a/components/app/Calendar.vue b/components/app/Calendar.vue index 8d37f51f..50746620 100644 --- a/components/app/Calendar.vue +++ b/components/app/Calendar.vue @@ -130,15 +130,7 @@ const onEventClick = (event: any, e: any) => {
  • Event ends at: {{ selectedEvent.end.formatTime() }} MT
  • - -
    - + From 370e30d030558009556e9f5d68a1be13c1640b2b Mon Sep 17 00:00:00 2001 From: Keifer Erikson Date: Tue, 28 May 2024 15:23:18 -0600 Subject: [PATCH 28/34] Change Modal to use v-model --- components/app/Calendar.vue | 4 +--- components/app/Modal.vue | 15 +++++++++------ 2 files changed, 10 insertions(+), 9 deletions(-) diff --git a/components/app/Calendar.vue b/components/app/Calendar.vue index 50746620..8d0a9152 100644 --- a/components/app/Calendar.vue +++ b/components/app/Calendar.vue @@ -96,8 +96,7 @@ const onEventClick = (event: any, e: any) => {

    @@ -130,7 +129,6 @@ const onEventClick = (event: any, e: any) => {
  • Event ends at: {{ selectedEvent.end.formatTime() }} MT
  • -