etesync / etesync-web

An EteSync web client
https://www.etesync.com
GNU Affero General Public License v3.0
243 stars 30 forks source link

EteSync web interface becomes unresponsive and shows error when trying to show contact that has an anniversary date saved #231

Open tx3eh8IUD1 opened 2 years ago

tx3eh8IUD1 commented 2 years ago

I have a contact that recently synched changes made in iOS the contact details now cannot be shown any more in the EteSync web interface the issue is reproducible

where I navigate: https://pim.etesync.com/pim/contacts -> search -> search for specific contact -> click on the name

error code:

Something went wrong!

e.toJSDate is not a function

value/<@https://pim.etesync.com/static/js/main.2e48f2e6.chunk.js:1:167030
l/</<@https://pim.etesync.com/static/js/main.2e48f2e6.chunk.js:1:166066
l/<@https://pim.etesync.com/static/js/main.2e48f2e6.chunk.js:1:166041
l@https://pim.etesync.com/static/js/main.2e48f2e6.chunk.js:1:165976
value@https://pim.etesync.com/static/js/main.2e48f2e6.chunk.js:1:166942
Pa@https://pim.etesync.com/static/js/2.b050421f.chunk.js:2:1615783
Na@https://pim.etesync.com/static/js/2.b050421f.chunk.js:2:1615576
pA@https://pim.etesync.com/static/js/2.b050421f.chunk.js:2:1651487
cs@https://pim.etesync.com/static/js/2.b050421f.chunk.js:2:1642704
As@https://pim.etesync.com/static/js/2.b050421f.chunk.js:2:1642627
$A@https://pim.etesync.com/static/js/2.b050421f.chunk.js:2:1639636
Ji/<@https://pim.etesync.com/static/js/2.b050421f.chunk.js:2:1591021
t.unstable_runWithPriority@https://pim.etesync.com/static/js/2.b050421f.chunk.js:2:1666602
Ui@https://pim.etesync.com/static/js/2.b050421f.chunk.js:2:1590730
Ji@https://pim.etesync.com/static/js/2.b050421f.chunk.js:2:1590968
zi@https://pim.etesync.com/static/js/2.b050421f.chunk.js:2:1590901
R@https://pim.etesync.com/static/js/2.b050421f.chunk.js:2:1660367
Vt@https://pim.etesync.com/static/js/2.b050421f.chunk.js:2:1568383

after the error occurs, the interface dies as well (cannot go back to main, collections via the menu) only page refresh/F5 brings me back

image

all other contacts work the contact does work in the app interface or regular contacts app both on android and iOS

edited to add: not all contacts work - all that have an anniversary date do not

Okay I think all contacts with an "anniversary date" are currently not working!

output from VCARD (example):

BEGIN:VCARD

PRODID;VALUE=TEXT:-//iCal.js EteSync iOS

VERSION:4.0

UID:FePjI418vdTRLYsSdPn6VnXgFWdbwzqr

REV;VALUE=DATE-TIME:20211109T185745

FN:Test Test

N:Test;Test;;;

ANNIVERSARY:16090125

BDAY:20211109

END:VCARD

tx3eh8IUD1 commented 2 years ago

So I deleted a lot of items in the quite complex contact (anniversary date was set but set in year 16xx for some reason), addresses, title and company and now it works again. Somehwere in there was something that prevented the contact from working. I have the VCARD in case that is of interest.

tx3eh8IUD1 commented 2 years ago

Okay I think all contacts with an "anniversary date" are currently not working!

output from VCARD (example):

BEGIN:VCARD

PRODID;VALUE=TEXT:-//iCal.js EteSync iOS

VERSION:4.0

UID:FePjI418vdTRLYsSdPn6VnXgFWdbwzqr

REV;VALUE=DATE-TIME:20211109T185745

FN:Test Test

N:Test;Test;;;

ANNIVERSARY:16090125

BDAY:20211109

END:VCARD
tx3eh8IUD1 commented 2 years ago

Also, I don't know what issue in iOS (contacts or etesync) sets the date to a funny 1609, but this happened multiple times now. The original date set was in the 2010s

tx3eh8IUD1 commented 2 years ago

A bit more info: the anniversary dates are either created in outlook or android. This is how android exports them:

BEGIN:VCARD VERSION:2.1 X-ANDROID-CUSTOM:vnd.android.cursor.item/contact_event;2009-01-01;1;;;;;;;;;;;;; BDAY:1999-01-01 END:VCARD

iOS seems to struggle with those, setting them to happen in the year 1609, and they crash the etesync web interface...