aboutsummaryrefslogtreecommitdiffstats
path: root/plugins/exchange-operations/exchange-operations.c
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/exchange-operations/exchange-operations.c')
-rw-r--r--plugins/exchange-operations/exchange-operations.c19
1 files changed, 19 insertions, 0 deletions
diff --git a/plugins/exchange-operations/exchange-operations.c b/plugins/exchange-operations/exchange-operations.c
index 86d1830388..57340d4ccc 100644
--- a/plugins/exchange-operations/exchange-operations.c
+++ b/plugins/exchange-operations/exchange-operations.c
@@ -23,6 +23,8 @@
#include <glib/gi18n.h>
#include "exchange-operations.h"
+#include <e-folder-exchange.h>
+#include <exchange-hierarchy.h>
#include <e-util/e-error.h>
ExchangeConfigListener *exchange_global_config_listener=NULL;
@@ -281,3 +283,20 @@ void exchange_operations_update_child_esources (ESource *source, const gchar *ol
}
}
}
+
+gboolean
+is_exchange_personal_folder (ExchangeAccount *account, char *uri)
+{
+ ExchangeHierarchy *hier;
+ EFolder *folder;
+
+ folder = exchange_account_get_folder (account, uri);
+ if (folder) {
+ hier = e_folder_exchange_get_hierarchy (folder);
+ if (hier->type != EXCHANGE_HIERARCHY_PERSONAL)
+ return FALSE;
+ else
+ return TRUE;
+ }
+ return FALSE;
+}