Skip to content

Wrong recurrence handling #196

Closed
Closed
@pikim

Description

@pikim
  • PHP Version: 7.2.10
  • PHP Default timezone: UTC
    • PHP date.timezone: no value
  • ICS Parser Version: 2.1.7
  • Linux

Description of the Issue:

When I load the attached file, ics-parser gives me 6 events:

  • dtstart: "20191105T190000"
    "rrule": "FREQ=DAILY;UNTIL=20191111T180000Z"
  • dtstart: "20191106T190000"
    "rrule": "FREQ=DAILY;UNTIL=20191111T180000Z"
  • dtstart: "20191107T190000"
    "rrule": "FREQ=DAILY;UNTIL=20191111T180000Z"
  • dtstart: "20191108T190000"
    "rrule": "FREQ=DAILY;UNTIL=20191111T180000Z"
  • dtstart: "20191109T170000"
    "recurrence_id": "20191109T190000"
  • dtstart: "20191110T180000"
    "recurrence_id": "20191110T190000"

When I parse this I get the event 2 times on the 6th, 3 times on the 7th, 4 times on the 8th and so on.

Steps to Reproduce:

Rename test.txt to *.ics and load it with:

$ical_file = "path/to/file";
$ical = new ICal(
    $ical_file,
    array(
        'defaultSpan'                 => 2,     // Default value
        'defaultTimeZone'             => 'UTC',
        'defaultWeekStart'            => 'MO',  // Default value
        'disableCharacterReplacement' => false, // Default value
        'filterDaysAfter'             => null,  // Default value
        'filterDaysBefore'            => null,  // Default value
        'replaceWindowsTimeZoneIds'   => false, // Default value
        'skipRecurrence'              => false, // Default value
        'useTimeZoneWithRRules'       => false, // Default value
    )
);
$events = $ical->sortEventsWithOrder($ical->events());

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions