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

Do not auto generate Display Name (FN) field and allow editing/external updates #129

Open
6 of 7 tasks
asandikci opened this issue May 30, 2024 · 5 comments
Open
6 of 7 tasks
Labels
feature request Issue is about a new feature in the app needs triage Issue is not yet ready for PR authors to take up

Comments

@asandikci
Copy link
Contributor

Checklist

  • I made sure that there are no existing issues - open or closed - to which I could contribute my information.
  • I made sure that there are no existing discussions - open or closed - to which I could contribute my information.
  • I have read the FAQs inside the app (Menu -> About -> FAQs) and my problem isn't listed.
  • I have taken the time to fill in all the required details. I understand that the bug report will be dismissed otherwise.
  • This issue contains only one feature request.
  • I have read and understood the contribution guidelines.
  • I optionally donated to support the Fossify mission.

Feature description

Make "Display Name" (FN) field editable and do not auto update from other fields.

Why do you want this feature?

As far as I can understand contacts app auto generates Display Name (FN) field from First Name/Middle Name/Last Name... sections. But I believe generating only once if contact are creating from this app is enough. Users should be able to directly change this field.

This supports users to easily organize their contacts I guess.

Additional information

Note: This is also required for Full Nextcloud/Vcard v4 Integration. See #85
Note2: Otherwise updating Display Name field from any DAV server (for example Nextcloud + Davx5) are not going to work because app still updates it from other fields.


Add a 👍 reaction to issues you find important.

@asandikci asandikci added feature request Issue is about a new feature in the app needs triage Issue is not yet ready for PR authors to take up labels May 30, 2024
@RokeJulianLockhart
Copy link

#129 (comment)

@asandikci, if this is implemented, I would like to be able to choose to retain the current behaviour. Were it not doing this, I would have filed an FR to have the FN automatically update from the N field. However, should nextcloud/contacts#3983 (comment) be implemented, it would be reasonable to expect that this conversation would become necessary.

@DiagonalArg
Copy link

DiagonalArg commented Nov 29, 2024

I'm copying from my issue here regarding some incompatibility with names and sorting in Google Contacts, Stock Android, Apple, and Nextcloud. Basically, the de-facto standard right now is that sorting is done on FN: (first name) unless a switch is toggled to sort on N: (last name). FN: and N: are linked together, one generated from the other, and the form used for names has a number of fields, for which you can see both Google's and Nextcloud's, below. When neither FN: nor N: are present, it seems that ORG is used as the sorting key.

This generates some issues, since we may want to sort in some way other than First or Last name or Organization. Nextcloud's solution to this is to break the FN: / N: link, and allow FN: to be filled out independently. That becomes the sort key, and is no longer necessarily the first name. You can see Nextcloud's forms, below. Google has a different solution. They introduce an X-FILE-AS: ("File-As") field (see below). I've also included the most general Google and Nextcloud v-card that I can generate, below.

@RokeJulianLockhart wants to be able to keep the current behavior (FN: and N: linked). I believe that should be the case also, given it's the de-facto standard and that it's directly related to sorting on first name vs. surname.

The following is parenthetical, as I'm unable to see a way to keep compatibility with both formats. I don't necessarily suggest it, but for sorting, this might work:

If X-FILE-AS is present, assume that's the sort field.
Otherwise:
a. sort by FN: (first name - which is the default now where "Start Name by Surname" is off),
b. sort by N: (last name) if "Start Name with Surname" on.

And then, for creation and then exporting, the only way I could see would be to have an export-to-nextcould switch that would copy "File-As" into FN:

Google's Form:

image
BEGIN:VCARD
VERSION:3.0
FN:Prefix AAAAAFirst Middle BBBBBLast Suffix
N:BBBBBLast;AAAAAFirst;Middle;Prefix;Suffix
NICKNAME:Nick
X-PHONETIC-FIRST-NAME:PFirst
X-PHONETIC-MIDDLE-NAME:PMiddle
X-PHONETIC-LAST-NAME:PLast
X-FILE-AS:File-As
item1.EMAIL;TYPE=INTERNET:[email protected]
item1.X-ABLabel:eMail.Label
TEL;TYPE=HOME:555-1212
TEL;TYPE=HOME;TYPE=FAX:555-1212
item2.TEL:555-1212
item2.X-ABLabel:Phone-Label
ADR;TYPE=HOME:;Suite 666;555 Foo St.;777 City;CA;88888;US;555 Foo St.\nSuit
 e 666\, 777 City\, CA 88888\nUS
