summaryrefslogtreecommitdiff
path: root/roundcubemail/program/include/rcube_imap.php
diff options
context:
space:
mode:
authoralec <alec@208e9e7b-5314-0410-a742-e7e81cd9613c>2010-10-25 12:39:36 +0000
committeralec <alec@208e9e7b-5314-0410-a742-e7e81cd9613c>2010-10-25 12:39:36 +0000
commit19fb45036c83a3feb7efa642181e7c96492f97e4 (patch)
treeffdb7202c6c7df5cb1e433ff43b4d71fe0e8cfdd /roundcubemail/program/include/rcube_imap.php
parent5183429dba1bf65d2391678fd5c6f3f2a2875648 (diff)
- Add basic IMAP LIST's \Noselect option support (mark unselectable folders as virtual, etc.)
git-svn-id: https://svn.roundcube.net/trunk@4132 208e9e7b-5314-0410-a742-e7e81cd9613c
Diffstat (limited to 'roundcubemail/program/include/rcube_imap.php')
-rw-r--r--roundcubemail/program/include/rcube_imap.php25
1 files changed, 25 insertions, 0 deletions
diff --git a/roundcubemail/program/include/rcube_imap.php b/roundcubemail/program/include/rcube_imap.php
index 7fbff37f1..46427d6cf 100644
--- a/roundcubemail/program/include/rcube_imap.php
+++ b/roundcubemail/program/include/rcube_imap.php
@@ -3121,6 +3121,31 @@ class rcube_imap
/**
+ * Gets folder options from LIST/LSUB response, e.g. \Noselect, \Noinferiors
+ *
+ * @param string $mbox_name Folder name
+ *
+ * @return array Options list
+ */
+ function mailbox_options($mbox_name)
+ {
+ $mbox = $this->mod_mailbox($mbox_name);
+
+ if ($mbox == 'INBOX') {
+ return array();
+ }
+
+ if (!is_array($this->conn->data['LIST']) || !is_array($this->conn->data['LIST'][$mbox])) {
+ $this->conn->listMailboxes($this->mod_mailbox(''), $mbox_name);
+ }
+
+ $opts = $this->conn->data['LIST'][$mbox];
+
+ return is_array($opts) ? $opts : array();
+ }
+
+
+ /**
* Get message header names for rcube_imap_generic::fetchHeader(s)
*
* @return string Space-separated list of header names