From d951a60f705e5bf1fc5e2c683155579c2a662486 Mon Sep 17 00:00:00 2001 From: Chenthill Palanisamy Date: Mon, 9 Jul 2007 11:12:07 +0000 Subject: reviewed by: Veerapuram Varadhan 2007-07-09 Chenthill Palanisamy reviewed by: Veerapuram Varadhan * exchange-delegates-user.c: (map_to_full_role_name), (em_utils_delegates_done), (exchange_delegates_user_edit): * exchange-delegates-user.h: * exchange-delegates.c: (add_button_clicked_cb), (edit_button_clicked_cb), (email_look_up), (table_click_cb): * exchange-delegates.glade: * exchange-delegates.h: * exchange-mail-send-options.c: (append_to_header): * exchange-send-options.c: (exchange_send_options_get_widgets_data), (get_widgets), (exchange_send_options_fill_widgets_with_data), (exchange_send_options_cb), (delegate_option_toggled), (addressbook_dialog_response), (addressbook_entry_changed), (address_button_clicked), (exchange_sendoptions_dialog_run), (exchange_sendoptions_dialog_init): * exchange-send-options.glade: * exchange-send-options.h: * org-gnome-exchange-operations.error.xml: Added the exchange delegation support. Committing on behalf of Bharath Acharya svn path=/trunk/; revision=33784 --- plugins/exchange-operations/exchange-delegates.c | 32 +++++++++++++++++++++--- 1 file changed, 28 insertions(+), 4 deletions(-) (limited to 'plugins/exchange-operations/exchange-delegates.c') diff --git a/plugins/exchange-operations/exchange-delegates.c b/plugins/exchange-operations/exchange-delegates.c index fc1de553db..d940a188a0 100644 --- a/plugins/exchange-operations/exchange-delegates.c +++ b/plugins/exchange-operations/exchange-delegates.c @@ -453,12 +453,12 @@ add_button_clicked_cb (GtkWidget *widget, gpointer data) e_error_run (GTK_WINDOW (parent_window), ERROR_DOMAIN ":delegate-existing", user->display_name, NULL); g_object_unref (user); - exchange_delegates_user_edit (match, parent_window); + exchange_delegates_user_edit (delegates->account, match, parent_window); return; } } - if (!exchange_delegates_user_edit (user, parent_window)) { + if (!exchange_delegates_user_edit (delegates->account, user, parent_window)) { g_object_unref (user); return; } @@ -511,10 +511,34 @@ edit_button_clicked_cb (GtkWidget *widget, gpointer data) g_return_if_fail (row >= 0 && row < delegates->users->len); parent_window = gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW); - exchange_delegates_user_edit (delegates->users->pdata[row], + + exchange_delegates_user_edit (delegates->account, delegates->users->pdata[row], parent_window); } +const char * +email_look_up (const char *delegate_legacy, ExchangeAccount *account) +{ + E2kGlobalCatalog *gc; + E2kGlobalCatalogEntry *entry; + E2kGlobalCatalogStatus status; + + const char *email_id; + + gc = exchange_account_get_global_catalog (account); + + if (!gc) + return; + + status = e2k_global_catalog_lookup ( + gc, NULL, E2K_GLOBAL_CATALOG_LOOKUP_BY_LEGACY_EXCHANGE_DN, + delegate_legacy, 0, &entry); + + email_id = g_strdup (entry->email); + e2k_global_catalog_entry_free (gc, entry); + return email_id; +} + static gboolean table_click_cb (GtkWidget *widget, GdkEventButton *event, gpointer data) { @@ -534,7 +558,7 @@ table_click_cb (GtkWidget *widget, GdkEventButton *event, gpointer data) return FALSE; parent_window = gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW); - exchange_delegates_user_edit (delegates->users->pdata[row], + exchange_delegates_user_edit (delegates->account, delegates->users->pdata[row], parent_window); return TRUE; } -- cgit