diff options
Diffstat (limited to 'program')
-rw-r--r-- | program/include/rcmail.php | 2 | ||||
-rw-r--r-- | program/lib/Roundcube/rcube_imap_generic.php | 10 | ||||
-rw-r--r-- | program/lib/Roundcube/rcube_plugin_api.php | 10 |
3 files changed, 19 insertions, 3 deletions
diff --git a/program/include/rcmail.php b/program/include/rcmail.php index e1a62767d..221b50afe 100644 --- a/program/include/rcmail.php +++ b/program/include/rcmail.php @@ -1802,7 +1802,7 @@ class rcmail extends rcube $error = 'errorreadonly'; } else if ($res_code == rcube_storage::OVERQUOTA) { - $error = 'errorroverquota'; + $error = 'erroroverquota'; } else if ($err_code && ($err_str = $this->storage->get_error_str())) { // try to detect access rights problem and display appropriate message diff --git a/program/lib/Roundcube/rcube_imap_generic.php b/program/lib/Roundcube/rcube_imap_generic.php index 9af5ce4c6..734a9311e 100644 --- a/program/lib/Roundcube/rcube_imap_generic.php +++ b/program/lib/Roundcube/rcube_imap_generic.php @@ -2041,8 +2041,14 @@ class rcube_imap_generic $flag = $this->flags[strtoupper($flag)]; } - if (!$flag || (!in_array($flag, (array) $this->data['PERMANENTFLAGS']) - && !in_array('\\*', (array) $this->data['PERMANENTFLAGS'])) + if (!$flag) { + return false; + } + + // if PERMANENTFLAGS is not specified all flags are allowed + if (!empty($this->data['PERMANENTFLAGS']) + && !in_array($flag, (array) $this->data['PERMANENTFLAGS']) + && !in_array('\\*', (array) $this->data['PERMANENTFLAGS']) ) { return false; } diff --git a/program/lib/Roundcube/rcube_plugin_api.php b/program/lib/Roundcube/rcube_plugin_api.php index e0b8aea38..92a56363a 100644 --- a/program/lib/Roundcube/rcube_plugin_api.php +++ b/program/lib/Roundcube/rcube_plugin_api.php @@ -626,6 +626,16 @@ class rcube_plugin_api } /** + * Returns loaded plugin + * + * @return rcube_plugin Plugin instance + */ + public function get_plugin($name) + { + return $this->plugins[$name]; + } + + /** * Callback for template_container hooks * * @param array $attrib |