#!/usr/local/bin/perl # # simple test script use CGI; $query = new CGI; $yy = $query->param('yy'); $mm = $query->param('mm'); $dd = $query->param('dd'); $year=$yy+1900; if($year<1996){ $year+=100; } $daystamp= sprintf "%04d/%02d/%02d",$year,$mm,$dd; # Form the names for the real keograms $han = sprintf "../HAN.%02d%02d/HAN_%02d%02d%02d.jpg",$yy,$mm,$yy,$mm,$dd; $muo = sprintf "../MUO.%02d%02d/MUO_%02d%02d%02d.jpg",$yy,$mm,$yy,$mm,$dd; $kil = sprintf "../KIL.%02d%02d/KIL_%02d%02d%02d.jpg",$yy,$mm,$yy,$mm,$dd; $kev = sprintf "../KEV.%02d%02d/KEV_%02d%02d%02d.jpg",$yy,$mm,$yy,$mm,$dd; $abk = sprintf "../ABK.%02d%02d/ABK_%02d%02d%02d.jpg",$yy,$mm,$yy,$mm,$dd; $lyr = sprintf "../LYR.%02d%02d/LYR_%02d%02d%02d.jpg",$yy,$mm,$yy,$mm,$dd; $sod = sprintf "../SOD.%02d%02d/SOD_%02d%02d%02d.jpg",$yy,$mm,$yy,$mm,$dd; $nal = sprintf "../NAL.%02d%02d/SOD_%02d%02d%02d.jpg",$yy,$mm,$yy,$mm,$dd; # Form the names for the small keograms $han_s = sprintf "../HAN_s.%02d%02d/HAN_%02d%02d%02d_s.jpg",$yy,$mm,$yy,$mm,$dd; $muo_s = sprintf "../MUO_s.%02d%02d/MUO_%02d%02d%02d_s.jpg",$yy,$mm,$yy,$mm,$dd; $kil_s = sprintf "../KIL_s.%02d%02d/KIL_%02d%02d%02d_s.jpg",$yy,$mm,$yy,$mm,$dd; $kev_s = sprintf "../KEV_s.%02d%02d/KEV_%02d%02d%02d_s.jpg",$yy,$mm,$yy,$mm,$dd; $abk_s = sprintf "../ABK_s.%02d%02d/ABK_%02d%02d%02d_s.jpg",$yy,$mm,$yy,$mm,$dd; $lyr_s = sprintf "../LYR_s.%02d%02d/LYR_%02d%02d%02d_s.jpg",$yy,$mm,$yy,$mm,$dd; $sod_s = sprintf "../SOD_s.%02d%02d/SOD_%02d%02d%02d_s.jpg",$yy,$mm,$yy,$mm,$dd; $nal_s = sprintf "../NAL_s.%02d%02d/NAL_%02d%02d%02d_s.jpg",$yy,$mm,$yy,$mm,$dd; $hankasalmi="\"Not\n"; $sodankyla="\"Not\n"; $muonio="\"Not\n"; $kilpisjarvi="\"Not\n"; $kevo="\"Not\n"; $abisko="\"Not\n"; $longyearbyen="\"Not\n"; $nyalesund="\"Not\n"; if (-e $han_s) { $hankasalmi = sprintf "\"%s\"",$han,$han_s,$han; } if (-e $sod_s) { $sodankyla = sprintf "\"%s\"",$sod,$sod_s,$sod; } if (-e $muo_s) { $muonio = sprintf "\"%s\"",$muo,$muo_s,$muo; } if (-e $kil_s) { $kilpisjarvi = sprintf "\"%s\"",$kil,$kil_s,$kil; } if (-e $kev_s) { $kevo = sprintf "\"%s\"",$kev,$kev_s,$kev; } if (-e $abk_s) { $abisko = sprintf "\"%s\"",$abk,$abk_s,$abk; } if (-e $lyr_s) { $longyearbyen = sprintf "\"%s\"",$lyr,$lyr_s,$lyr; } if (-e $nal_s) { $nyalesund = sprintf "\"%s\"",$nal,$nal_s,$nal; } #------------------------------------------------------------ # Okay, if there is no directory for the full sized keograms, we'll assume # the station is closed $lyr_dir= sprintf "../LYR.%02d%02d",$yy,$mm; if (! -e $lyr_dir) { $longyearbyen = sprintf "\"Station\n"; } print "Content-type:text/html\n\n"; print < FMI/ASC Keograms


FMI/GEO All-sky camera keograms $daystamp

Please note that these keograms are raw data thus NOT SUITABLE for publicications in this format. If you would like to do research based on our data, please contact Kirsti.Kauristie\@fmi.fi for detailed instrument description, proper keograms and data interpretation. The camera in Sodankylä is run by the Sodankylä Geophysical Observatory.


Do YOU know how to INTERPRET the raw data given here?

Hankasalmi Muonio Kilpisjärvi Kevo Abisko Longyearbyen Sodankylä NyAlesund
$hankasalmi $muonio $kilpisjarvi $kevo $abisko $longyearbyen $sodankyla $nyalesund

© Finnish Meteorological Institute, Geophysical Research
EndOfHtml ; #------------------------------------------------------------------- # Add the name of the computer requesting the form to a list # Get the name of the remote host; separate the domain name $remhost = $ENV{REMOTE_HOST}; if($remhost eq ''){ $remhost = $ENV{REMOTE_ADDR}; $domain = $remhost; } else { $remhost =~ /\D\.(\D*)\.(\D*)/; $domain=$1.".".$2; } $today=`date +"%Y/%m/%d %T"`; chop($today); umask 002; if(open(SEARCHLIST,">>/xx/home/aft/syrjasuo/public_html/Searchstats/keorequests.txt")){ print SEARCHLIST "$today $remhost asked for keograms on $daystamp\n"; close(SEARCHLIST); }