alecpl
2010-12-27 1c7b94b52e025bac64f610dd5e482548db2451bc
- Fix namespaces handling (#1487649) 


2 files modified
19 ■■■■■ changed files
CHANGELOG 1 ●●●● patch | view | raw | blame | history
program/include/rcube_imap.php 18 ●●●●● patch | view | raw | blame | history
CHANGELOG
@@ -2,6 +2,7 @@
===========================
- Show the same message only once (#1487641)
- Fix namespaces handling (#1487649)
RELEASE 0.5-RC
--------------
program/include/rcube_imap.php
@@ -3318,28 +3318,22 @@
            // If folder contains namespace prefix, don't modify it
            if (is_array($this->namespace['shared'])) {
                foreach ($this->namespace['shared'] as $ns) {
                    foreach ((array)$ns as $root) {
                        if ($root[0] && strpos($mbox_name, $root[0]) === 0) {
                            return $mbox_name;
                        }
                    if ($ns[0] && strpos($mbox_name, $ns[0]) === 0) {
                        return $mbox_name;
                    }
                }
            }
            if (is_array($this->namespace['other'])) {
                foreach ($this->namespace['other'] as $ns) {
                    foreach ((array)$ns as $root) {
                        if ($root[0] && strpos($mbox_name, $root[0]) === 0) {
                            return $mbox_name;
                        }
                    if ($ns[0] && strpos($mbox_name, $ns[0]) === 0) {
                        return $mbox_name;
                    }
                }
            }
            if (is_array($this->namespace['personal'])) {
                foreach ($this->namespace['personal'] as $ns) {
                    foreach ((array)$ns as $root) {
                        if ($root[0] && strpos($mbox_name, $root[0]) === 0) {
                            return $mbox_name;
                        }
                    if ($ns[0] && strpos($mbox_name, $ns[0]) === 0) {
                        return $mbox_name;
                    }
                }
                // Add prefix if first personal namespace is non-empty