#!/usr/pkg/bin/perl

use CGI qw{ :standard } ;

print header, start_html{ -title=>'Time Diff' } ;
print "<pre>" ;

print "TIME ZONE INFO:\n\n" ;

$ENV{'TZ'} = "/usr/share/zoneinfo/PRC" ;
print "Shanghai:   " . `date '+%l%p, %A'` ;
$hr{ 'Shanghai' } = `date '+%k'` ;

$ENV{'TZ'} = "/usr/share/zoneinfo/US/Pacific" ;
print "California: " . `date '+%l%p, %A'` ;
$hr{ 'Cali' } = `date '+%k'` ;

$ENV{'TZ'} = "/usr/share/zoneinfo/US/Michigan" ;
print "Michigan:   " . `date '+%l%p, %A'` ;
$hr{ 'Mich' } = `date '+%k'` ;

print "\n" ;

for( $i = 0; $i <= 23 * 3 ; $i++ ) { $line[$i] = " " ; }
foreach $loc ( keys %hr ) {
    $loc_len = scalar ( split( //, $loc ) ) ;
    $pos = $hr{ $loc } * 3 + 1 - $loc_len / 2 ;
    $pos_max = 23 * 3 + 3 - $loc_len ;
    $pos = 0 if $pos < 0 ;
    $pos = $pos_max if $pos > $pos_max ;
    for( $i = 0; $i < $loc_len; $i++ ) { 
	$line[$pos + $i] = ( split( //, $loc ) )[$i] ;
    }
}

print join( '', @line ) . "\n" ;
print "00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23\n" ;
print "\n" ;

print "</pre>" ;
print end_html ;
