summaryrefslogtreecommitdiffstats
path: root/apps/dav
diff options
context:
space:
mode:
authorSven Strickroth <email@cs-ware.de>2020-11-13 15:57:12 +0100
committerSven Strickroth <email@cs-ware.de>2020-11-13 15:57:12 +0100
commite526e76314e3ad666d4e8a1e4abb8910dfa1b666 (patch)
tree71f1851fbc97c98743ed4f90bd53889ecfc724fb /apps/dav
parentfd76bf18eabc57812311d19fe224d967537ada38 (diff)
downloadnextcloud-server-e526e76314e3ad666d4e8a1e4abb8910dfa1b666.tar.gz
nextcloud-server-e526e76314e3ad666d4e8a1e4abb8910dfa1b666.zip
Use correct year for generated birthdays events
'X-APPLE-OMIT-YEAR' is not always present, at least iOS 12.4 uses the hard coded date of 1604 (the start of the gregorian calendar) when the year is unknown. cf. https://forums.bitfire.at/topic/2050/bday-without-year-for-vcard-3-0-if-server-drops-property-x-apple-omit-year and https://gitlab.com/CardBook/CardBook/-/issues/586 Signed-off-by: Sven Strickroth <email@cs-ware.de>
Diffstat (limited to 'apps/dav')
-rw-r--r--apps/dav/lib/CalDAV/BirthdayService.php7
1 files changed, 6 insertions, 1 deletions
diff --git a/apps/dav/lib/CalDAV/BirthdayService.php b/apps/dav/lib/CalDAV/BirthdayService.php
index 39e8d6c3940..325962dd738 100644
--- a/apps/dav/lib/CalDAV/BirthdayService.php
+++ b/apps/dav/lib/CalDAV/BirthdayService.php
@@ -235,7 +235,12 @@ class BirthdayService {
}
} else {
$originalYear = (int)$dateParts['year'];
-
+ // 'X-APPLE-OMIT-YEAR' is not always present, at least iOS 12.4 uses the hard coded date of 1604 (the start of the gregorian calendar) when the year is unknown
+ if ($originalYear == 1604) {
+ $originalYear = null;
+ $unknownYear = true;
+ $birthday = '1970-' . $dateParts['month'] . '-' . $dateParts['date'];
+ }
if ($originalYear < 1970) {
$birthday = '1970-' . $dateParts['month'] . '-' . $dateParts['date'];
}