evolution-data-server r8521 - in trunk/addressbook: . backends/groupwise backends/ldap libebook
- From: mcrha svn gnome org
- To: svn-commits-list gnome org
- Subject: evolution-data-server r8521 - in trunk/addressbook: . backends/groupwise backends/ldap libebook
- Date: Fri, 22 Feb 2008 18:26:56 +0000 (GMT)
Author: mcrha
Date: Fri Feb 22 18:26:56 2008
New Revision: 8521
URL: http://svn.gnome.org/viewvc/evolution-data-server?rev=8521&view=rev
Log:
2008-02-22 Milan Crha <mcrha redhat com>
** Part of fix for bug #514836
* libebook/e-vcard.h:
* libebook/e-destination.c: (e_destination_set_contact),
(e_destination_export_to_vcard_attribute):
Obsoleting EVC_X_DEST_EMAIL and EVC_X_DEST_NAME.
* backends/ldap/e-book-backend-ldap.c: (member_populate):
* backends/groupwise/e-book-backend-groupwise.c:
(populate_contact_members): Obsoleting EVC_X_DEST_EMAIL and
EVC_X_DEST_NAME and one leak fix.
Modified:
trunk/addressbook/ChangeLog
trunk/addressbook/backends/groupwise/e-book-backend-groupwise.c
trunk/addressbook/backends/ldap/e-book-backend-ldap.c
trunk/addressbook/libebook/e-destination.c
trunk/addressbook/libebook/e-vcard.h
Modified: trunk/addressbook/backends/groupwise/e-book-backend-groupwise.c
==============================================================================
--- trunk/addressbook/backends/groupwise/e-book-backend-groupwise.c (original)
+++ trunk/addressbook/backends/groupwise/e-book-backend-groupwise.c Fri Feb 22 18:26:56 2008
@@ -765,14 +765,21 @@
e_vcard_attribute_add_param_with_value (attr,
e_vcard_attribute_param_new (EVC_X_DEST_CONTACT_UID),
member->id);
- e_vcard_attribute_add_param_with_value (attr,
- e_vcard_attribute_param_new (EVC_X_DEST_EMAIL),
- member->email);
- if (member->name)
- e_vcard_attribute_add_param_with_value (attr,
- e_vcard_attribute_param_new (EVC_X_DEST_NAME),
- member->name);
- e_vcard_attribute_add_value (attr, member->email);
+ if (member->name) {
+ int len = strlen (member->name);
+ char *value;
+
+ if (member->name [0] == '\"' && member->name [len - 1] == '\"')
+ value = g_strdup_printf ("%s %s", member->name, member->email);
+ else
+ value = g_strdup_printf ("\"%s\" %s", member->name, member->email);
+
+ e_vcard_attribute_add_value (attr, value);
+ g_free (value);
+ } else {
+ e_vcard_attribute_add_value (attr, member->email);
+ }
+
e_vcard_add_attribute (E_VCARD (contact), attr);
}
}
Modified: trunk/addressbook/backends/ldap/e-book-backend-ldap.c
==============================================================================
--- trunk/addressbook/backends/ldap/e-book-backend-ldap.c (original)
+++ trunk/addressbook/backends/ldap/e-book-backend-ldap.c Fri Feb 22 18:26:56 2008
@@ -2569,12 +2569,25 @@
member_info = g_strsplit (values [i], ";", -1);
attr = e_vcard_attribute_new (NULL, EVC_EMAIL);
- e_vcard_attribute_add_param_with_value (attr, e_vcard_attribute_param_new (EVC_X_DEST_EMAIL), member_info [0]);
e_vcard_attribute_add_param_with_value (attr, e_vcard_attribute_param_new (EVC_X_DEST_CONTACT_UID), member_info [1]);
- if (member_info [2])
- e_vcard_attribute_add_param_with_value (attr, e_vcard_attribute_param_new (EVC_X_DEST_NAME), member_info [2]);
- e_vcard_attribute_add_value (attr, member_info [0]);
+
+ if (member_info [2]) {
+ int len = strlen (member_info [2]);
+ char *value;
+
+ if (member_info [2][0] == '\"' && member_info [2][len - 1] == '\"')
+ value = g_strdup_printf ("%s %s", member_info [2], member_info [0]);
+ else
+ value = g_strdup_printf ("\"%s\" %s", member_info [2], member_info [0]);
+
+ e_vcard_attribute_add_value (attr, value);
+ g_free (value);
+ } else {
+ e_vcard_attribute_add_value (attr, member_info [0]);
+ }
+
e_vcard_add_attribute (E_VCARD (contact), attr);
+ g_strfreev (member_info);
}
}
Modified: trunk/addressbook/libebook/e-destination.c
==============================================================================
--- trunk/addressbook/libebook/e-destination.c (original)
+++ trunk/addressbook/libebook/e-destination.c Fri Feb 22 18:26:56 2008
@@ -404,8 +404,7 @@
GList *p;
EDestination *list_dest = e_destination_new ();
char *contact_uid = NULL;
- char *email_addr = NULL;
- char *name = NULL;
+ char *value;
int email_num = -1;
gboolean html_pref = FALSE;
@@ -423,16 +422,6 @@
email_num = v ? atoi (v->data) : -1;
}
else if (!g_ascii_strcasecmp (param_name,
- EVC_X_DEST_NAME)) {
- GList *v = e_vcard_attribute_param_get_values (param);
- name = v ? v->data : NULL;
- }
- else if (!g_ascii_strcasecmp (param_name,
- EVC_X_DEST_EMAIL)) {
- GList *v = e_vcard_attribute_param_get_values (param);
- email_addr = v ? v->data : NULL;
- }
- else if (!g_ascii_strcasecmp (param_name,
EVC_X_DEST_HTML_MAIL)) {
GList *v = e_vcard_attribute_param_get_values (param);
html_pref = v ? !g_ascii_strcasecmp (v->data, "true") : FALSE;
@@ -440,10 +429,12 @@
}
if (contact_uid) e_destination_set_contact_uid (list_dest, contact_uid, email_num);
- if (name) e_destination_set_name (list_dest, name);
- if (email_addr) e_destination_set_email (list_dest, email_addr);
e_destination_set_html_mail_pref (list_dest, html_pref);
list_dest->priv->ignored = FALSE;
+ value = e_vcard_attribute_get_value (attr);
+ if (value)
+ e_destination_set_raw (list_dest, value);
+ g_free (value);
dest->priv->list_dests = g_list_append (dest->priv->list_dests, list_dest);
}
@@ -1625,14 +1616,6 @@
e_vcard_attribute_param_new (EVC_X_DEST_EMAIL_NUM),
buf);
}
- if (e_destination_get_name (dest))
- e_vcard_attribute_add_param_with_value (attr,
- e_vcard_attribute_param_new (EVC_X_DEST_NAME),
- e_destination_get_name (dest));
- if (e_destination_get_email (dest))
- e_vcard_attribute_add_param_with_value (attr,
- e_vcard_attribute_param_new (EVC_X_DEST_EMAIL),
- e_destination_get_email (dest));
e_vcard_attribute_add_param_with_value (attr,
e_vcard_attribute_param_new (EVC_X_DEST_HTML_MAIL),
e_destination_get_html_mail_pref (dest) ? "TRUE" : "FALSE");
Modified: trunk/addressbook/libebook/e-vcard.h
==============================================================================
--- trunk/addressbook/libebook/e-vcard.h (original)
+++ trunk/addressbook/libebook/e-vcard.h Fri Feb 22 18:26:56 2008
@@ -67,10 +67,12 @@
#define EVC_X_CALLBACK "X-EVOLUTION-CALLBACK"
#define EVC_X_COMPANY "X-EVOLUTION-COMPANY"
#define EVC_X_DEST_CONTACT_UID "X-EVOLUTION-DEST-CONTACT-UID"
+#ifndef EDS_DISABLE_DEPRECATED
#define EVC_X_DEST_EMAIL "X-EVOLUTION-DEST-EMAIL"
+#define EVC_X_DEST_NAME "X-EVOLUTION-DEST-NAME"
+#endif /* EDS_DISABLE_DEPRECATED */
#define EVC_X_DEST_EMAIL_NUM "X-EVOLUTION-DEST-EMAIL-NUM"
#define EVC_X_DEST_HTML_MAIL "X-EVOLUTION-DEST-HTML-MAIL"
-#define EVC_X_DEST_NAME "X-EVOLUTION-DEST-NAME"
#define EVC_X_DEST_SOURCE_UID "X-EVOLUTION-DEST-SOURCE-UID"
#define EVC_X_FILE_AS "X-EVOLUTION-FILE-AS"
#define EVC_X_ICQ "X-ICQ"
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]