--- db2gantt.cgi 2002/09/13 18:35:50 1.11 +++ db2gantt.cgi 2002/09/13 23:59:38 1.14 @@ -11,7 +11,7 @@ my $debug = 0; my $width = 600; # width of bar -my $height = 12; # height of bar +my $height = 19; # height of bar my $use_js = 1; # use JavaScript pop-up # status colors @@ -75,10 +75,12 @@ } print "Content-type: text/html +Cache-Control: max-age=60, must-revalidate -OmniBack Gantt: $from - $to"; +OmniBack Gantt: $from - $to +"; if ($use_js) { print ' @@ -112,7 +114,7 @@ return "url(-relative=>1)."?from_t=${f}&to_t=${t}\">$ch"; } -print ""; +print "
"; print "\n" if ($curr_t != $from_t); + ($fix_s,$fix_d) = (0,0); # init fix vars for bar print "
Specification"; print mknav(($from_t-$int_t),$to_t,'<<'),$from; print mknav(($from_t+$int_t),$to_t,'>>') if ($from_t+$int_t < $to_t); @@ -125,6 +127,7 @@ print "
hour grid"; my @c = ("255,255,128","255,192,128"); my $hr=strftime("%H",localtime ($from_t)); + my $min_l=1; print color_bar(3600 - $from_t % 3600,$c[0],sprintf("%02d",$hr++ % 24)); for (my $i=1; $i 1) { + my $i = $fix_s ; $i = int($i); + $fix_s -= $i; + $size += $i; + } + + if ($alt && $size < $min_l) { $fix_d += ($min_l - $size); print STDERR "fix_d: $fix_d\n" if ($debug); $size = $min_l; @@ -217,6 +231,7 @@ } print "
", $row->{specification},""; $curr_t = $from_t; # init timeline @@ -224,14 +239,18 @@ } - my $start_t = m_round(str2time($row->{start})); - my $fin_t = m_round(str2time($row->{finish})); + my $start_t = str2time($row->{start}); + my $fin_t = str2time($row->{finish}); - if ($start_t > $curr_t + 60) { + # Can I squeeze here 1 pixel of time (many seconds) ? + if ($start_t > $curr_t + ($len_t / $width)) { my $t = $start_t - $curr_t; print STDERR "[middle filler $curr_t:$t]" if ($debug); print bar($t); $curr_t = $start_t; + } else { + # prepend too few seconds to next event + $start_t = $curr_t; } my $len = $fin_t - $start_t; @@ -298,5 +317,5 @@ # it will first evaluate bar sub (thus increasing number by one) and # then display number (wrongly). } -print "
\n

Reload url(-relative=>1),"\">current.

"; +print "\n

Reload url(-relative=>1),"\">current or see help.

";