From fc67251839ae210a138cafc68fdb7f5aae95a151 Mon Sep 17 00:00:00 2001 From: thomascube Date: Wed, 17 Oct 2007 20:44:10 +0000 Subject: Show appropriate warning on connection error --- index.php | 8 ++++---- program/include/rcube_imap.inc | 2 ++ 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/index.php b/index.php index aa163c1f0..ce66d2cd4 100644 --- a/index.php +++ b/index.php @@ -2,7 +2,7 @@ /* +-----------------------------------------------------------------------+ | RoundCube Webmail IMAP Client | - | Version 0.1-20070809 | + | Version 0.1-20071017 | | | | Copyright (C) 2005-2007, RoundCube Dev. - Switzerland | | Licensed under the GNU GPL | @@ -41,7 +41,7 @@ */ // application constants -define('RCMAIL_VERSION', '0.1-20070809'); +define('RCMAIL_VERSION', '0.1-20071017'); define('RCMAIL_CHARSET', 'UTF-8'); define('JS_OBJECT_NAME', 'rcmail'); @@ -172,7 +172,7 @@ if ($_action=='login' && $_task=='mail') } else { - $OUTPUT->show_message("loginfailed", 'warning'); + $OUTPUT->show_message($IMAP->error_code == -1 ? 'imaperror' : 'loginfailed', 'warning'); rcmail_kill_session(); } } @@ -201,7 +201,7 @@ if (!empty($_SESSION['user_id']) && $_task=='mail') $conn = $IMAP->connect($_SESSION['imap_host'], $_SESSION['username'], decrypt_passwd($_SESSION['password']), $_SESSION['imap_port'], $_SESSION['imap_ssl']); if (!$conn) { - $OUTPUT->show_message('imaperror', 'error'); + $OUTPUT->show_message($IMAP->error_code == -1 ? 'imaperror' : 'sessionerror', 'error'); rcmail_kill_session(); } else diff --git a/program/include/rcube_imap.inc b/program/include/rcube_imap.inc index be7f44f4e..8bcce8a94 100644 --- a/program/include/rcube_imap.inc +++ b/program/include/rcube_imap.inc @@ -65,6 +65,7 @@ class rcube_imap var $search_string = ''; var $search_charset = ''; var $debug_level = 1; + var $error_code = 0; /** @@ -131,6 +132,7 @@ class rcube_imap // write error log else if (!$this->conn && $GLOBALS['iil_error']) { + $this->error_code = $GLOBALS['iil_errornum']; raise_error(array('code' => 403, 'type' => 'imap', 'message' => $GLOBALS['iil_error']), TRUE, FALSE); -- cgit v1.2.3