item3.ADR:;Suit 6666;5555 Foo St.;7777 City;CA;99999;US;5555 Foo St.\nSuit 
 6666\, 7777 City\, CA 99999\nUS
item3.X-ABLabel:Address-Label
ORG:Org;Dept
TITLE:Title
BDAY:19000101
URL;TYPE=WORK:http\://example.com
item4.URL:http\://example.com
item4.X-ABLabel:_$!<HomePage>!$_
item5.URL:http\://example.com
item5.X-ABLabel:Website-Label
item6.X-ABDATE:19200101
item6.X-ABLabel:_$!<Anniversary>!$_
item7.X-ABDATE:19800101
item7.X-ABLabel:Death-Date
item8.X-ABRELATEDNAMES:Related Person
item8.X-ABLabel:_$!<Spouse>!$_
item9.X-ABRELATEDNAMES:Related Person
item9.X-ABLabel:Related-Label
NOTE:These are notes.\nCustom-Field: foobarbaz
CATEGORIES:myContacts
END:VCARD

Nextcloud's Form:

image

image

BEGIN:VCARD
VERSION:3.0
PRODID:-//Sabre//Sabre VObject 4.5.4//EN
UID:2f7079e3-c9e8-48ef-9452-fda56300677f
FN:First Middle Last
ADR;TYPE=HOME:;Suite 666;555 Foo St.;Bar City;Baz;77777;Bumble
EMAIL;TYPE=HOME:[email protected]
TEL;TYPE=HOME,VOICE:555-1212
CATEGORIES:Auto
TITLE:Title
ORG:Company
BDAY;VALUE=DATE:19000101
URL;VALUE=URI:http://example.com
X-SOCIALPROFILE;TYPE=TWITTER:twitterexample
X-MANAGERSNAME:
ITEM1.X-ABDATE;VALUE=DATE-AND-OR-TIME:19200101
ITEM1.X-ABLABEL:_$!<Anniversary>!$_
NEXTCLOUD1.X-ABLABEL:FederatedCloud
X-ANNIVERSARY;VALUE=DATE:19200101
DEATHDATE;VALUE=DATE:19800101
N:Last;First;Additional;Prefix;Suffix
NEXTCLOUD1.CLOUD;TYPE=OTHER:[email protected]
GENDER:O
IMPP;TYPE=SIGNAL:foo32
GEO;VALUE=URI:geo:90.000\,0.000
NICKNAME:Nickname
X-PHONETIC-FIRST-NAME:PFirst
X-PHONETIC-LAST-NAME:PLast
RELATED;TYPE=RELATIVE:Cousin Last
RELATIONSHIP:FRIEND
LANG:ebu-ke
TZ:Africa/Bissau
REV;VALUE=DATE-AND-OR-TIME:20241129T153519Z
END:VCARD

@fohfuu
Copy link

fohfuu commented Jan 6, 2025

I would like the option to turn on Nicknames. Commenting instead of creating a new issue, as I believe this is the same request.

@Aga-C
Copy link
Member

Aga-C commented Jan 6, 2025

@fohfuu Nicknames are already in the app.

@fohfuu
Copy link

fohfuu commented Jan 9, 2025

@Aga-C The nickname field is in the app, you can add a nickname, but it doesn't change the way the contact is displayed.

e.g., if you add a contact Firstname Lastname with the nickname "Nick", then that contact displays as Firstname Lastname (or Lastname Firstname if you select the "start name with surname" option). The contacts list will show the contact as Firstname Lastname, the call log will show you called Firstname Lastname , and so on.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature request Issue is about a new feature in the app needs triage Issue is not yet ready for PR authors to take up
Projects
None yet
Development

No branches or pull requests

5 participants