51 |
, qq|<select type=select name=$name>| |
, qq|<select type=select name=$name>| |
52 |
, join("\n", map { my $selected = $_ eq $selected_option ? 'selected' : ''; qq|<option name=$_ $selected>$_</option>| } @_ ) |
, join("\n", map { my $selected = $_ eq $selected_option ? 'selected' : ''; qq|<option name=$_ $selected>$_</option>| } @_ ) |
53 |
, qq|</select>| |
, qq|</select>| |
|
, qq|</form>| |
|
54 |
); |
); |
55 |
} |
} |
56 |
|
|
70 |
my ($ip,$conf,$format) = @_; |
my ($ip,$conf,$format) = @_; |
71 |
my @editable = splice(@_,3); |
my @editable = splice(@_,3); |
72 |
|
|
73 |
warn "# conf ",dump( $ip, $conf, $format, [ @editable ] ); |
# warn "# conf ",dump( $ip, $conf, $format, [ @editable ] ); |
74 |
|
|
75 |
$format ||= 'inline'; |
$format ||= 'inline'; |
76 |
|
|
83 |
( $name, qq|<input name=$name value="$html" size=$size>| ) |
( $name, qq|<input name=$name value="$html" size=$size>| ) |
84 |
} else { |
} else { |
85 |
if ( $name eq 'amt' ) { |
if ( $name eq 'amt' ) { |
86 |
$html = qq|<a title="$html" href=http://$ip:16992/logon.htm target=$ENV{AMT_HOST}>$ENV{AMT_HOST}</a>|; |
my $amt_ip = amt::ip($ip,$html); |
87 |
|
# $html contains password! |
88 |
$html .= qq| power: | |
$html = qq|<a href=http://$amt_ip:16992/logon.htm target=$amt_ip>$amt_ip</a>|; |
89 |
. ( amt::power_on($ip) |
|
90 |
|
if ( $format ne 'inline' ) { |
91 |
|
my $power = amt::power_on($ip); |
92 |
|
$html .= qq| power: | |
93 |
|
. ( $power |
94 |
? qq|<a href=/amt/PowerDown/$ip title="turn off">on</a>| |
? qq|<a href=/amt/PowerDown/$ip title="turn off">on</a>| |
95 |
: qq|<a href=/amt/PowerUp/$ip title="turn on" >off</a>| |
: qq|<a href=/amt/PowerUp/$ip title="turn on" >off</a>| |
96 |
) if $format ne 'inline'; |
); |
97 |
|
client::conf( $ip, 'power' => $power ? 'on' : 'off' ); |
98 |
|
} |
99 |
} elsif ( $name eq 'ssh' ) { |
} elsif ( $name eq 'ssh' ) { |
100 |
$html =~ s{\s(\S{16}).+(\S{16})\s}{ $1..$2 }; |
$html =~ s{\s(\S{16}).+(\S{16})\s}{ $1..$2 }; |
101 |
chomp($html); |
chomp($html); |
102 |
|
} elsif ( $name eq 'kvm' ) { |
103 |
|
$html = qq|<a href="/start_stop/kvm?nr=$html">$html</a>|; |
104 |
} |
} |
105 |
$html = qq|<pre style="display: inline">$html</pre>| |
$html = qq|<tt>$html</tt>| |
106 |
unless |
unless |
107 |
$html =~ s{\b(\S+)\t(\S+)\t(\S+)\b}{<b title="$1/$2">$3</b> }gs; |
$html =~ s{\b(\S+)\t(\S+)\t(\S+)\b}{<b title="$1/$2">$3</b> }gs; |
108 |
|
|
109 |
if ( $format =~ /edit|table/ ) { |
if ( $format =~ /edit|table/ ) { |
110 |
( $name, $html ); |
( $name, $html ); |
111 |
} else { |
} else { |
112 |
qq|<em>$name</em> $html<br>| |
qq|<div class="config $name"><em>$name</em> $html</div>| |
113 |
} |
} |
114 |
} |
} |
115 |
} sort keys %$conf; |
} grep { length($conf->{$_}) > 0 } sort keys %$conf; |
116 |
|
|
117 |
$format eq 'inline' ? join("\n", @opts) : @opts; |
$format eq 'inline' ? join("\n", @opts) : @opts; |
118 |
} |
} |