From: pdontthink Date: Fri, 14 Mar 2008 09:27:32 +0000 (+0000) Subject: Fix issue not allowing save of boolean prefs that default to SMPREF_ON X-Git-Url: https://vcs.fsf.org/?a=commitdiff_plain;h=74b80a5157e8170c7dce66a92f607d4bb6550cb9;p=squirrelmail.git Fix issue not allowing save of boolean prefs that default to SMPREF_ON git-svn-id: https://svn.code.sf.net/p/squirrelmail/code/trunk/squirrelmail@13036 7612ce4b-ef26-0410-bec9-ea0150e637f0 --- diff --git a/functions/options.php b/functions/options.php index 0bca18e6..fb0d8aa6 100644 --- a/functions/options.php +++ b/functions/options.php @@ -784,6 +784,14 @@ function save_option($option) { } else if ($option->is_multiple_valued()) setPref($data_dir, $username, $option->name, serialize($option->new_value)); + // Checkboxes, when unchecked, don't submit anything in + // the POST, so set to SMPREF_OFF if not found + // + else if (($option->type == SMOPT_TYPE_BOOLEAN + || $option->type == SMOPT_TYPE_BOOLEAN_CHECKBOX) + && empty($option->new_value)) + setPref($data_dir, $username, $option->name, SMPREF_OFF); + else setPref($data_dir, $username, $option->name, $option->new_value);