use radio, not checkbox, for booleans
Had to do this due to one of CGI::FormBuilder's more annoying quirks -- it loses the value of a checkbox field with only one option, always treating it as checked.master
parent
3905645342
commit
2a712c8817
|
@ -102,11 +102,14 @@ sub showfields ($$$@) { #{{{
|
||||||
my $name="enable.$plugin";
|
my $name="enable.$plugin";
|
||||||
$form->field(
|
$form->field(
|
||||||
name => $name,
|
name => $name,
|
||||||
label => "",
|
label => sprintf(gettext("enable %s?"), $plugin),
|
||||||
type => "checkbox",
|
type => "radio",
|
||||||
options => [ [ 1 => sprintf(gettext("enable %s?"), $plugin) ] ],
|
|
||||||
value => $enabled,
|
value => $enabled,
|
||||||
fieldset => $section,
|
fieldset => $section,
|
||||||
|
options => [
|
||||||
|
[ 1 => gettext("Yes") ],
|
||||||
|
[ 0 => gettext("No") ]
|
||||||
|
],
|
||||||
);
|
);
|
||||||
if ($plugin_forced) {
|
if ($plugin_forced) {
|
||||||
$form->field(name => $name, disabled => 1);
|
$form->field(name => $name, disabled => 1);
|
||||||
|
@ -178,10 +181,13 @@ sub showfields ($$$@) { #{{{
|
||||||
elsif ($info{type} eq "boolean") {
|
elsif ($info{type} eq "boolean") {
|
||||||
$form->field(
|
$form->field(
|
||||||
name => $name,
|
name => $name,
|
||||||
label => "",
|
label => $description,
|
||||||
type => "checkbox",
|
type => "radio",
|
||||||
value => $value,
|
value => $value,
|
||||||
options => [ [ 1 => $description ] ],
|
options => [
|
||||||
|
[ 1 => gettext("Yes") ],
|
||||||
|
[ 0 => gettext("No") ]
|
||||||
|
],
|
||||||
fieldset => $section,
|
fieldset => $section,
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
@ -231,6 +237,7 @@ sub showform ($$) { #{{{
|
||||||
[plugins => gettext("plugins")]
|
[plugins => gettext("plugins")]
|
||||||
],
|
],
|
||||||
action => $config{cgiurl},
|
action => $config{cgiurl},
|
||||||
|
table => 0,
|
||||||
template => {type => 'div'},
|
template => {type => 'div'},
|
||||||
stylesheet => IkiWiki::baseurl()."style.css",
|
stylesheet => IkiWiki::baseurl()."style.css",
|
||||||
);
|
);
|
||||||
|
@ -345,14 +352,12 @@ sub showform ($$) { #{{{
|
||||||
delete $rebuild{$field};
|
delete $rebuild{$field};
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
print STDERR ">>$key (@value) ($config{$key})\n";
|
|
||||||
$config{$key}=$value[0];
|
$config{$key}=$value[0];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (%rebuild && ! $form->field("rebuild_asked")) {
|
if (%rebuild && ! $form->field("rebuild_asked")) {
|
||||||
print STDERR ">>".(join "," , keys %rebuild)."\n";
|
|
||||||
my $required=0;
|
my $required=0;
|
||||||
foreach my $field ($form->field) {
|
foreach my $field ($form->field) {
|
||||||
$required=1 if $rebuild{$field};
|
$required=1 if $rebuild{$field};
|
||||||
|
|
Loading…
Reference in New Issue