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