System variables use _, but command line variables use -

https://github.com/webmin/webmin/issues/2568
This commit is contained in:
Jamie Cameron
2025-10-12 21:47:40 -07:00
parent b9e3363a68
commit 48c5fc2138

View File

@ -10,7 +10,13 @@ $access{'perms'} == 1 || &error($text{'vars_ecannot'});
print &ui_alert_box(&text('vars_desc', 'edit_cnf.cgi'), 'warn');
# Work out which ones can be edited
%canedit = map { $_->[0], 1 } &list_system_variables();
my %canedit;
foreach my $v (&list_system_variables()) {
my $vn = $v->[0];
$canedit{$vn} = 1;
$vn =~ s/-/_/g;
$canedit{$vn} = 1;
}
# Show search form
print &ui_form_start("list_vars.cgi", undef, undef, "style='float: right;'");
@ -22,12 +28,6 @@ print &ui_form_end();
$d = &execute_sql($master_db, "show variables".
($in{'search'} ? " like '%".quotemeta($in{'search'})."%'" : ""));
if (@{$d->{'data'}}) {
print &ui_form_start("save_vars.cgi");
print &ui_hidden("search", $in{'search'});
@tds = ( "width=5" );
print &ui_columns_start([ "",
$text{'vars_name'},
$text{'vars_value'} ], 100, 0, \@tds);
@{$d->{'data'}} = sort {
# Editing now (highest priority)
($d{$b->[0]} <=> $d{$a->[0]}) ||
@ -35,7 +35,14 @@ if (@{$d->{'data'}}) {
($canedit{$b->[0]} <=> $canedit{$a->[0]}) ||
# Natural sort for equal priority
$a->[0] cmp $b->[0]
} @{$d->{'data'}};
} @{$d->{'data'}};
print &ui_form_start("save_vars.cgi");
print &ui_hidden("search", $in{'search'});
@tds = ( "width=5" );
print &ui_columns_start([ "",
$text{'vars_name'},
$text{'vars_value'} ], 100, 0, \@tds);
foreach $v (@{$d->{'data'}}) {
if (!$canedit{$v->[0]}) {
# Cannot edit, so just show value