Open devz3r0 opened 7 years ago
The problem here is not the moving of a contact but rather that we don't validate the N property. The N property is allowed max. once in a vcard. Could you open the database and export that specific contact? It should reside in the %prefix%_cards
table.
I would like to see an example, such that we can see how we can fix the vcard. We can't simply drop one N property since it is user data and could be the wrong one to delete.
Can I somehow anonymize that contact without tampering the problem-part?
Replace names/dates/... with general ones, without removing properties from the vcard. I want to see if we can drop one N property, or if both values need to be preserved/merged/etc.
it looks like that contact got some how destroyed. I can't alter anything. But I can export it normally:
As I see it has double properties:
BEGIN:VCARD VERSION:3.0 TEL;TYPE=CELL,VOICE:+910000 TEL;TYPE=CELL,VOICE:+910001 FN: Name N:; Name;;; N:; Name;;; FN: Name PRODID:-//ownCloud//NONSGML Contacts 0.5.0.0//EN REV:2015-12-25T19:18:26+00:00 UID:41347906-0bf7-4fce-b295-751dc0bdc9d0 END:VCARD
Edit: the 2 telephone numbers are indeed different.
the dump from the DB is just one long string, so if you need that really, I might send it to one directly who handles that with discretion.
Two TEL properties are no problem, but the double FN and N properties are... @skjnldsv Maybe we should let the user decide which N property to keep (a selection of all N properties in the vcard) and/or allow a manual update, otherwise data loss through auto repair can't be avoided
With a dialog?
Something like this (I need a mockup tool >__<):
Edit: We should do this whenever we try to push a vcard (changes to the contact) and FN or N property is multiple times in the vcard Edit Edit: We can also add a text saying, that this isn't necessarily our fault but could have been done through any syncing client or application the user was using.
@devz3r0 I don't think we can hack this together very quickly, so for now please correct the corrupted vcards manually in the database by removing multiple properties 😞 Or you could simply export the broken contact, edit it with an editor of your choice, delete the old contact and reimport the corrected one. (<= safer way) Sorry for the inconveniences.
no problem thats yet as far the only contact I found, which has that issue.
Can confirm this, my contacts have been managed by own/nextcloud since version 5 with multiple DAV-Clients. A lot of contacts have multiple "Detailed Info" sections and cannot be moved to another group or even edited in any way.
Steps to reproduce
as requested from: https://help.nextcloud.com/t/contacts-2-0-1-cant-change-group-on-shared-contacts/21870
Expected behaviour
contact get assigned to group
Actual behaviour
Server configuration
nextcoud 12.0.3 wioth contact 2.0.1
Operating system: ubuntu 16.04 Web server: apache 2.4 Database: mariadb 10 PHP version: 7.0 Nextcloud version: (see Nextcloud admin page) 12.0.3 Contacts version: (see Nextcloud apps page) 2.0.1 Updated from an older Nextcloud or fresh install: updated Signing status: official via appstore