IMAP provides the namespace including the delimiter.
authorGunnar Wrobel <p@rdus.de>
Tue, 23 Mar 2010 06:21:34 +0000 (07:21 +0100)
committerGunnar Wrobel <wrobel@temple.(none)>
Tue, 23 Mar 2010 06:53:34 +0000 (07:53 +0100)
framework/Kolab_Storage/lib/Horde/Kolab/Storage/Namespace/Element.php
framework/Kolab_Storage/lib/Horde/Kolab/Storage/Namespace/Fixed.php
framework/Kolab_Storage/test/Horde/Kolab/Storage/NamespaceTest.php

index 1bbba5a..ab72ec5 100644 (file)
@@ -24,6 +24,9 @@ abstract class Horde_Kolab_Storage_Namespace_Element
      */
     public function __construct($name, $delimiter)
     {
+        if (substr($name, -1) == $delimiter) {
+            $name = substr($name, 0, -1);
+        }
         $this->_name = $name;
         $this->_delimiter = $delimiter;
     }
index 6867d87..3b170b8 100644 (file)
@@ -45,8 +45,8 @@ extends  Horde_Kolab_Storage_Namespace
     {
         parent::__construct();
 
-        $personal = new Horde_Kolab_Storage_Namespace_Element_Personal('INBOX', '/');
-        $other    = new Horde_Kolab_Storage_Namespace_Element_Other('user', '/');
+        $personal = new Horde_Kolab_Storage_Namespace_Element_Personal('INBOX/', '/');
+        $other    = new Horde_Kolab_Storage_Namespace_Element_Other('user/', '/');
         $shared   = new Horde_Kolab_Storage_Namespace_Element_SharedWithPrefix('', '/', 'shared.');
 
         $this->_namespaces = array($personal, $other);
index c3b23ed..38b2efc 100644 (file)
@@ -272,13 +272,13 @@ class Horde_Kolab_Storage_NamespaceTest extends PHPUnit_Framework_TestCase
                 array(
                     array(
                         'type' => Horde_Kolab_Storage_Namespace::PERSONAL,
-                        'name' => 'INBOX',
+                        'name' => 'INBOX/',
                         'delimiter' => '/',
                         'add' => true,
                     ),
                     array(
                         'type' => Horde_Kolab_Storage_Namespace::OTHER,
-                        'name' => 'user',
+                        'name' => 'user/',
                         'delimiter' => '/',
                     ),
                     array(
@@ -292,12 +292,12 @@ class Horde_Kolab_Storage_NamespaceTest extends PHPUnit_Framework_TestCase
             new Horde_Kolab_Storage_Namespace_Imap(
                 array(
                     array(
-                        'name'      => 'INBOX',
+                        'name'      => 'INBOX/',
                         'type'      =>  Horde_Kolab_Storage_Namespace::PERSONAL,
                         'delimiter' => '/',
                     ),
                     array(
-                        'name'      => 'user',
+                        'name'      => 'user/',
                         'type'      =>  Horde_Kolab_Storage_Namespace::OTHER,
                         'delimiter' => '/',
                     ),
@@ -308,7 +308,7 @@ class Horde_Kolab_Storage_NamespaceTest extends PHPUnit_Framework_TestCase
                     ),
                 ),
                 array(
-                    'INBOX' => array(
+                    'INBOX/' => array(
                         'add' => true,
                     ),
                     '' => array(