store boolean values correctly in siteadminpanel

This commit is contained in:
Evan Prodromou 2009-11-11 01:43:34 -05:00
parent 4258f99d2f
commit 220f8771c6

View File

@ -91,8 +91,8 @@ class SiteadminpanelAction extends AdminPanelAction
function saveSettings()
{
static $settings = array('name', 'broughtby', 'broughtbyurl',
'email', 'timezone', 'language',
'closed', 'inviteonly', 'private');
'email', 'timezone', 'language');
static $booleans = array('closed', 'inviteonly', 'private');
$values = array();
@ -100,6 +100,10 @@ class SiteadminpanelAction extends AdminPanelAction
$values[$setting] = $this->trimmed($setting);
}
foreach ($booleans as $setting) {
$values[$setting] = ($this->boolean($setting)) ? 1 : 0;
}
// This throws an exception on validation errors
$this->validate($values);
@ -110,7 +114,7 @@ class SiteadminpanelAction extends AdminPanelAction
$config->query('BEGIN');
foreach ($settings as $setting) {
foreach (array_merge($settings, $booleans) as $setting) {
Config::save('site', $setting, $values[$setting]);
}