Handle All-Day event and RRULE with Recurring Dates Field module

Created on 15 August 2023, over 1 year ago
Updated 21 August 2023, over 1 year ago

It looks like the community already starting to create addDateRecurEvent(), however it isn't finished.
I am proposing to add the handle for All-Day event and RRULE with Recurring Dates Field module.

πŸ› Bug report
Status

Needs work

Version

1.0

Component

Code

Created by

πŸ‡ΊπŸ‡¦Ukraine ruslan piskarov Kyiv, Ukraine

Live updates comments and jobs are added and updated live.
Sign in to follow issues

Comments & Activities

  • Issue created by @ruslan piskarov
  • @ruslan-piskarov opened merge request.
  • Status changed to Needs review over 1 year ago
  • πŸ‡ΊπŸ‡¦Ukraine ruslan piskarov Kyiv, Ukraine
  • πŸ‡ΊπŸ‡¦Ukraine ruslan piskarov Kyiv, Ukraine

    After my fix the following settings work:

  • Status changed to Needs work over 1 year ago
  • πŸ‡ΊπŸ‡ΈUnited States bburg Washington D.C.

    In my own test of this patch, I set up a content type with a Recurring Dates Field β†’ module, with the "All Day" field setting enabled. I then added an event with the event start and end time set to August 31st. I am in the America/New_York timezone. Here is the ical that was generated:

    BEGIN:VCALENDAR
    VERSION:2.0
    PRODID:-//Drupal iCal API//EN
    X-WR-TIMEZONE:America/New_York
    BEGIN:VTIMEZONE
    TZID:America/New_York
    X-LIC-LOCATION:America/New_York
    BEGIN:DAYLIGHT
    TZNAME:EDT
    TZOFFSETFROM:-0500
    TZOFFSETTO:-0400
    DTSTART:20230312T070000
    END:DAYLIGHT
    BEGIN:STANDARD
    TZNAME:EST
    TZOFFSETFROM:-0400
    TZOFFSETTO:-0500
    DTSTART:20221106T060000
    END:STANDARD
    END:VTIMEZONE
    BEGIN:VEVENT
    UID:An all day event
    DTSTART;TZID=America/New_York:20230831T000000
    SEQUENCE:0
    TRANSP:TRANSPARENT
    DTEND;TZID=America/New_York:20230831T235959
    SUMMARY: An all day event
    CLASS:PUBLIC
    DESCRIPTION: An all day event
    DTSTAMP:20230821T192200Z
    END:VEVENT
    END:VCALENDAR

    From my understanding of the way these work, all day events are determined to be as such by omitting the hour::minute::second granularity. However, this adds an event whose start and end times are from 00:00 to 23:59. This is represented as a continuous appointment that in Google calendar is displayed vertically along the day, rather than above the day horizontally, how all day events are typically displayed. Perhaps we should omit the spot where these times are defined in the patch?

Production build 0.71.5 2024