From 9cc6eb8e77e1bbeb9b8f5b02cada3335340b2acf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Erick=20P=C3=A9rez=20Castellanos?= Date: Sun, 18 Nov 2012 17:46:28 -0500 Subject: [PATCH] Added method for setting event end-date. GcalManager::set_event_end_date method added. --- src/gcal-manager.c | 33 +++++++++++++++++++++++++++++++++ src/gcal-manager.h | 5 +++++ 2 files changed, 38 insertions(+) diff --git a/src/gcal-manager.c b/src/gcal-manager.c index 8d333431..3b03a745 100644 --- a/src/gcal-manager.c +++ b/src/gcal-manager.c @@ -1688,6 +1688,39 @@ gcal_manager_set_event_start_date (GcalManager *manager, manager); } +void +gcal_manager_set_event_end_date (GcalManager *manager, + const gchar *source_uid, + const gchar *event_uid, + const icaltimetype *initial_date) +{ + GcalManagerPrivate *priv; + GcalManagerUnit *unit; + ECalComponent *event; + ECalComponentDateTime dt; + icaltimetype *dt_start; + + g_return_if_fail (GCAL_IS_MANAGER (manager)); + priv = manager->priv; + + unit = g_hash_table_lookup (priv->clients, source_uid); + event = g_hash_table_lookup (unit->events, event_uid); + + dt_start = gcal_dup_icaltime (initial_date); + dt.value = dt_start; + dt.tzid = NULL; + e_cal_component_set_dtend (event, &dt); + + e_cal_component_commit_sequence (event); + + e_cal_client_modify_object (unit->client, + e_cal_component_get_icalcomponent (event), + CALOBJ_MOD_ALL, + NULL, + gcal_manager_on_event_modified, + manager); +} + void gcal_manager_set_event_summary (GcalManager *manager, const gchar *source_uid, diff --git a/src/gcal-manager.h b/src/gcal-manager.h index 782498d2..6fc8fcfa 100644 --- a/src/gcal-manager.h +++ b/src/gcal-manager.h @@ -143,6 +143,11 @@ void gcal_manager_set_event_start_date (GcalManager *manager const gchar *event_uid, const icaltimetype *initial_date); +void gcal_manager_set_event_end_date (GcalManager *manager, + const gchar *source_uid, + const gchar *event_uid, + const icaltimetype *initial_date); + void gcal_manager_set_event_summary (GcalManager *manager, const gchar *source_uid, const gchar *event_uid,