#! /usr/local/bin/perl5 use CGI qw/:standard :html3 :netscape/; $SYNOPDIR = "/synoptic/carrot"; if ($mag = param( 'mag' )) {} else {$mag = ""} if ($intens = param( 'intens' )) {} else {$intens = ""} #$mag = param( 'mag' ); #$intens = param( 'intens' ); $cr = param( 'cr' ); if ( ! $mag && ! $intens ) { print_error(); exit; } if ( $cr =~ /^\d{4}\.\d{2}\.\d{2}$/ ) { $date = $cr; if ( $date le "1996.05.05" ) { print_date_error(); exit; } open (CR_TABLE, "/home/jeneen/campaigns/doc/cr_table.rdb"); while ( ) { ($CR,$START,$FOO,$END) = split; if ( ($date ge "$START") && ($date le "$END") ) { $cr = $CR; $start = $START; $end = $END; } } close CR_TABLE; } if ( ($cr < 1909) || ($cr !~ /^\d{4}$/)) { print_cr_error(); exit; } else { open (CR_TABLE, "/home/jeneen/campaigns/doc/cr_table.rdb"); while ( ) { ($CR,$START,$FOO,$END) = split; if ( $cr == $CR ) { $start = $START; $end = $END; } } close CR_TABLE; } if ( -e "$SYNOPDIR/M/$cr/synop_M_0.$cr.fits" ) { $mag0_fits_entry = "synop_M_0.$cr.fits
"; }else{ $mag0_fits_entry = "Central Meridian Fits File not Available
"; } if ( -e "$SYNOPDIR/M/$cr/synop_M_30E.$cr.fits" ) { $mag30E_fits_entry = "synop_M_30E.$cr.fits
"; }else{ $mag30E_fits_entry = "30E Fits File not Available
"; } if ( -e "$SYNOPDIR/M/$cr/synop_M_30W.$cr.fits" ) { $mag30W_fits_entry = "synop_M_30W.$cr.fits
"; }else{ $mag30W_fits_entry = "30W Fits File not Available
"; } if ( -e "$SYNOPDIR/M/$cr/synop_M_60E.$cr.fits" ) { $mag60E_fits_entry = "synop_M_60E.$cr.fits
"; }else{ $mag60E_fits_entry = "60E Fits File not Available
"; } if ( -e "$SYNOPDIR/M/$cr/synop_M_60W.$cr.fits" ) { $mag60W_fits_entry = "synop_M_60W.$cr.fits
"; }else{ $mag60W_fits_entry = "60W Fits File not Available
"; } if ( -e "$SYNOPDIR/M/$cr/synop_M_0.$cr.gif" ) { $mag0_gif_entry = "synop_M_0.$cr.gif
"; }else{ $mag0_gif_entry = "Central Meridian GIF File not Available
"; } if ( -e "$SYNOPDIR/M/$cr/synop_M_30E.$cr.gif" ) { $mag30E_gif_entry = "synop_M_30E.$cr.gif
"; }else{ $mag30E_gif_entry = "30E GIF File not Available
"; } if ( -e "$SYNOPDIR/M/$cr/synop_M_30W.$cr.gif" ) { $mag30W_gif_entry = "synop_M_30W.$cr.gif
"; }else{ $mag30W_gif_entry = "30W GIF File not Available
"; } if ( -e "$SYNOPDIR/M/$cr/synop_M_60E.$cr.gif" ) { $mag60E_gif_entry = "synop_M_60E.$cr.gif
"; }else{ $mag60E_gif_entry = "60E GIF File not Available
"; } if ( -e "$SYNOPDIR/M/$cr/synop_M_60W.$cr.gif" ) { $mag60W_gif_entry = "synop_M_60W.$cr.gif
"; }else{ $mag60W_gif_entry = "60W GIF File not Available
"; } if ( -e "$SYNOPDIR/Ic/$cr/synop_Ic_N=3.$cr.fits" ) { $int3_fits_entry = "synop_Ic_N=3.$cr.fits
"; }else{ $int3_fits_entry = "3N Fits File not Available
"; } if ( -e "$SYNOPDIR/Ic/$cr/synop_Ic_N=5.$cr.fits" ) { $int5_fits_entry = "synop_Ic_N=5.$cr.fits
"; }else{ $int5_fits_entry = "5N Fits File not Available
"; } if ( -e "$SYNOPDIR/Ic/$cr/synop_Ic_N=3.$cr.gif" ) { $int3_gif_entry = "synop_Ic_N=3.$cr.gif
"; }else{ $int3_gif_entry = "3N GIF File not Available
"; } if ( -e "$SYNOPDIR/Ic/$cr/synop_Ic_N=5.$cr.gif" ) { $int5_gif_entry = "synop_Ic_N=5.$cr.gif
"; }else{ $int5_gif_entry = "5N GIF File not Available
"; } print_mag() if ( ($mag ne "") && ($intens eq "") ); print_int() if ( ($intens ne "") && ($mag eq "") ); print_mag_int() if ( ($intens ne "") && ($mag ne "") ); sub print_mag { print header, start_html (-bgcolor=>'white',-title=>"MDI"), table({border=>'2',-width=>300,-cellpadding=>10,-align=>center}, th({-colspan=>2,-align=>CENTER},font({-size=>"+1",-color=>purple},"Magnetic Field Synoptic Charts for Carrington Rotation $cr",br,"start: $start",br,"end: $end",p), font({-size=>"-1"},"click-shift to download files")), Tr({-align=>CENTER},td["$mag0_fits_entry","$mag0_gif_entry"]), Tr({-align=>CENTER},td["$mag60E_fits_entry $mag30E_fits_entry $mag0_fits_entry $mag30W_fits_entry $mag60W_fits_entry", "$mag60E_gif_entry $mag30E_gif_entry $mag0_gif_entry $mag30W_gif_entry $mag60W_gif_entry"]), Tr({-align=>CENTER},td({-colspan=>2},["Back"])) ); print end_html; } sub print_int { print header, start_html (-bgcolor=>'white',-title=>"MDI"), table({border=>'2',-width=>300,-cellpadding=>10,-align=>center}, th({-colspan=>2,-align=>CENTER},font({-size=>"+1",-color=>purple},"Intensity Synoptic Charts for Carrington Rotation $cr",br,"start: $start",br, "end: $end",p), font({-size=>"-1"},"click-shift to download files")), Tr({-align=>CENTER},td["$int3_fits_entry $int5_fits_entry", "$int3_gif_entry $int5_gif_entry"]), Tr({-align=>CENTER},td({-colspan=>2},["Back"])) ); print end_html; } sub print_mag_int { print header, start_html (-bgcolor=>'white',-title=>"MDI"), table({border=>'2',-width=>300,-cellpadding=>10,-align=>center}, th({-colspan=>2,-align=>CENTER},font({-size=>"+1",-color=>purple},"Magnetic Field & Intensity Synoptic Charts for Carrington Rotation $cr",br,"start: $start",br,"end: $ end",p), font({-size=>"-1"},"click-shift to download files")), Tr({-align=>CENTER},td["$mag0_fits_entry","$mag0_gif_entry"]), Tr({-align=>CENTER},td["$mag60E_fits_entry $mag30E_fits_entry $mag0_fits_entry $mag30W_fits_entry $mag60W_fits_entry", "$mag60E_gif_entry $mag30E_gif_entry $mag0_gif_entry $mag30W_gif_entry $mag60W_gif_entry"]), Tr({-align=>CENTER},td["$int3_fits_entry $int5_fits_entry", "$int3_gif_entry $int5_gif_entry"]), Tr({-align=>CENTER},td({-colspan=>2},["Back"])) ); print end_html; } sub print_error { print header, start_html (-bgcolor=>'white'), "

Oops...please specify magnetic and/or intensity data.

", "Back", end_html; } sub print_cr_error { print header, start_html (-bgcolor=>'white'), "

Oops...Carrington Rotation cannot be earlier than 1909

", "Back", end_html; } sub print_date_error { print header, start_html (-bgcolor=>'white'), "

Oops...Date cannot be earlier than 1996.05.06

", "Back", end_html; }