/[pxelator]/lib/PXElator/html.pm
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Diff of /lib/PXElator/html.pm

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 378 by dpavlin, Sun Aug 30 15:54:02 2009 UTC revision 559 by dpavlin, Sat Feb 12 14:47:00 2011 UTC
# Line 51  sub select { Line 51  sub select {
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    
# Line 71  sub conf { Line 70  sub conf {
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    
# Line 84  sub conf { Line 83  sub conf {
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|<pre style="display: inline">$html</pre>|                                  $html = qq|<a href="/start_stop/kvm?nr=$html">$html</a>|;
104                          unless                          } elsif ( $name eq 'munin' ) {
105                          $html =~ s{\b(\S+)\t(\S+)\t(\S+)\b}{<b title="$1/$2">$3</b> }gs;                                  $html = join("\n", map { my $url = $_; $url =~ s/-d\w+\.\w+$/.html/; qq|<a href="$url"><div style="float:right;overflow:hidden;width:415px;height:180px"><img src="$_" style="margin: -30px 0 0 -60px"></div></a>| } split(/\s+/s,$html));
106                            } elsif ( $name eq 'ports' ) {
107                                    $html =~ s{\b(\S+)\t(\S+)\t(\S+)\b}{<b title="$1/$2">$3</b> }gs;
108                            } else {
109                                    $html = qq|<tt>$html</tt>|;
110                            };
111                                    
112                          if ( $format =~ /edit|table/ ) {                          if ( $format =~ /edit|table/ ) {
113                                  ( $name, $html );                                  ( $name, $html );
114                          } else {                          } else {
115                                  qq|<em>$name</em> $html<br>|                                  qq|<div class="config $name"><em>$name</em> $html</div>|
116                          }                          }
117                  }                  }
118          } sort keys %$conf;          } grep { length($conf->{$_}) > 0 } sort keys %$conf;
119    
120          $format eq 'inline' ? join("\n", @opts) : @opts;          $format eq 'inline' ? join("\n", @opts) : @opts;
121  }  }

Legend:
Removed from v.378  
changed lines
  Added in v.559

  ViewVC Help
Powered by ViewVC 1.1.26