Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
home:pchenthill
evolution-data-server
bnc-208317-subscribe-calendar-eds.diff
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File bnc-208317-subscribe-calendar-eds.diff of Package evolution-data-server
Index: servers/exchange/storage/exchange-account.c =================================================================== RCS file: /cvs/gnome/evolution-data-server/servers/exchange/storage/exchange-account.c,v retrieving revision 1.37 diff -u -p -r1.37 exchange-account.c --- servers/exchange/storage/exchange-account.c 15 Nov 2006 08:01:16 -0000 1.37 +++ servers/exchange/storage/exchange-account.c 15 Dec 2006 11:37:38 -0000 @@ -1760,6 +1761,35 @@ exchange_account_get_foreign_uri (Exchan g_free (home_uri); return foreign_uri; +} + +/* Scans the subscribed users folders. */ +/*FIXME This function is not really required if the syncronization + problem between exchange and evolution is fixed. Exchange does not get to know + if an user's folder is subscribed from evolution */ +void +exchange_account_scan_foreign_hierarchy (ExchangeAccount *account, const char *user_email) +{ + char *dir; + ExchangeHierarchy *hier; + int mode; + + hier = g_hash_table_lookup (account->priv->foreign_hierarchies, user_email); + if (hier) { + exchange_hierarchy_rescan (hier); + return; + } + + dir = g_strdup_printf ("%s/%s", account->storage_dir, user_email); + if (g_file_test (dir, G_FILE_TEST_EXISTS | G_FILE_TEST_IS_DIR)) { + hier = exchange_hierarchy_foreign_new_from_dir (account, dir); + g_free (dir); + if (hier) { + exchange_account_is_offline (account, &mode); + setup_hierarchy_foreign (account, hier); + exchange_hierarchy_scan_subtree (hier, hier->toplevel, mode); + } + } } /** Index: servers/exchange/storage/exchange-account.h =================================================================== RCS file: /cvs/gnome/evolution-data-server/servers/exchange/storage/exchange-account.h,v retrieving revision 1.9 diff -u -p -r1.9 exchange-account.h --- servers/exchange/storage/exchange-account.h 22 Jul 2006 09:05:22 -0000 1.9 +++ servers/exchange/storage/exchange-account.h 15 Dec 2006 11:37:38 -0000 @@ -89,6 +89,8 @@ char *exchange_account_ char *exchange_account_get_foreign_uri (ExchangeAccount *acct, E2kGlobalCatalogEntry *entry, const char *std_uri_prop); +void +exchange_account_scan_foreign_hierarchy (ExchangeAccount *account, const char *user_email); char *exchange_account_get_authtype (ExchangeAccount *account); Index: servers/exchange/storage/exchange-esource.c =================================================================== RCS file: /cvs/gnome/evolution-data-server/servers/exchange/storage/exchange-esource.c,v retrieving revision 1.14 diff -u -p -r1.14 exchange-esource.c --- servers/exchange/storage/exchange-esource.c 7 Nov 2006 12:23:17 -0000 1.14 +++ servers/exchange/storage/exchange-esource.c 15 Dec 2006 11:37:38 -0000 @@ -110,8 +110,10 @@ add_folder_esource (ExchangeAccount *acc e_source_set_property (source, "offline_sync", "1"); } - if (foriegn_folder && (folder_type != EXCHANGE_CONTACTS_FOLDER)) + if (foriegn_folder && (folder_type != EXCHANGE_CONTACTS_FOLDER)) { e_source_set_property (source, "alarm", "never"); + e_source_set_property (source, "foreign", "1"); + } e_source_set_property (source, "username", username); e_source_set_property (source, "auth-domain", "Exchange"); @@ -151,8 +153,10 @@ add_folder_esource (ExchangeAccount *acc else e_source_set_property (source, "auth", "1"); - if (foriegn_folder && (folder_type != EXCHANGE_CONTACTS_FOLDER)) + if (foriegn_folder && (folder_type != EXCHANGE_CONTACTS_FOLDER)) { e_source_set_property (source, "alarm", "never"); + e_source_set_property (source, "foreign", "1"); + } e_source_group_add_source (source_group, source, -1); source_new = TRUE;
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor