diff options
Diffstat (limited to 'addressbook/backend/ebook')
-rw-r--r-- | addressbook/backend/ebook/e-card-simple.c | 1 | ||||
-rw-r--r-- | addressbook/backend/ebook/e-card-simple.h | 1 | ||||
-rw-r--r-- | addressbook/backend/ebook/e-card.c | 24 | ||||
-rw-r--r-- | addressbook/backend/ebook/e-card.h | 1 |
4 files changed, 27 insertions, 0 deletions
diff --git a/addressbook/backend/ebook/e-card-simple.c b/addressbook/backend/ebook/e-card-simple.c index 6f13356428..4cd558e5e2 100644 --- a/addressbook/backend/ebook/e-card-simple.c +++ b/addressbook/backend/ebook/e-card-simple.c @@ -94,6 +94,7 @@ static ECardSimpleFieldData field_data[] = { E_CARD_SIMPLE_FIELD_NICKNAME, "nickname", N_("Nickname"), N_("Nick"), 0, E_CARD_SIMPLE_INTERNAL_TYPE_STRING }, { E_CARD_SIMPLE_FIELD_SPOUSE, "spouse", N_("Spouse"), N_("Spouse"), 0, E_CARD_SIMPLE_INTERNAL_TYPE_STRING }, { E_CARD_SIMPLE_FIELD_NOTE, "note", N_("Note"), N_("Note"), 0, E_CARD_SIMPLE_INTERNAL_TYPE_STRING }, + { E_CARD_SIMPLE_FIELD_CALURI, "caluri", N_("Calendar URI"), N_("CALUri"), 0, E_CARD_SIMPLE_INTERNAL_TYPE_STRING }, { E_CARD_SIMPLE_FIELD_FBURL, "fburl", N_("Free-busy URL"), N_("FBUrl"), 0, E_CARD_SIMPLE_INTERNAL_TYPE_STRING }, { E_CARD_SIMPLE_FIELD_ANNIVERSARY, "anniversary", N_("Anniversary"), N_("Anniv"), 0, E_CARD_SIMPLE_INTERNAL_TYPE_DATE }, { E_CARD_SIMPLE_FIELD_BIRTH_DATE, "birth_date", N_("Birth Date"), "", 0, E_CARD_SIMPLE_INTERNAL_TYPE_DATE }, diff --git a/addressbook/backend/ebook/e-card-simple.h b/addressbook/backend/ebook/e-card-simple.h index 675695a7ea..1af3ecb606 100644 --- a/addressbook/backend/ebook/e-card-simple.h +++ b/addressbook/backend/ebook/e-card-simple.h @@ -115,6 +115,7 @@ enum _ECardSimpleField { E_CARD_SIMPLE_FIELD_NICKNAME, E_CARD_SIMPLE_FIELD_SPOUSE, E_CARD_SIMPLE_FIELD_NOTE, + E_CARD_SIMPLE_FIELD_CALURI, E_CARD_SIMPLE_FIELD_FBURL, E_CARD_SIMPLE_FIELD_LAST_SIMPLE_STRING = E_CARD_SIMPLE_FIELD_FBURL, E_CARD_SIMPLE_FIELD_ANNIVERSARY, diff --git a/addressbook/backend/ebook/e-card.c b/addressbook/backend/ebook/e-card.c index 59077ec035..835cc8195a 100644 --- a/addressbook/backend/ebook/e-card.c +++ b/addressbook/backend/ebook/e-card.c @@ -65,6 +65,7 @@ enum { ARG_SPOUSE, ARG_ANNIVERSARY, ARG_MAILER, + ARG_CALURI, ARG_FBURL, ARG_NOTE, ARG_RELATED_CONTACTS, @@ -115,6 +116,7 @@ static void parse_nickname(ECard *card, VObject *object, char *default_charset); static void parse_spouse(ECard *card, VObject *object, char *default_charset); static void parse_anniversary(ECard *card, VObject *object, char *default_charset); static void parse_mailer(ECard *card, VObject *object, char *default_charset); +static void parse_caluri(ECard *card, VObject *object, char *default_charset); static void parse_fburl(ECard *card, VObject *object, char *default_charset); static void parse_note(ECard *card, VObject *object, char *default_charset); static void parse_related_contacts(ECard *card, VObject *object, char *default_charset); @@ -158,6 +160,7 @@ struct { { "X-EVOLUTION-SPOUSE", parse_spouse }, { "X-EVOLUTION-ANNIVERSARY", parse_anniversary }, { VCMailerProp, parse_mailer }, + { "CALURI", parse_caluri }, { "FBURL", parse_fburl }, { VCNoteProp, parse_note }, { XEV_RELATED_CONTACTS, parse_related_contacts }, @@ -550,6 +553,9 @@ e_card_get_vobject (ECard *card, gboolean assumeUTF8) ADD_PROP_VALUE(vobj, VCMailerProp, card->mailer); } + if (card->caluri) + addPropValue(vobj, "CALURI", card->caluri); + if (card->fburl) ADD_PROP_VALUE(vobj, "FBURL", card->fburl); @@ -978,6 +984,13 @@ parse_mailer(ECard *card, VObject *vobj, char *default_charset) } static void +parse_caluri(ECard *card, VObject *vobj, char *default_charset) +{ + g_free(card->caluri); + assign_string(vobj, default_charset, &(card->caluri)); +} + +static void parse_fburl(ECard *card, VObject *vobj, char *default_charset) { g_free(card->fburl); @@ -1284,6 +1297,8 @@ e_card_class_init (ECardClass *klass) GTK_TYPE_POINTER, GTK_ARG_READWRITE, ARG_ANNIVERSARY); gtk_object_add_arg_type ("ECard::mailer", GTK_TYPE_STRING, GTK_ARG_READWRITE, ARG_MAILER); + gtk_object_add_arg_type ("ECard::caluri", + GTK_TYPE_STRING, GTK_ARG_READWRITE, ARG_CALURI); gtk_object_add_arg_type ("ECard::fburl", GTK_TYPE_STRING, GTK_ARG_READWRITE, ARG_FBURL); gtk_object_add_arg_type ("ECard::note", @@ -1888,6 +1903,7 @@ e_card_destroy (GtkObject *object) g_free(card->nickname); g_free(card->spouse); g_free(card->anniversary); + g_free(card->caluri); g_free(card->fburl); g_free(card->note); g_free(card->related_contacts); @@ -2028,6 +2044,10 @@ e_card_set_arg (GtkObject *object, GtkArg *arg, guint arg_id) g_free(card->mailer); card->mailer = g_strdup(GTK_VALUE_STRING(*arg)); break; + case ARG_CALURI: + g_free(card->caluri); + card->caluri = g_strdup(GTK_VALUE_STRING(*arg)); + break; case ARG_FBURL: g_free(card->fburl); card->fburl = g_strdup(GTK_VALUE_STRING(*arg)); @@ -2190,6 +2210,9 @@ e_card_get_arg (GtkObject *object, GtkArg *arg, guint arg_id) case ARG_MAILER: GTK_VALUE_STRING(*arg) = card->mailer; break; + case ARG_CALURI: + GTK_VALUE_STRING(*arg) = card->caluri; + break; case ARG_FBURL: GTK_VALUE_STRING(*arg) = card->fburl; break; @@ -2264,6 +2287,7 @@ e_card_init (ECard *card) card->spouse = NULL; card->anniversary = NULL; card->mailer = NULL; + card->caluri = NULL; card->fburl = NULL; card->note = NULL; card->related_contacts = NULL; diff --git a/addressbook/backend/ebook/e-card.h b/addressbook/backend/ebook/e-card.h index c9ac994a0d..f1e35ce0a8 100644 --- a/addressbook/backend/ebook/e-card.h +++ b/addressbook/backend/ebook/e-card.h @@ -67,6 +67,7 @@ struct _ECard { char *mailer; /* Mailer */ + char *caluri; /* Calendar URI */ char *fburl; /* Free Busy URL */ gint timezone; /* number of minutes from UTC as an int */ |