;
} elsif ( $path =~ m{^/server} ) {
- if ( my $c = $param->{new_clients} ) {
- server::shared( 'new_clients', $c );
+ foreach my $name ( keys %$param ) {
+ eval '$server::' . $name . '= $param->{$name}';
}
+ my @table = (
+ 'debug' => qq|<a href=/our/debug/| . boolean::toggle($debug) . qq|>$debug</a>|,
+ , 'new_clients' => qq|<input type=text name=new_clients size=3 value="$server::new_clients">|
+ );
+
+ foreach my $editable ( 'ip', 'netmask', 'ip_from', 'ip_to', 'domain' ) {
+ my $v = eval '$server::' . $editable;
+ push @table, ( $editable, qq|<input type=text name=$editable value="$v">| );
+ }
+
+ foreach my $readonly ( 'base_dir', 'conf' ) {
+ my $v = eval '$server::' . $readonly;
+ push @table, ( $readonly, html::tt $v );
+ }
+
print $client ok
, qq|<form method=get>|
- , html::table( 2,
- 'debug' => qq|<a href=/our/debug/| . boolean::toggle($debug) . qq|>$debug</a>|,
- 'new_clients' => qq|<input type=text name=new_clients size=3 value="| . server::shared( 'new_clients' ) . qq|">|,
- map {
- ( $_, html::tt eval '$server::'.$_ )
- } ( 'ip', 'netmask', 'ip_from', 'ip_to', 'domain', 'base_dir', 'conf' )
- )
- , qq|</form>|
+ , html::table( 2, @table )
+ , qq|
+ <input type=submit name=action value=change>
+ </form>
+ |
;
+
} elsif ( $path =~ m!^/client(?:/$RE{net}{IPv4}{-keep})?! ) {
my $ip = $1;
$title = $ip;