#!/usr/bin/perl -w # Jeff Vinocur, 2001 # jeff@litech.org use strict; use CGI; $|++; my $q = new CGI; my @params = $q->param(); my $gotparam = 0; my $inside = undef; my $small = undef; my $insidetext = ''; my $smalltext = ''; my $valuetext = ''; if (my $error = $q->cgi_error()) { print $q->header(-status => $error); exit 0; } my $now = scalar localtime; my $delay = 300; if( @params ) { $inside = $q->param('inside'); $small = $q->param('small'); my $d = $q->param('delay'); if( defined($d) && ($d =~ /^\d+$/) && ($d >= 5 || $d == 0) ) { $delay = $d; $gotparam = 1; } } my $baseurl = $q->url(-relative=>1) . '?'; if( defined $inside ) { $inside = '1' if( $inside eq ''); $insidetext = "inside=${inside}&" } if( defined $small ) { $small = '1' if( $small eq ''); $smalltext = "small=${small}&"; } else { $small = 0; } my $self = $baseurl . $insidetext . $smalltext . "delay"; print $q->header(-expires=>'+1h'), # $q->header(-pragma=>'no-cache'), $q->start_html( -title=>'Webcam', -BGCOLOR=>'#AAAAAA', -TEXT=>'#000000', -LINK=>'#0000ee', -VLINK=>'#551a8b', #Yuck, what a hack: # -head=>$q->meta($delay ? {-http_equiv=>'refresh', # -content=>"$delay;URL=$self=$delay"} # : {-name=>'keywords',-content=>'webcam'}), ); print "\n", $q->start_form({-method=>"GET"}), $q->table({-border=>'2',-align=>'center',-cellpadding=>'3'}, "\n", $q->Tr($q->td({ -align=>'center'}, $now )), "\n", $q->Tr($q->td({ -align=>'center'}, $q->a( {-href=>"${baseurl}${insidetext}small=" . ( (defined $small && $small) ? 0 : 1) . "&delay=$delay"}, $q->img( {-src=>(defined $inside && $inside ? 'http://pit003:8080/all.jpg' : 'http://www.litech.org/~webcam/all.jpg'), -alt=>'[You\'re missing all the fun]', -height=>($small?'240':'480'), -width=> ($small?'320':'640'), -border=>'0'})) )), "\n", $q->Tr($q->td({ -align=>'center'}, $q->a( {-href=>"http://www.litech.org/~webcam/archive/"}, 'Archive' ) )), "\n", $q->Tr($q->td({ -align=>'center'}, )), "\n", $q->Tr($q->td({ -align=>'center'}, 'Wait ', $q->textfield( -name=>'delay', -default=>$delay, -override=>!$gotparam, -size=>'"4"'), 'seconds before reloading.', (defined $inside && $inside ? $q->hidden( -name=>'inside', -value=>"$inside" ) : '') )), "\n", $q->Tr($q->td({ -align=>'center'}, join(' ', ( $q->a( {-href=>"$self=$delay"}, 'Now'), $q->a( {-href=>"$self=10"}, '10 sec'), $q->a( {-href=>"$self=60"}, '1 min'), $q->a( {-href=>"$self=300"}, '5 min'), $q->a( {-href=>"$self=6000"}, '1 hr'), $q->a( {-href=>"$self=0"}, 'Never'), )) )), "\n", ), "\n", $q->end_form(), "\n\n"; print "\n"; print $q->end_html(); 1;