+2005-08-04 Parthasarathi Susarla <sparthasarathi@novell.com>
+
+ * camel-groupwise-store.c:
+ (groupwise_connect): set the service status flag to
+ connected.
+ * camel-groupwise-folder.c:
+ (groupwise_expunge): purge items if it is a Trash
+ Folder.
+ Fixes Bug ** 311887
+
2005-08-03 Parthasarathi Susarla <sparthasarathi@novell.com>
* camel-groupwise-folder.c:
CAMEL_SERVICE_LOCK (groupwise_store, connect_lock);
- changes = camel_folder_change_info_new ();
-
cnc = cnc_lookup (priv);
+ if (!cnc)
+ return;
+
+ if (!strcmp (folder->full_name, "Trash")) {
+ status = e_gw_connection_purge_deleted_items (cnc);
+ if (status == E_GW_CONNECTION_STATUS_OK) {
+ camel_folder_summary_clear (folder->summary);
+ camel_folder_summary_save (folder->summary);
+ } else
+ g_warning ("Could not Empty Trash\n");
+ CAMEL_SERVICE_UNLOCK (groupwise_store, connect_lock);
+ return;
+ }
+
+ changes = camel_folder_change_info_new ();
container_id = g_strdup (camel_groupwise_store_container_id_lookup (groupwise_store, folder->full_name)) ;
camel_service_disconnect (service, TRUE, NULL);
return FALSE;
}
+
+ service->status = CAMEL_SERVICE_CONNECTED;
if (!e_gw_connection_get_version (priv->cnc)) {
camel_session_alert_user(session,
if (type == E_GW_CONTAINER_TYPE_INBOX)
fi->flags |= CAMEL_FOLDER_TYPE_INBOX;
+ if (type == E_GW_CONTAINER_TYPE_TRASH)
+ fi->flags |= CAMEL_FOLDER_TYPE_TRASH;
if ( (type == E_GW_CONTAINER_TYPE_INBOX) ||
(type == E_GW_CONTAINER_TYPE_OUTBOX) ||