I noticed that the davcal table view shows the current time as the end date when an event does not have an DTEND property.
In my case that happened when creating an recurring event in Nextcloud. It seems to be caused by the DateTime constructor in syntax/table.php:261 which gets called with null if $event['end'] is empty.
This patch calculates the end date using the DURATION property.
--- helper.php 2019-04-30 08:34:58.000000000 +0200 +++ helper_new.php 2020-02-10 19:06:52.203240422 +0100 @@ -1109,6 +1109,14 @@ $entry['end'] = $dtEnd->format("Y-m-d"); else $entry['end'] = $dtEnd->format(\DateTime::ATOM); + } else { + if($event->DURATION !== null){ + $interval = $event->DURATION->getDateInterval(); + $datetime_start = new DateTime($start->getValue()); + $dtEnd = $datetime_start->add($interval); + $dtEnd->setTimezone($timezone); + $entry['end'] = $dtEnd->format(\DateTime::ATOM); + } } $description = $event->DESCRIPTION; if($description !== null)