Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

contact birthdays with no year given are shown with (*1604) in calendar #3084

Closed
vxq9e7bx opened this issue Jan 16, 2017 · 5 comments
Closed

Comments

@vxq9e7bx
Copy link

Steps to reproduce

  1. add contact "Contact Name" in iOS contacts app, give birthday as today without year
  2. open calendar app in webUI
  3. see (*1604) as year of birth in new entry for today

Expected behaviour

"Contact Name (*)" is displayed (or something similar)

Actual behaviour

"Contact Name (*1604)" is displayed

Server Configuration

Nextcloud version: 11.0.1

Client configuration

CardDAV-clients: iOS 10.2 Contacts app

@schiessle
Copy link
Member

Seems that 1604 was chosen because of Apple by upstream (SabreDAV):

               // In vCard 4, the birth year may be optional. This is not the
                // case for vCard 3. Apple has a workaround for this that
                // allows applications that support Apple's extension still
                // omit birthyears in vCard 3, but applications that do not
                // support this, will just use a random birthyear. We're
                // choosing 1604 for the birthyear, because that's what apple
                // uses.

see: https://github.com/nextcloud/3rdparty/blob/ae67e91bac6e959fb9666b997c02fb45e63aadf8/sabre/vobject/lib/VCardConverter.php#L114

Not sure if it would be possible to move to VCardv4 without breaking other apps.

Does someone knows more?

@schiessle
Copy link
Member

schiessle commented Jan 16, 2017

After a quick look I couldn't find any code in Nextcloud where we define the VCard format. Looks like this is defined by the client.

see also: http://sabre.io/dav/building-a-carddav-client/

@georgehrke
Copy link
Member

Not sure if it would be possible to move to VCardv4 without breaking other apps.
Does someone knows more?

The contacts app is using VCARD 3.0 at the moment. I'm not sure if it can parse VCARD 4.0 yet.

@ggeorgg
Copy link

ggeorgg commented Oct 1, 2018

I created a contact on my Samsung Galaxy A3 with the normal contacts app and synced it with the latest Davdroid.

This is the VCARD when I export the contacts on my phone.

BEGIN:VCARD
VERSION:2.1
N:LASTNAME;NAME;;;
FN:NAME LASTNAME
TEL;CELL:+XXXXXXXXX
BDAY:--09-30
END:VCARD

The interessting thing is, that the Samsung calender itself does not display the birthay from the nextcloud birthday calendar.
The birthday calender in the web ui displays the birthay as "NAME LASTNAME *". This is how the corresponding export from the web ui calendar looks like:

BEGIN:VCALENDAR
VERSION:2.0
CALSCALE:GREGORIAN
PRODID:-//SabreDAV//SabreDAV//EN
X-WR-CALNAME:Geburtstage von Kontakten
X-APPLE-CALENDAR-COLOR:#FFFFCA
BEGIN:VEVENT
DTSTAMP:20180930T103636Z
DTSTART;VALUE=DATE:19000930
DTEND;VALUE=DATE:19001001
UID:e2c6623f-3078-49e8-ab2c-cb9a9c79f65f
RRULE:FREQ=YEARLY
SUMMARY:NAME LASTNAME*
TRANSP:TRANSPARENT
BEGIN:VALARM
TRIGGER;VALUE=DURATION:-PT0M
ACTION:DISPLAY
DESCRIPTION:NAME LASTNAME*
END:VALARM
END:VEVENT
END:VCALENDAR

Thunderbird also displays the entry like nextcloud does in the web ui.

For me everthing is working as expected (except of the samsung calendar 👎 ).

Edit:
Just saw this one here .

@nextcloud-bot nextcloud-bot removed the stale Ticket or PR with no recent activity label Oct 1, 2018
@georgehrke
Copy link
Member

Was fixed with #11832

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

6 participants