From 7f1da4818efda0f4f0874f73c840ec46dc332223 Mon Sep 17 00:00:00 2001
From: alecpl <alec@alec.pl>
Date: Thu, 23 Dec 2010 13:25:18 -0500
Subject: [PATCH] - Add debug handler support in rcube_imap_generic
---
program/include/rcube_imap.php | 24 +++++++++++++++++-------
1 files changed, 17 insertions(+), 7 deletions(-)
diff --git a/program/include/rcube_imap.php b/program/include/rcube_imap.php
index 5715459..02efaff 100644
--- a/program/include/rcube_imap.php
+++ b/program/include/rcube_imap.php
@@ -148,6 +148,9 @@
$this->options['port'] = $port;
+ if ($this->options['debug'])
+ $this->conn->setDebug(true, array($this, 'debug_handler'));
+
$attempt = 0;
do {
$data = rcmail::get_instance()->plugins->exec_hook('imap_connect',
@@ -223,7 +226,7 @@
*/
function get_error_code()
{
- return ($this->conn) ? $this->conn->errornum : 0;
+ return $this->conn->errornum;
}
@@ -234,7 +237,7 @@
*/
function get_error_str()
{
- return ($this->conn) ? $this->conn->error : null;
+ return $this->conn->error;
}
@@ -245,9 +248,6 @@
*/
function get_response_code()
{
- if (!$this->conn)
- return self::UNKNOWN;
-
switch ($this->conn->resultcode) {
case 'NOPERM':
return self::NOPERM;
@@ -278,7 +278,7 @@
*/
function get_response_str()
{
- return ($this->conn) ? $this->conn->result : null;
+ return $this->conn->result;
}
@@ -546,7 +546,7 @@
$imap_shared = $config->get('imap_ns_shared');
$imap_delimiter = $config->get('imap_delimiter');
- if (!$this->conn)
+ if (!$this->conn->connected())
return;
$ns = $this->conn->getNamespace();
@@ -4740,6 +4740,16 @@
return $result;
}
+
+ /**
+ * This is our own debug handler for the IMAP connection
+ * @access public
+ */
+ public function debug_handler(&$imap, $message)
+ {
+ write_log('imap', $message);
+ }
+
} // end class rcube_imap
--
Gitblit v1.9.1