After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 733518 - Make VOICE type optional for TEL in EContact
Make VOICE type optional for TEL in EContact
Status: RESOLVED FIXED
Product: evolution
Classification: Applications
Component: Contacts
3.12.x (obsolete)
Other Linux
: Normal normal
: ---
Assigned To: evolution-addressbook-maintainers
Evolution QA team
Depends on:
Blocks:
 
 
Reported: 2014-07-21 19:20 UTC by Adam Williamson
Modified: 2014-11-21 10:16 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
screenshot illustrating the issue (139.89 KB, image/png)
2014-07-21 19:20 UTC, Adam Williamson
Details

Description Adam Williamson 2014-07-21 19:20:02 UTC
Created attachment 281335 [details]
screenshot illustrating the issue

So, I have an OwnCloud server which I sync Evolution (3.12.4, Fedora 21) with using CalDAV. I have a lot of contacts on the server with phone numbers of this form (looking in the OwnCloud database):

TEL;TYPE=WORK:+1 604-280-7355

Now if I actually *open* the contact - double-click on it - I see that phone number listed as "Business Phone".

But if I set the contacts View to 'list view', and add a 'Business Phone' column to the list, that phone number doesn't show up in the column. It also doesn't show up in the 'preview' of the contact that shows up at the bottom of the list view when the contact is selected.

See attached screenshot - note the same contact is selected in the UI and opened in a window, you can see the 'Business Phone' number in the contact window, but not in the main Evo UI, either in the table or in the 'preview pane' at the bottom.
Comment 1 Adam Williamson 2014-07-26 05:45:16 UTC
So I think I have at least a lead on this. Looking at eab_phone_types[] in addressbook/util/eab-book-util.c , it looks like it expects to see business phone numbers that look like this:

TEL;TYPE=WORK,VOICE:+1 604-280-7355

note the lack of the ,VOICE bit in mine. So I'm guessing the number isn't considered to be an E_CONTACT_PHONE_BUSINESS, which is what the contact list and minicard are looking for to display.

If I'm reading the spec right, https://tools.ietf.org/html/rfc2426#section-3.3.1 , there's a whole bunch of 'type' values and no requirements as to how many or which should be specified, so there's nothing actually *invalid* about the form from my example. I'd suggest that it'd make sense to consider 'TYPE=WORK' with no other hints as a business voice number, and TYPE=HOME with no other hints as a home voice number; the spec kind of implies that you assume 'voice' unless otherwise specified, for phone numbers.
Comment 2 Milan Crha 2014-11-21 10:16:40 UTC
Thanks for a bug report. It makes sense to make the change and make the VOICE for TEL attributes optional on an EContact. The evolution adds there the VOICE type on a contact editing, the same as during import, but as this is for interoperability, then there are not many options for it. The change touches both evolution-data-server and evolution itself on master, though not on stable:

Created commit a5333fd in eds master (3.13.8+) [1]
Created commit a4f32cb in evo master (3.13.8+) [2]

Created commit aa7eb97 in eds evolution-data-server-3-12 (3.12.9+)

[1] https://git.gnome.org/browse/evolution-data-server/commit/?id=a5333fd
[2] https://git.gnome.org/browse/evolution/commit/?id=a4f32cb