diff options
-rw-r--r-- | .htaccess | 2 | ||||
-rw-r--r-- | CHANGELOG | 1 | ||||
-rw-r--r-- | program/include/rcube_config.php | 10 | ||||
-rw-r--r-- | program/include/rcube_template.php | 2 | ||||
-rw-r--r-- | skins/classic/ie6hacks.css | 2 |
5 files changed, 11 insertions, 6 deletions
@@ -28,7 +28,7 @@ php_value mbstring.func_overload 0 <IfModule mod_rewrite.c> RewriteEngine On -RewriteRule ^favicon\.ico$ skins/default/images/favicon.ico +RewriteRule ^favicon\.ico$ skins/larry/images/favicon.ico # security rules RewriteRule .git - [F] RewriteRule ^/?(README(.md)?|INSTALL|LICENSE|SQL|bin|CHANGELOG)$ - [F] @@ -1,6 +1,7 @@ CHANGELOG Roundcube Webmail =========================== +- Fix fallback to Larry skin when configured skin isn't available (#1488591) - Fix (workaround) delete operations with some versions of memcache (#1488592) - Fix (disable) request validation for spell and spell_html actions diff --git a/program/include/rcube_config.php b/program/include/rcube_config.php index 3788f121a..826c70016 100644 --- a/program/include/rcube_config.php +++ b/program/include/rcube_config.php @@ -29,6 +29,8 @@ */ class rcube_config { + const DEFAULT_SKIN = 'larry'; + private $prop = array(); private $errors = array(); private $userprefs = array(); @@ -74,14 +76,15 @@ class rcube_config $this->load_host_config(); // set skin (with fallback to old 'skin_path' property) + if (empty($this->prop['skin']) && !empty($this->prop['skin_path'])) $this->prop['skin'] = str_replace('skins/', '', unslashify($this->prop['skin_path'])); else if (empty($this->prop['skin'])) - $this->prop['skin'] = 'larry'; + $this->prop['skin'] = self::DEFAULT_SKIN; // larry is the new default skin :-) if ($this->prop['skin'] == 'default') - $this->prop['skin'] = 'larry'; + $this->prop['skin'] = self::DEFAULT_SKIN; // fix paths $this->prop['log_dir'] = $this->prop['log_dir'] ? realpath(unslashify($this->prop['log_dir'])) : INSTALL_PATH . 'logs'; @@ -251,8 +254,9 @@ class rcube_config } // larry is the new default skin :-) + if ($prefs['skin'] == 'default') - $prefs['skin'] = 'larry'; + $prefs['skin'] = self::DEFAULT_SKIN; $this->userprefs = $prefs; $this->prop = array_merge($this->prop, $prefs); diff --git a/program/include/rcube_template.php b/program/include/rcube_template.php index 24915f093..8efb5c9da 100644 --- a/program/include/rcube_template.php +++ b/program/include/rcube_template.php @@ -158,7 +158,7 @@ class rcube_template extends rcube_html_page $valid = true; } else { - $skin_path = $this->config['skin_path'] ? $this->config['skin_path'] : 'skins/default'; + $skin_path = $this->config['skin_path'] ? $this->config['skin_path'] : rcube_config::DEFAULT_SKIN; $valid = !$skin; } diff --git a/skins/classic/ie6hacks.css b/skins/classic/ie6hacks.css index 53a2e5e1d..ac953867a 100644 --- a/skins/classic/ie6hacks.css +++ b/skins/classic/ie6hacks.css @@ -7,7 +7,7 @@ img { - behavior: url(skins/default/pngbehavior.htc); + behavior: url(skins/classic/pngbehavior.htc); } #logo |