--- db2gantt.cgi 2002/09/13 13:57:32 1.7
+++ db2gantt.cgi 2002/09/13 14:34:02 1.9
@@ -25,6 +25,7 @@
'Completed/Errors' => '255,128,0',
'Completed/Failure' => '128,0,128',
'Mount Request' => '128,128,255',
+ 'Mount/Errors' => '255,64,128',
);
my $int_t = (12 * 60 * 60); # interval to display on one screen
@@ -34,14 +35,21 @@
# time range
+$int_t = m_round($int_t);
+
my ($from_t,$to_t) = (time()-$int_t,time());
$to_t = param('to_t') if (param('to_t'));
$from_t = param('from_t') if (param('from_t'));
# round to nearest minute
-$to_t = $to_t - ($to_t % 60);
-$from_t = $from_t - ($from_t % 60) + 60;
+sub m_round {
+ my $t = shift @_;
+ return ($t - ($t % 60));
+}
+
+$to_t = m_round($to_t);
+$from_t = m_round($from_t);
my $to=strftime("%Y-%m-%d %H:%M",localtime ($to_t));
my $from=strftime("%Y-%m-%d %H:%M",localtime ($from_t));
@@ -120,12 +128,14 @@
my $size = int($l / ($len_t / $width));
if ($size < $min_l) {
+ $fix_d += ($min_l - $size);
+ print STDERR "fix_d: $fix_d\n" if ($debug);
$size = $min_l;
- $fix_d += $min_l;
}
if ($fix_d && $size > $fix_d+$min_l) {
$size -= $fix_d;
$fix_d = 0;
+ print STDERR "fix_d: $fix_d\n" if ($debug);
}
print STDERR "bar[$status] len:$l s scale:",($len_t/$width)," size:$size px
alt:$alt\n" if ($debug);
@@ -133,7 +143,11 @@
my $html = "url(-relative=>1)."?pic=";
if ($status) {
- $html .= $cols{$status};
+ if ($cols{$status}) {
+ $html .= $cols{$status};
+ } else {
+ $html .= "0,0,0"; # unknown status, black
+ }
$count{$status}++;
} else {
# $html .= '240,240,240';
@@ -185,10 +199,10 @@
}
- my $start_t = str2time($row->{start});
- my $fin_t = str2time($row->{finish});
+ my $start_t = m_round(str2time($row->{start}));
+ my $fin_t = m_round(str2time($row->{finish}));
- if ($start_t > $curr_t) {
+ if ($start_t > $curr_t + 60) {
my $t = $start_t - $curr_t;
print STDERR "[middle filler $curr_t:$t]" if ($debug);
print bar($t);
@@ -251,9 +265,11 @@
print "
status | # | color |
---|---|---|
$status | ",$count{$status}-1," | ",bar($count{$status},$status)," |
$status | ",$count{$status}*1," | ",bar($count{$status},$status)," |
Reload url(-relative=>1),"\">current.