diff --git a/src/gcal-manager.c b/src/gcal-manager.c index bf58cccb..74b3ef4d 100644 --- a/src/gcal-manager.c +++ b/src/gcal-manager.c @@ -1029,6 +1029,20 @@ gcal_manager_get_source_name (GcalManager *manager, return e_source_get_display_name (unit->source); } +gboolean +gcal_manager_get_source_readonly (GcalManager *manager, + const gchar *source_uid) +{ + GcalManagerPrivate *priv; + GcalManagerUnit *unit; + + g_return_val_if_fail (GCAL_IS_MANAGER (manager), FALSE); + priv = manager->priv; + + unit = g_hash_table_lookup (priv->clients, source_uid); + return e_client_is_readonly (E_CLIENT (unit->client)); +} + /** * gcal_manager_set_new_range: * @manager: a #GcalManager diff --git a/src/gcal-manager.h b/src/gcal-manager.h index f378d6c6..f536e4b2 100644 --- a/src/gcal-manager.h +++ b/src/gcal-manager.h @@ -73,6 +73,9 @@ gchar* gcal_manager_add_source (GcalManager *manager const gchar* gcal_manager_get_source_name (GcalManager *manager, const gchar *source_uid); +gboolean gcal_manager_get_source_readonly (GcalManager *manager, + const gchar *source_uid); + void gcal_manager_set_new_range (GcalManager *manager, const icaltimetype *initial_date, const icaltimetype *final_date);