From: Joey Hess Date: Mon, 11 Oct 2010 15:27:06 +0000 (-0400) Subject: websetup: Fix defaults of checkboxes in advanced mode. X-Git-Url: https://sipb.mit.edu/gitweb.cgi/ikiwiki.git/commitdiff_plain/cfbd272c8bdbb96b6e92449f4d940fb2b72aa651 websetup: Fix defaults of checkboxes in advanced mode. So formbuilder has an annoying glitch, that setting the value of a checkbox, even without force, will override the value currently on the form. Thus the guards against changing checkbox values when a form has been submitted. But those guards also prevented the checkboxes for advanced items getting the right value when going into advanced mode. Note that if the user makes changes to advanced mode stuff and leaves advanced mode, those changes are lost. That seems reasonable so I didn't change it -- and it made this fix simple. --- diff --git a/IkiWiki/Plugin/websetup.pm b/IkiWiki/Plugin/websetup.pm index 2674b91e8..0ab18997c 100644 --- a/IkiWiki/Plugin/websetup.pm +++ b/IkiWiki/Plugin/websetup.pm @@ -219,7 +219,8 @@ sub showfields ($$$@) { options => [ [ 1 => $description ] ], fieldset => $section, ); - if (! $form->submitted) { + if (! $form->submitted || + ($info{advanced} && $form->submitted eq 'Advanced Mode')) { $form->field(name => $name, value => $value); } } diff --git a/debian/changelog b/debian/changelog index fb012abd2..6d333a843 100644 --- a/debian/changelog +++ b/debian/changelog @@ -11,6 +11,7 @@ ikiwiki (3.20100927) UNRELEASED; urgency=low feature. * actiontabs: More consistent styling of Hn tags. * websetup: Fix saving of advanced mode changes. + * websetup: Fix defaults of checkboxes in advanced mode. -- Joey Hess Wed, 29 Sep 2010 11:58:23 -0400