aboutsummaryrefslogtreecommitdiffstats
path: root/addressbook/backend/ebook
diff options
context:
space:
mode:
authorJP Rosevear <jpr@ximian.com>2003-03-05 06:00:57 +0800
committerJP Rosevear <jpr@src.gnome.org>2003-03-05 06:00:57 +0800
commitc1e2563e393921af0dea2d29eeb13d58e1bcd91b (patch)
treecb97e52d92dffc93570bc244a9f8da769129c113 /addressbook/backend/ebook
parent3703e58fa89f7644f50426288c4fc8f9325773ce (diff)
downloadgsoc2013-evolution-c1e2563e393921af0dea2d29eeb13d58e1bcd91b.tar.gz
gsoc2013-evolution-c1e2563e393921af0dea2d29eeb13d58e1bcd91b.tar.zst
gsoc2013-evolution-c1e2563e393921af0dea2d29eeb13d58e1bcd91b.zip
reflect prior column addition
2003-03-04 JP Rosevear <jpr@ximian.com> * gui/component/select-names/e-select-names.etspec: reflect prior column addition * gui/component/select-names/e-select-names-bonobo.c (entry_get_property_fn): set the arg properly * gui/component/select-names/Evolution-Addressbook-SelectNames.idl: add Icscalendar to field list * backend/pas/pas-backend-ldap.c: add icscalendar to prop list * backend/ebook/e-card.h: add icscalendar data member * backend/ebook/e-card.c: add icscalendar to list and its parse routine (e_card_get_vobject): add icscalendar prop value (parse_icscalendar): parse routine (e_card_class_init): add icscalendar arg (e_card_destroy): destroy icscalendar member (e_card_set_arg): set icscalendar (e_card_init): init icscalendar (e_card_get_arg): return icscalendar * backend/ebook/e-card-simple.c (field_data): add icscalendar * backend/ebook/e-card-simple.h: ditto svn path=/trunk/; revision=20153
Diffstat (limited to 'addressbook/backend/ebook')
-rw-r--r--addressbook/backend/ebook/e-card-simple.c1
-rw-r--r--addressbook/backend/ebook/e-card-simple.h5
-rw-r--r--addressbook/backend/ebook/e-card.c29
-rw-r--r--addressbook/backend/ebook/e-card.h1
4 files changed, 34 insertions, 2 deletions
diff --git a/addressbook/backend/ebook/e-card-simple.c b/addressbook/backend/ebook/e-card-simple.c
index 6b1f057c22..0acc304840 100644
--- a/addressbook/backend/ebook/e-card-simple.c
+++ b/addressbook/backend/ebook/e-card-simple.c
@@ -97,6 +97,7 @@ static ECardSimpleFieldData field_data[] =
{ 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_ICSCALENDAR, "icscalendar", N_("Default server calendar"), N_("icsCalendar"), 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 },
{ E_CARD_SIMPLE_FIELD_MAILER, "mailer", "", "", 0, E_CARD_SIMPLE_INTERNAL_TYPE_STRING },
diff --git a/addressbook/backend/ebook/e-card-simple.h b/addressbook/backend/ebook/e-card-simple.h
index 9e77a43ae1..868d4e1573 100644
--- a/addressbook/backend/ebook/e-card-simple.h
+++ b/addressbook/backend/ebook/e-card-simple.h
@@ -118,8 +118,9 @@ enum _ECardSimpleField {
E_CARD_SIMPLE_FIELD_NOTE,
E_CARD_SIMPLE_FIELD_CALURI,
E_CARD_SIMPLE_FIELD_FBURL,
- /* If you add after FBURL, make sure to move LAST_SIMPLE_STRING */
- E_CARD_SIMPLE_FIELD_LAST_SIMPLE_STRING = E_CARD_SIMPLE_FIELD_FBURL,
+ E_CARD_SIMPLE_FIELD_ICSCALENDAR,
+ /* If you add after icscalendar, make sure to move LAST_SIMPLE_STRING */
+ E_CARD_SIMPLE_FIELD_LAST_SIMPLE_STRING = E_CARD_SIMPLE_FIELD_ICSCALENDAR,
E_CARD_SIMPLE_FIELD_ANNIVERSARY,
E_CARD_SIMPLE_FIELD_BIRTH_DATE,
E_CARD_SIMPLE_FIELD_MAILER,
diff --git a/addressbook/backend/ebook/e-card.c b/addressbook/backend/ebook/e-card.c
index ec38219a2e..3a3f30e483 100644
--- a/addressbook/backend/ebook/e-card.c
+++ b/addressbook/backend/ebook/e-card.c
@@ -65,6 +65,7 @@ enum {
PROP_MAILER,
PROP_CALURI,
PROP_FBURL,
+ PROP_ICSCALENDAR,
PROP_NOTE,
PROP_RELATED_CONTACTS,
PROP_CATEGORIES,
@@ -114,6 +115,7 @@ static void parse_anniversary(ECard *card, VObject *object, char *default_charse
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_icscalendar(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);
static void parse_categories(ECard *card, VObject *object, char *default_charset);
@@ -158,6 +160,7 @@ struct {
{ VCMailerProp, parse_mailer },
{ "CALURI", parse_caluri },
{ "FBURL", parse_fburl },
+ { "ICSCALENDAR", parse_icscalendar },
{ VCNoteProp, parse_note },
{ XEV_RELATED_CONTACTS, parse_related_contacts },
{ "CATEGORIES", parse_categories },
@@ -653,6 +656,9 @@ e_card_get_vobject (const ECard *card, gboolean assumeUTF8)
if (card->fburl)
ADD_PROP_VALUE(vobj, "FBURL", card->fburl);
+
+ if (card->icscalendar)
+ ADD_PROP_VALUE(vobj, "ICSCALENDAR", card->icscalendar);
if (card->note) {
VObject *noteprop;
@@ -1027,6 +1033,13 @@ parse_fburl(ECard *card, VObject *vobj, char *default_charset)
}
static void
+parse_icscalendar(ECard *card, VObject *vobj, char *default_charset)
+{
+ g_free(card->icscalendar);
+ assign_string(vobj, default_charset, &(card->icscalendar));
+}
+
+static void
parse_note(ECard *card, VObject *vobj, char *default_charset)
{
g_free(card->note);
@@ -1443,6 +1456,13 @@ e_card_class_init (ECardClass *klass)
NULL,
G_PARAM_READWRITE));
+ g_object_class_install_property (object_class, PROP_ICSCALENDAR,
+ g_param_spec_string ("icscalendar",
+ _("ICS Calendar"),
+ /*_( */"XXX blurb" /*)*/,
+ NULL,
+ G_PARAM_READWRITE));
+
g_object_class_install_property (object_class, PROP_NOTE,
g_param_spec_string ("note",
_("Note"),
@@ -2032,6 +2052,7 @@ e_card_dispose (GObject *object)
FREE_IF(card->anniversary);
FREE_IF(card->caluri);
FREE_IF(card->fburl);
+ FREE_IF(card->icscalendar);
FREE_IF(card->note);
FREE_IF(card->related_contacts);
@@ -2180,6 +2201,10 @@ e_card_set_property (GObject *object,
g_free(card->fburl);
card->fburl = g_strdup(g_value_get_string(value));
break;
+ case PROP_ICSCALENDAR:
+ g_free(card->icscalendar);
+ card->icscalendar = g_strdup(g_value_get_string(value));
+ break;
case PROP_NOTE:
g_free (card->note);
card->note = g_strdup(g_value_get_string(value));
@@ -2350,6 +2375,9 @@ e_card_get_property (GObject *object,
case PROP_FBURL:
g_value_set_string (value, card->fburl);
break;
+ case PROP_ICSCALENDAR:
+ g_value_set_string (value, card->icscalendar);
+ break;
case PROP_NOTE:
g_value_set_string (value, card->note);
break;
@@ -2422,6 +2450,7 @@ e_card_init (ECard *card)
card->mailer = NULL;
card->caluri = NULL;
card->fburl = NULL;
+ card->icscalendar = NULL;
card->note = NULL;
card->related_contacts = NULL;
card->categories = NULL;
diff --git a/addressbook/backend/ebook/e-card.h b/addressbook/backend/ebook/e-card.h
index e863f792fd..d82d5f4cb6 100644
--- a/addressbook/backend/ebook/e-card.h
+++ b/addressbook/backend/ebook/e-card.h
@@ -70,6 +70,7 @@ struct _ECard {
char *caluri; /* Calendar URI */
char *fburl; /* Free Busy URL */
+ char *icscalendar; /* Default server calendar */
gint timezone; /* number of minutes from UTC as an int */