Prevent from saving a non-existing skin path in user prefs

release-0.6
thomascube 14 years ago
parent ffc040bf9e
commit 62c791f609

@ -1,6 +1,7 @@
CHANGELOG RoundCube Webmail
===========================
- Prevent from saving a non-existing skin path in user prefs (#1486936)
- Improve handling of single-part messages with bogus BODYSTRUCTURE (#1486898)
- Fix path to SQL files when using pgsql/mysqli/sqlsrv drivers (#1486902)
- Fix upgrade script for SQLite (#1486903)

@ -138,13 +138,21 @@ class rcube_template extends rcube_html_page
*/
public function set_skin($skin)
{
if (!empty($skin) && is_dir('skins/'.$skin) && is_readable('skins/'.$skin))
$valid = false;
if (!empty($skin) && is_dir('skins/'.$skin) && is_readable('skins/'.$skin)) {
$skin_path = 'skins/'.$skin;
else
$valid = true;
}
else {
$skin_path = $this->config['skin_path'] ? $this->config['skin_path'] : 'skins/default';
$valid = !$skin;
}
$this->app->config->set('skin_path', $skin_path);
$this->config['skin_path'] = $skin_path;
return $valid;
}
/**

@ -29,7 +29,7 @@ if ($uid = get_input_value('_uid', RCUBE_INPUT_GET)) {
if (empty($MESSAGE->headers)) {
rcmail_message_error($uid);
}
sleep(5);
send_nocacheing_headers();
$mbox_name = $IMAP->get_mailbox_name();

@ -116,8 +116,9 @@ switch ($CURR_SECTION)
$OUTPUT->command('reload', 500);
}
// switch skin
$OUTPUT->set_skin($a_user_prefs['skin']);
// switch skin (if valid, otherwise unset the pref and fall back to default)
if (!$OUTPUT->set_skin($a_user_prefs['skin']))
unset($a_user_prefs['skin']);
// force min size
if ($a_user_prefs['pagesize'] < 1)

Loading…
Cancel
Save