aboutsummaryrefslogtreecommitdiffstats
path: root/plugins/exchange-operations/exchange-config-listener.c
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/exchange-operations/exchange-config-listener.c')
-rw-r--r--plugins/exchange-operations/exchange-config-listener.c25
1 files changed, 25 insertions, 0 deletions
diff --git a/plugins/exchange-operations/exchange-config-listener.c b/plugins/exchange-operations/exchange-config-listener.c
index 5b4cb2a86c..006a5521c6 100644
--- a/plugins/exchange-operations/exchange-config-listener.c
+++ b/plugins/exchange-operations/exchange-config-listener.c
@@ -839,6 +839,31 @@ idle_construct (gpointer data)
return FALSE;
}
+ExchangeConfigListenerStatus
+exchange_config_listener_get_offline_status (ExchangeConfigListener *excl,
+ gint *mode)
+{
+ ExchangeConfigListenerPrivate *priv;
+ GConfValue *value;
+ ExchangeConfigListenerStatus status = CONFIG_LISTENER_STATUS_OK;
+ gboolean offline = FALSE;
+
+ g_return_val_if_fail (excl != NULL, CONFIG_LISTENER_STATUS_NOT_FOUND);
+
+ priv = excl->priv;
+ value = gconf_client_get (priv->gconf,
+ "/apps/evolution/shell/start_offline", NULL);
+ if (value)
+ offline = gconf_value_get_bool (value);
+
+ if (offline)
+ *mode = OFFLINE_MODE;
+ else
+ *mode = ONLINE_MODE;
+
+ return status;
+
+}
/**
* exchange_config_listener_new:
*