]> git.mxchange.org Git - quix0rs-gnu-social.git/commitdiff
store boolean values correctly in siteadminpanel
authorEvan Prodromou <evan@status.net>
Wed, 11 Nov 2009 06:43:34 +0000 (01:43 -0500)
committerEvan Prodromou <evan@status.net>
Wed, 11 Nov 2009 06:43:34 +0000 (01:43 -0500)
actions/siteadminpanel.php

index 6dae12e08c7ed1a6c092eb0e60d7e0acece2de4d..e4deea962051b1acfb68df588dc5744aaa2712d6 100644 (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]);
         }