aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--plugins/groupwise-features/ChangeLog6
-rw-r--r--plugins/groupwise-features/org-gnome-proxy-login-errors.xml7
-rw-r--r--plugins/groupwise-features/proxy-login.c9
3 files changed, 21 insertions, 1 deletions
diff --git a/plugins/groupwise-features/ChangeLog b/plugins/groupwise-features/ChangeLog
index 424c1d45bc..78d904be7b 100644
--- a/plugins/groupwise-features/ChangeLog
+++ b/plugins/groupwise-features/ChangeLog
@@ -1,3 +1,9 @@
+2006-06-12 Sankar P <psankar@novell.com>
+
+ * proxy-login.c: org-gnome-proxy-login-errors.xml:
+ Handled error case to not allow proxy login to the same account
+ more than once. Fixes #340535
+
2006-05-31 David Richards <drichard@largo.com>
* proxy-login-dialog.glade:
diff --git a/plugins/groupwise-features/org-gnome-proxy-login-errors.xml b/plugins/groupwise-features/org-gnome-proxy-login-errors.xml
index d330f85287..69b3cd562d 100644
--- a/plugins/groupwise-features/org-gnome-proxy-login-errors.xml
+++ b/plugins/groupwise-features/org-gnome-proxy-login-errors.xml
@@ -6,5 +6,10 @@
Proxy login as &quot;{0}&quot; was unsuccessful. Please check Email Id and try again.
</secondary>
</error>
-</error-list>
+<error id="already-loggedin" type="error">
+ <primary>Account Already Exists</primary>
+ <secondary>Account &quot;{0}&quot; already exists. Please check your folder tree.</secondary>
+</error>
+
+</error-list>
diff --git a/plugins/groupwise-features/proxy-login.c b/plugins/groupwise-features/proxy-login.c
index 3d39c3bc18..5dd2bf0c3c 100644
--- a/plugins/groupwise-features/proxy-login.c
+++ b/plugins/groupwise-features/proxy-login.c
@@ -335,6 +335,15 @@ proxy_soap_login (char *email)
e_error_run (NULL, "org.gnome.evolution.proxy-login:invalid-user",email ,NULL);
return;
}
+
+ /* README: There should not be the weird scenario of the proxy itself configured as an account.
+ If so, it is violating the (li)unix philosophy of User creation. So dont care about that scenario*/
+
+ if (e_account_list_find (accounts, E_ACCOUNT_FIND_ID_ADDRESS, email) != NULL) {
+ e_error_run (NULL, "org.gnome.evolution.proxy-login:already-loggedin", email, NULL);
+ g_free (name);
+ return;
+ }
srcAccount = pld->account;
cnc = proxy_login_get_cnc(srcAccount);