summaryrefslogtreecommitdiff
path: root/program/include/rcube_config.php
diff options
context:
space:
mode:
authoralecpl <alec@alec.pl>2012-01-19 14:04:20 +0000
committeralecpl <alec@alec.pl>2012-01-19 14:04:20 +0000
commit0ac41603d424a889e83b156b3128581eec0f931f (patch)
treeaac87a9f57643b4f1a6377553671e05eadf4a90a /program/include/rcube_config.php
parent63ff2a22cadc29b2fdba54a5bf3fc32c86fa070e (diff)
- Better handling of legacy config (#1488312)
Diffstat (limited to 'program/include/rcube_config.php')
-rw-r--r--program/include/rcube_config.php27
1 files changed, 24 insertions, 3 deletions
diff --git a/program/include/rcube_config.php b/program/include/rcube_config.php
index f2c20f5ed..7eb295015 100644
--- a/program/include/rcube_config.php
+++ b/program/include/rcube_config.php
@@ -5,7 +5,7 @@
| program/include/rcube_config.php |
| |
| This file is part of the Roundcube Webmail client |
- | Copyright (C) 2008-2010, The Roundcube Dev Team |
+ | Copyright (C) 2008-2012, The Roundcube Dev Team |
| |
| Licensed under the GNU General Public License version 3 or |
| any later version with exceptions for skins & plugins. |
@@ -33,6 +33,18 @@ class rcube_config
private $errors = array();
private $userprefs = array();
+ /**
+ * Renamed options
+ *
+ * @var array
+ */
+ private $legacy_props = array(
+ // new name => old name
+ 'default_folders' => 'default_imap_folders',
+ 'mail_pagesize' => 'pagesize',
+ 'addressbook_pagesize' => 'pagesize',
+ );
+
/**
* Object constructor
@@ -164,9 +176,18 @@ class rcube_config
*/
public function get($name, $def = null)
{
- $result = isset($this->prop[$name]) ? $this->prop[$name] : $def;
+ if (isset($this->prop[$name])) {
+ $result = $this->prop[$name];
+ }
+ else if (isset($this->lagacy_props[$name])) {
+ return $this->get($this->lagacy_props[$name], $def);
+ }
+ else {
+ $result = $def;
+ }
+
$rcmail = rcmail::get_instance();
-
+
if ($name == 'timezone' && isset($this->prop['_timezone_value']))
$result = $this->prop['_timezone_value'];