Skip to content

Error when importing an event with no End Date/Time #168

@eiclu

Description

@eiclu

Hi, the tool I am importing from allows creation of events without an end date. When trying to import such an event via wp-event-aggregator, the tool throws a fatal exception.

Example Event where the error occurs:

BEGIN:VCALENDAR
CALSCALE:GREGORIAN
VERSION:2.0
PRODID:-//Elixir ICalendar//Elixir ICalendar//EN
BEGIN:VEVENT
CATEGORIES:Category
DESCRIPTION:Description
DTSTAMP:20241013T164241Z
DTSTART;TZID=Europe/Vienna:20241025T190000
ORGANIZER:Orga
SUMMARY:Test Event
UID:00000000-0000-0000-0000-000000000000
END:VEVENT
END:VCALENDAR

Fixed event without an error:

BEGIN:VCALENDAR
CALSCALE:GREGORIAN
VERSION:2.0
PRODID:-//Elixir ICalendar//Elixir ICalendar//EN
BEGIN:VEVENT
CATEGORIES:Category
DESCRIPTION:Description
DTEND;TZID=Europe/Vienna:20241026T110000
DTSTAMP:20241013T164241Z
DTSTART;TZID=Europe/Vienna:20241025T190000
ORGANIZER:Orga
SUMMARY:Test Event
UID:00000000-0000-0000-0000-000000000000
END:VEVENT
END:VCALENDAR

Trace:

WordPress-Version 6.6.2
Aktives Theme: Astra (Version 4.8.3)
Aktuelles Plugin: WP Event Aggregator (Version 1.8.0)
PHP-Version 8.2.24

Fehler-Details
==============
Ein Fehler vom Typ E_ERROR wurde in der Zeile 268 der Datei /var/www/wordpress/wp-content/plugins/wp-event-aggregator/includes/class-wp-event-aggregator-ical_parser.php verursacht. Fehlermeldung: Uncaught TypeError: end(): Argument #1 ($array) must be of type array, bool given in /var/www/wordpress/wp-content/plugins/wp-event-aggregator/includes/class-wp-event-aggregator-ical_parser.php:268
Stack trace:
#0 /var/www/wordpress/wp-content/plugins/wp-event-aggregator/includes/class-wp-event-aggregator-ical_parser.php(268): end()
#1 /var/www/wordpress/wp-content/plugins/wp-event-aggregator/includes/class-wp-event-aggregator-ical_parser.php(171): WP_Event_Aggregator_Ical_Parser->generate_centralize_event_array()
#2 /var/www/wordpress/wp-content/plugins/wp-event-aggregator/includes/class-wp-event-aggregator-ical.php(92): WP_Event_Aggregator_Ical_Parser->parse_import_events()
#3 /var/www/wordpress/wp-content/plugins/wp-event-aggregator/includes/class-wp-event-aggregator-ical.php(57): WP_Event_Aggregator_Ical->import_events_from_ics_content()
#4 /var/www/wordpress/wp-content/plugins/wp-event-aggregator-pro/includes/class-wp-event-aggregator-cron.php(71): WP_Event_Aggregator_Ical->import_events()
#5 /var/www/wordpress/wp-includes/class-wp-hook.php(324): WP_Event_Aggregator_Pro_Cron->run_scheduled_importer()
#6 /var/www/wordpress/wp-includes/class-wp-hook.php(348): WP_Hook->apply_filters()
#7 /var/www/wordpress/wp-includes/plugin.php(517): WP_Hook->do_action()
#8 /var/www/wordpress/wp-content/plugins/wp-event-aggregator-pro/includes/class-wp-event-aggregator-manage-import.php(242): do_action()
#9 /var/www/wordpress/wp-includes/class-wp-hook.php(324): WP_Event_Aggregator_Pro_Manage_Import->handle_listtable_oprations()
#10 /var/www/wordpress/wp-includes/class-wp-hook.php(348): WP_Hook->apply_filters()
#11 /var/www/wordpress/wp-includes/plugin.php(517): WP_Hook->do_action()
#12 /var/www/wordpress/wp-admin/admin.php(175): do_action()
#13 {main}
  thrown

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions