summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoralec <alec@208e9e7b-5314-0410-a742-e7e81cd9613c>2011-05-06 13:03:22 +0000
committeralec <alec@208e9e7b-5314-0410-a742-e7e81cd9613c>2011-05-06 13:03:22 +0000
commit7a1edaf19136afb435e37159adfb0647f4ec312b (patch)
treeece67eb969cdc183c9bab1d32b3913279a683e68
parent15266fe42c8639cb0185ab6efa5c11611b9a476c (diff)
- Fixed mod_mailbox() usage after last changes in rcube_imap class
git-svn-id: https://svn.roundcube.net/trunk@4740 208e9e7b-5314-0410-a742-e7e81cd9613c
-rw-r--r--plugins/managesieve/Changelog1
-rw-r--r--plugins/managesieve/managesieve.php17
-rw-r--r--plugins/subscriptions_option/subscriptions_option.php2
3 files changed, 11 insertions, 9 deletions
diff --git a/plugins/managesieve/Changelog b/plugins/managesieve/Changelog
index 7eb9f64dd..a1b7f872b 100644
--- a/plugins/managesieve/Changelog
+++ b/plugins/managesieve/Changelog
@@ -1,4 +1,5 @@
- Moved elsif replacement code to handle only imports from other formats
+- Fixed mod_mailbox() usage for newer Roundcube versions
* version 4.1 [2011-03-07]
-----------------------------------------------------------
diff --git a/plugins/managesieve/managesieve.php b/plugins/managesieve/managesieve.php
index 0b2ae5b4f..27009bf39 100644
--- a/plugins/managesieve/managesieve.php
+++ b/plugins/managesieve/managesieve.php
@@ -1096,6 +1096,7 @@ class managesieve extends rcube_plugin
$a_folders = $this->rc->imap->list_mailboxes();
$delimiter = $this->rc->imap->get_hierarchy_delimiter();
+ $replace_delimiter = $this->rc->config->get('managesieve_replace_delimiter');
// set mbox encoding
$mbox_encoding = $this->rc->config->get('managesieve_mbox_encoding', 'UTF7-IMAP');
@@ -1105,21 +1106,21 @@ class managesieve extends rcube_plugin
else
$mailbox = '';
+
foreach ($a_folders as $folder) {
- $utf7folder = $this->rc->imap->mod_mailbox($folder);
+ $utf7folder = $folder;
+ $foldername = rcmail_localize_foldername($utf7folder);
+ $names = explode($delimiter, $foldername);
+ $foldername = $names[sizeof($names)-1];
+
$names = explode($delimiter, rcube_charset_convert($folder, 'UTF7-IMAP'));
$name = $names[sizeof($names)-1];
- if ($replace_delimiter = $this->rc->config->get('managesieve_replace_delimiter'))
- $utf7folder = str_replace($delimiter, $replace_delimiter, $utf7folder);
-
// convert to Sieve implementation encoding
$utf7folder = $this->mbox_encode($utf7folder, $mbox_encoding);
- if ($folder_class = rcmail_folder_classname($name))
- $foldername = $this->gettext($folder_class);
- else
- $foldername = $name;
+ if ($replace_delimiter)
+ $utf7folder = str_replace($delimiter, $replace_delimiter, $utf7folder);
$out .= sprintf('<option value="%s"%s>%s%s</option>'."\n",
htmlspecialchars($utf7folder),
diff --git a/plugins/subscriptions_option/subscriptions_option.php b/plugins/subscriptions_option/subscriptions_option.php
index 9d499d1d1..8660e1365 100644
--- a/plugins/subscriptions_option/subscriptions_option.php
+++ b/plugins/subscriptions_option/subscriptions_option.php
@@ -76,7 +76,7 @@ class subscriptions_option extends rcube_plugin
{
$rcmail = rcmail::get_instance();
if (!$rcmail->config->get('use_subscriptions', true)) {
- $args['folders'] = $rcmail->imap->conn->listMailboxes($rcmail->imap->mod_mailbox($args['root']), $args['name']);
+ $args['folders'] = $rcmail->imap->conn->listMailboxes($args['root'], $args['name']);
}
return $args;
}