From 28bfe4dc80a1431655666cfb3cec30f89e3459c7 Mon Sep 17 00:00:00 2001
From: thomascube <thomas@roundcube.net>
Date: Fri, 23 Mar 2007 14:54:39 -0400
Subject: [PATCH] Fixed bugs #1484276 and #1484300

---
 CHANGELOG                      |    6 ++++++
 program/steps/mail/func.inc    |    8 ++++----
 program/include/rcube_imap.inc |    6 +++---
 3 files changed, 13 insertions(+), 7 deletions(-)

diff --git a/CHANGELOG b/CHANGELOG
index dd63ce8..ab5980e 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,6 +1,12 @@
 CHANGELOG RoundCube Webmail
 ---------------------------
 
+2007/03/23 (thomasb)
+----------
+- Correctly translate mailbox names (closes #1484276)
+- Quote e-mail address links (closes #1484300)
+
+
 2007/03/21 (thomasb)
 ----------
 - Updated PEAR::Mail_mime package
diff --git a/program/include/rcube_imap.inc b/program/include/rcube_imap.inc
index 438922b..d4235fa 100644
--- a/program/include/rcube_imap.inc
+++ b/program/include/rcube_imap.inc
@@ -2272,7 +2272,7 @@
 
   function _mod_mailbox($mbox_name, $mode='in')
     {
-    if ((!empty($this->root_ns) && $this->root_ns == $mbox_name) || $mbox_name == 'INBOX')
+    if (empty($mbox_name) || (!empty($this->root_ns) && $this->root_ns == $mbox_name) || $mbox_name == 'INBOX')
       return $mbox_name;
 
     if (!empty($this->root_dir) && $mode=='in') 
@@ -2309,12 +2309,12 @@
 
   function get_id($uid, $mbox_name=NULL) 
     {
-      return $this->_uid2id($uid, $mbox_name);
+      return $this->_uid2id($uid, $this->_mod_mailbox($mbox_name));
     }
   
   function get_uid($id,$mbox_name=NULL)
     {
-      return $this->_id2uid($id, $mbox_name);
+      return $this->_id2uid($id, $this->_mod_mailbox($mbox_name));
     }
 
   function _uid2id($uid, $mbox_name=NULL)
diff --git a/program/steps/mail/func.inc b/program/steps/mail/func.inc
index 1b98f1d..37c1e1e 100644
--- a/program/steps/mail/func.inc
+++ b/program/steps/mail/func.inc
@@ -1398,10 +1398,10 @@
     else if (preg_match($EMAIL_ADDRESS_PATTERN, $part['mailto']))
       {
       $out .= sprintf('<a href="mailto:%s" onclick="return %s.command(\'compose\',\'%s\',this)" class="rcmContactAddress" title="%s">%s</a>',
-                      $part['mailto'],
+                      Q($part['mailto']),
                       $JS_OBJECT_NAME,
-                      $part['mailto'],
-                      $part['mailto'],
+                      JQ($part['mailto']),
+                      Q($part['mailto']),
                       Q($part['name']));
                       
       if ($addicon)
@@ -1417,7 +1417,7 @@
       if ($part['name'])
         $out .= Q($part['name']);
       if ($part['mailto'])
-        $out .= (strlen($out) ? ' ' : '') . sprintf('&lt;%s&gt;', $part['mailto']);
+        $out .= (strlen($out) ? ' ' : '') . sprintf('&lt;%s&gt;', Q($part['mailto']));
       }
       
     if ($c>$j)

--
Gitblit v1.9.1