diff options
author | Arunprakash <arunp@novell.com> | 2005-08-25 23:27:51 +0800 |
---|---|---|
committer | Arunprakash S <arunp@src.gnome.org> | 2005-08-25 23:27:51 +0800 |
commit | f7780399f460eb357653f02a243c7347d40bc35e (patch) | |
tree | 622a30bf28e0b505283706fe8404914e4f6adf3b /plugins/exchange-operations/exchange-operations.c | |
parent | 3f9c05b3ad0da596400e88558c86edeefa593f58 (diff) | |
download | gsoc2013-evolution-f7780399f460eb357653f02a243c7347d40bc35e.tar gsoc2013-evolution-f7780399f460eb357653f02a243c7347d40bc35e.tar.gz gsoc2013-evolution-f7780399f460eb357653f02a243c7347d40bc35e.tar.bz2 gsoc2013-evolution-f7780399f460eb357653f02a243c7347d40bc35e.tar.lz gsoc2013-evolution-f7780399f460eb357653f02a243c7347d40bc35e.tar.xz gsoc2013-evolution-f7780399f460eb357653f02a243c7347d40bc35e.tar.zst gsoc2013-evolution-f7780399f460eb357653f02a243c7347d40bc35e.zip |
Need to set the account's linestatus to online as there is no way to get
2005-08-25 Arunprakash <arunp@novell.com>
* exchange-config-listener.c (account_added) : Need to set the
account's linestatus to online as there is no way to get the
linestatus in plugin. Also moved the authentication code to
exchange_operations_get_exchange_account as it is not needed here.
* exchange-operations.c (exchange_operations_get_exchange_account) :
Updated to return the account in offline mode.
svn path=/trunk/; revision=30251
Diffstat (limited to 'plugins/exchange-operations/exchange-operations.c')
-rw-r--r-- | plugins/exchange-operations/exchange-operations.c | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/plugins/exchange-operations/exchange-operations.c b/plugins/exchange-operations/exchange-operations.c index 64d3d8da09..b804c47102 100644 --- a/plugins/exchange-operations/exchange-operations.c +++ b/plugins/exchange-operations/exchange-operations.c @@ -186,17 +186,28 @@ exchange_operations_get_exchange_account (void) ExchangeAccount *account = NULL; ExchangeAccountResult result; GSList *acclist; + gint mode; acclist = exchange_config_listener_get_accounts (exchange_global_config_listener); /* FIXME: Need to be changed for handling multiple accounts */ if (acclist) { account = acclist->data; - if (exchange_account_get_context (account)) + exchange_config_listener_get_offline_status (exchange_global_config_listener, + &mode); + + if (mode == OFFLINE_MODE) { + return account; + } + else if (exchange_account_get_context (account)) { return account; - else { + } else { /* Try authenticating */ result = exchange_config_listener_authenticate(exchange_global_config_listener, account); + if (result != EXCHANGE_ACCOUNT_CONNECT_SUCCESS) { + exchange_operations_report_error (account, result); + return NULL; + } if (exchange_account_get_context (account)) return account; } |