#!/usr/bin/perl # #.file emmi.cgi #.purpose send an set-up request for EMMI #.version 2004-08-21T21:30:00 fixed glitch with BSFilt REMD ohainaut #.history # 2004-06-29T23:14:36 Tue added REMD focus mode # 2004-06-12 ohainaut first release. # 2004-06-07 creation as emmi.cgi # 2003-04-01 creation as EoM from astrolabe.cgi ohainaut # 2006-01-05 Adapted for new remedy server - wlsremdy.ls.eso.org jparra #---------------------------------------------------------------------- use CGI; $query = new CGI; # a directory where web user can write $writePath="/tmp/"; # email to which the form content must be sent. # (escape \@) $suEmail="ls-ntt\@eso.org, epompei\@eso.org"; # email of Remedy $remedyEmail="esoarsls\@eso.org"; # which email command to use $whichMail="/usr/bin/mailx"; # $whichMail="/bin/mail"; $sendmail="/usr/sbin/sendmail -t"; #--- INSTRUMENT DEFINITION: # # Instrument Scientist, this is where you want to modify things # # In this section, define the authorized values for the various # optical elements. %labelGratBl = ('0', '--none requested--', '1', 'BLMD#1: test mirror & BLMD#4: 300/0.170', '2', 'BLMD#3: 1200/0.042 & BLMD#5: 158/0.360', '3', 'BLMD#11: 3000/0.015 & BLMD#12: 600/0.091'); %labelGratRed = ( '0', '--none requested--', '1', 'REMD#6: 1200/0.032 & REMD#7: 600/0.065', '2', 'REMD#8: 316/0.125 & REMD#13: 150/0.265', '3', 'ECH#2: test mirror & ECH#9: 60/0.021', '4', 'ECH#10: 31.6/0.0058', '5', 'ECH#14: 31.6/0.0040'); %labelBelowSlitFilter = ( '0', ' - ', '1', '0.3', '2', '0.5', '3', '1.0', '4', '2.0', '5', '3.0', '6', '5.0'); %labelFiltBlue = ( '00', ' - ', '01', 'B#603', '02', 'B#604', '03', 'Bcont#837', '04', 'BG38#643', '05', 'BG39#769', '06', 'EUV#658', '07', 'C3#836', '08', 'CG375#644', '09', 'CN#835', '10', 'HeI#587', '11', 'HeII#588', '12', 'HeII#652', '13', 'HeII#671', '14', 'NeV#647', '15', 'OII#648', '16', 'OII#649', '17', 'OII#650', '18', 'OII#651', '19', 'U#602', '20', 'Spe#723', '21', 'Special - see note'); %labelFiltRed = ( '00', ' - ', '01', 'Bb#605', '02', 'V#606', '03', 'R#608', '04', 'I#610', '05', 'Z#611', '06', 'g#772', '07', 'i#774', '08', 'r#773', '09', 'z#775', '10', 'BG38#643', '11', 'BG39#769', '12', 'C2#838', '13', 'CG375#644', '14', 'Ha#596', '15', 'Ha#597', '16', 'Ha#598', '17', 'Ha#599', '18', 'Ha#600', '19', 'Ha#601', '20', 'Ha#654', '21', 'Hb#770', '22', 'HbC#771', '23', 'HeI#587', '24', 'HeII#588', '25', 'HeII#652', '26', 'HeII#671', '27', 'NII#595', '28', 'NII#653', '29', 'NH2#839', '30', 'OG530#645', '31', 'OIII#589', '32', 'OIII#590', '33', 'OIII#591', '34', 'OIII#592', '35', 'OIII#593', '36', 'OIII#594', '37', 'Rcont#840', '38', 'RG715#646', '39', 'SII#655', '40', 'SIII#657', '41', 'TysB#776', '42', 'WB430#795', '43', 'WB539#796', '44', 'WB829#797', '45', 'Spe#656', '46', 'Spe#672', '47', 'Spe#673', '48', 'Spe#765', '49', 'Spe#766', '50', 'Spe#767', '51', 'Spe#768', '52', 'Special - see note'); %labelGrism = ('0', ' - ', '1', 'Grs#1: 0.59 / 385-1005', '2', 'Grs#2: 0.28 / 380-900', '3', 'Grs#3: 0.23 / 380-855', '4', 'Grs#4: 0.28 / 565-1000', '5', 'Grs#5: 0.13 / 400-660', '6', 'Grs#6: 0.12 / 595-830', '7', 'Grs#7: 0.58 / 490-1010', '8', 'Special - see note'); %labelStap = ('00', ' - ', '01', '0.5 arcsec', '02', '1.0 arcsec', '03', '1.5 arcsec', '04', '2.0 arcsec', '05', '5.0 arcsec', '06', '10. arcsec', '07', 'MOS plate 1', '08', 'MOS plate 2', '09', 'MOS plate 3', '10', 'MOS plate 4', '11', 'Coronograph', '12', 'PinHole', '13', 'Special - see note', '99', 'Open'); %labelMos = ('0', '-- not needed --', '1', '0.80 arcsec', '2', '1.02 arcsec', '3', '1.34 arcsec', '4', '1.87 arcsec', '5', 'MOS plate', '6', 'Special - see note'); #-- end of instrument definition #============================================================================== # FORM HANDLING print $query->header; $|=0; # FIRST CASE: we get parameters, so the form is filled: if ($query->param) { $formStep = substr($query->param(formstep),0,1); # - FORMSTEP = 1: ANALYSE AND DISPLAY THE REPORT FOR CONFIRMATION if ( $formStep == 1 ) { #- date ($sec, $min, $hour, $mday, $mon, $year, $wday, $yday) = localtime(time); $thishour = (0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24) [(localtime) [2]]; $thismonth = (Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec)[(localtime)[4]]; $thisday = (Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday)[(localtime)[6]]; #-- output files $suRemedy = "suRemedy_$obsName_$year$thismonth$yday_$thishour$min.txt"; $suRemedyTail = "suRemedyTail_$obsName_$year$thismonth$yday_$thishour$min.txt"; $suFile = "suEmail_$obsName_$year$thismonth$yday_$thishour$min.txt"; $suCommon = "suCommon_$obsName_$year$thismonth$yday_$thishour$min.txt"; #- remove the output file unlink("$writePath/$suRemedy"); unlink("$writePath/$suRemedyTail"); unlink("$writePath/$suFile"); unlink("$writePath/$suCommon"); #-- read the parameters in, and filter the # values returned for strange input $mobserver = substr($query->param(observer),0,32); $mprogId = substr($query->param(progId),0,10); $msuDateYr = substr($query->param(suDateYr),0,4); $msuDateYr =~ s/[^\d]/9/g; $msuDateMo = substr($query->param(suDateMo),0,2); $msuDateMo =~ s/[^\d]/9/g; $msuDateDy = substr($query->param(suDateDy),0,2); $msuDateDy =~ s/[^\d]/9/g; $mp2pp = substr($query->param(p2pp),0,10); $mbimgFilt1 = substr($query->param(bimgFilt1), 0,2); $mbimgFilt1 =~ s/[^\d]/9/g; $mbimgFilt2 = substr($query->param(bimgFilt2), 0,2); $mbimgFilt2 =~ s/[^\d]/9/g; $mbimgFilt3 = substr($query->param(bimgFilt3), 0,2); $mbimgFilt3 =~ s/[^\d]/9/g; $mbimgFilt4 = substr($query->param(bimgFilt4), 0,2); $mbimgFilt4 =~ s/[^\d]/9/g; $mbimgFilt5 = substr($query->param(bimgFilt5), 0,2); $mbimgFilt5 =~ s/[^\d]/9/g; $mbimgFilt6 = substr($query->param(bimgFilt6), 0,2); $mbimgFilt6 =~ s/[^\d]/9/g; $mbimgFilt7 = substr($query->param(bimgFilt7), 0,2); $mbimgFilt7 =~ s/[^\d]/9/g; $mbimgFilt8 = substr($query->param(bimgFilt8), 0,2); $mbimgFilt8 =~ s/[^\d]/9/g; $mrildFilt1 = substr($query->param(rildFilt1), 0,2); $mrildFilt1 =~ s/[^\d]/9/g; $mrildFilt2 = substr($query->param(rildFilt2), 0,2); $mrildFilt2 =~ s/[^\d]/9/g; $mrildFilt3 = substr($query->param(rildFilt3), 0,2); $mrildFilt3 =~ s/[^\d]/9/g; $mrildFilt4 = substr($query->param(rildFilt4), 0,2); $mrildFilt4 =~ s/[^\d]/9/g; $mrildFilt5 = substr($query->param(rildFilt5), 0,2); $mrildFilt5 =~ s/[^\d]/9/g; $mrildFilt6 = substr($query->param(rildFilt6), 0,2); $mrildFilt6 =~ s/[^\d]/9/g; $mrildFilt7 = substr($query->param(rildFilt7), 0,2); $mrildFilt7 =~ s/[^\d]/9/g; $mrildFilt8 = substr($query->param(rildFilt8), 0,2); $mrildFilt8 =~ s/[^\d]/9/g; $mrildStap1 = substr($query->param(rildStap1), 0,2); $mrildStap1 =~ s/[^\d]/9/g; $mrildStap2 = substr($query->param(rildStap2), 0,2); $mrildStap2 =~ s/[^\d]/9/g; $mrildStap3 = substr($query->param(rildStap3), 0,2); $mrildStap3 =~ s/[^\d]/9/g; $mrildStap4 = substr($query->param(rildStap4), 0,2); $mrildStap4 =~ s/[^\d]/9/g; $mrildGrism1 = substr($query->param(rildGrism1), 0,1); $mrildGrism1 =~ s/[^\d]/9/g; $mrildGrism2 = substr($query->param(rildGrism2), 0,1); $mrildGrism2 =~ s/[^\d]/9/g; $mrildGrism3 = substr($query->param(rildGrism3), 0,1); $mrildGrism3 =~ s/[^\d]/9/g; $mrildGrism4 = substr($query->param(rildGrism4), 0,1); $mrildGrism4 =~ s/[^\d]/9/g; $mrildGrism5 = substr($query->param(rildGrism5), 0,1); $mrildGrism5 =~ s/[^\d]/9/g; $mrildXDisp1 = substr($query->param(rildXDisp1), 0,1); $mrildXDisp1 =~ s/[^\d]/9/g; $mrildXDisp2 = substr($query->param(rildXDisp2), 0,1); $mrildXDisp2 =~ s/[^\d]/9/g; $mrildMos = substr($query->param(rildMos), 0,1); $mrildMos =~ s/[^\d]/9/g; $mblmdGrat = substr($query->param(blmdGrat), 0, 1); $mblmdGratLam1 = substr($query->param(blmdGratLam1), 0, 30); $mblmdGratLam2 = substr($query->param(blmdGratLam2), 0, 30); $mblmdBSF1 = substr($query->param(blmdBSF1), 0, 1); $mblmdBSF2 = substr($query->param(blmdBSF2), 0, 1); $mblmdBSF3 = substr($query->param(blmdBSF3), 0, 1); $mremdGrat = substr($query->param(remdGrat), 0, 1); $mremdGratLam1 = substr($query->param(remdGratLam1), 0, 30); $mremdGratLam2 = substr($query->param(remdGratLam2), 0, 30); $mremdBSF1 = substr($query->param(remdBSF1), 0, 1); $mremdBSF2 = substr($query->param(remdBSF2), 0, 1); $mremdBSF3 = substr($query->param(remdBSF3), 0, 1); $mechLong = substr($query->param(echLong), 0, 3); $mechMask = substr($query->param(echMask), 0, 3); $mremdFoc = substr($query->param(remdFoc), 0, 1); $cremdFoc = "Default mode: adjust focus with temp."; if ( $mremdFoc == 1 ) { $cremdFoc = "RadVel mode: foc. fixed, no temp. adjustment" ; } $comCom = substr($query->param(comCom),0,2000); $comCom =~ s/[^a-z0-9A-Z .\-_\n]//g; #--- print the output open (SUFILE,">> $writePath/$suFile"); open (SUCOMMON,">> $writePath/$suCommon"); open (SUREMEDY,">> $writePath/$suRemedy"); open (SUREMEDYTAIL,">> $writePath/$suRemedyTail"); print SUFILE "To: $suEmail \n"; print SUFILE "CC: ls-openg\@eso.org \n"; print SUFILE "From: lasilla@eso.org \n"; print SUFILE "Subject: EMMI SetUp Request: $mprogId, $msuDateYr-$msuDateMo-$msuDateDy\n"; print SUFILE "Content-type: text/plain\n\n"; print SUFILE "\n"; print SUFILE "NTT/EMMI SETUP REQUEST\n"; print SUFILE "\n"; print SUFILE "OBSERVER: $mobserver\n"; print SUFILE "PROGRAM ID: $mprogId\n"; print SUFILE "P2PP PassWd: $mp2pp\n"; print SUFILE "Set Up Date: $msuDateYr-$msuDateMo-$msuDateDy\n"; print SUREMEDY "To: $remedyEmail \n"; print SUREMEDY "Content-type: text/plain\n\n"; print SUREMEDY "#\n"; print SUREMEDY "# File exported Thu Jun 10 15:17:12 2004\n"; print SUREMEDY "#\n"; print SUREMEDY "#AR-Message-Begin Do Not Delete This Line\n"; print SUREMEDY "Schema: SetUpRequest\n"; print SUREMEDY "Server: wlsremdy.ls.eso.org\n"; print SUREMEDY "Login: setusr\n"; print SUREMEDY "Password: setusr\n"; print SUREMEDY "Action: Submit\n"; print SUREMEDY "# Values: Submit, Query\n"; print SUREMEDY "Format: Short\n"; print SUREMEDY "# Values: Short, Full\n"; print SUREMEDY "\n"; print SUREMEDY " Submitter ! 2!: $USER$ \n\n"; print SUREMEDY " Telescope !536870913!: NTT\n"; print SUREMEDY " Instrument !536870932!: EMMI\n"; print SUREMEDY " Month !536870920!: $msuDateMo\n"; print SUREMEDY " Year !536870917!: $msuDateYr\n"; print SUREMEDY " Beginning_of_Night !536870916!: $msuDateDy\n"; print SUREMEDY " Assigned-to ! 4!: \n"; print SUREMEDY " Observer !536870915!: $mobserver\n"; print SUREMEDY " ObsProgID ! 8!: $mprogId\n"; print SUREMEDY " Actions taken: !536870918!: \n"; print SUREMEDY " Status ! 7!: New\n"; print SUREMEDY "# Values: New, Assigned, Completed, Rejected\n"; print SUREMEDY " Team E-Mail !536870914!: ls-ntt\@eso.org\n"; print SUREMEDY " Telescope Email !536870997!: ls-ntt\@eso.org\n"; print SUREMEDY " Detailed description: !536870921!: [\$\$\n"; print SUREMEDYTAIL "#AR-Message-End Do Not Delete This Line\n"; print SUCOMMON "==============================================\n"; print SUCOMMON "B.I.M.G.:\n\nFilter Wheel\n"; print SUCOMMON " 1: $labelFiltBlue{$mbimgFilt1}\n"; print SUCOMMON " 2: $labelFiltBlue{$mbimgFilt2}\n"; print SUCOMMON " 3: $labelFiltBlue{$mbimgFilt3}\n"; print SUCOMMON " 4: $labelFiltBlue{$mbimgFilt4}\n"; print SUCOMMON " 5: $labelFiltBlue{$mbimgFilt5}\n"; print SUCOMMON " 6: $labelFiltBlue{$mbimgFilt6}\n"; print SUCOMMON " 7: $labelFiltBlue{$mbimgFilt7}\n"; print SUCOMMON " 8: $labelFiltBlue{$mbimgFilt8}\n"; print SUCOMMON "==============================================\n"; print SUCOMMON "R.I.L.D.:\nStar Plate\n"; print SUCOMMON " 1: $labelStap{$mrildStap1}\n"; print SUCOMMON " 2: $labelStap{$mrildStap2}\n"; print SUCOMMON " 3: $labelStap{$mrildStap3}\n"; print SUCOMMON " 4: $labelStap{$mrildStap4}\n"; print SUCOMMON "\nFiltre\n"; print SUCOMMON " 1: $labelFiltRed{$mrildFilt1}\n"; print SUCOMMON " 2: $labelFiltRed{$mrildFilt2}\n"; print SUCOMMON " 3: $labelFiltRed{$mrildFilt3}\n"; print SUCOMMON " 4: $labelFiltRed{$mrildFilt4}\n"; print SUCOMMON " 5: $labelFiltRed{$mrildFilt5}\n"; print SUCOMMON " 6: $labelFiltRed{$mrildFilt6}\n"; print SUCOMMON " 7: $labelFiltRed{$mrildFilt7}\n"; print SUCOMMON " 8: $labelFiltRed{$mrildFilt8}\n"; print SUCOMMON "\nGrism\n- Spectro\n"; print SUCOMMON " 1: $labelGrism{$mrildGrism1}\n"; print SUCOMMON " 2: $labelGrism{$mrildGrism2}\n"; print SUCOMMON " 3: $labelGrism{$mrildGrism3}\n"; print SUCOMMON " 4: $labelGrism{$mrildGrism4}\n"; print SUCOMMON " 5: $labelGrism{$mrildGrism5}\n"; print SUCOMMON "- Cross-Dispersor\n"; print SUCOMMON " 6: $labelGrism{$mrildXDisp1}\n"; print SUCOMMON " 7: $labelGrism{$mrildXDisp2}\n"; print SUCOMMON "- Required\n"; print SUCOMMON " 8: Foc.Wedge\n"; print SUCOMMON " 9: Free \n"; print SUCOMMON "\nMOS Punch \n"; print SUCOMMON " 1: $labelMos{$mrildMos}\n"; print SUCOMMON "==============================================\n"; print SUCOMMON "B.L.M.D.:\n"; print SUCOMMON "\nGrating:\n"; print SUCOMMON " $labelGratBl{$mblmdGrat}\n"; print SUCOMMON "Wavelength: Grating a: $mblmdGratLam1 \n"; print SUCOMMON " Grating b: $mblmdGratLam2 \n"; print SUCOMMON "\nBelow Slit Filter:\n"; print SUCOMMON " 1: $labelBelowSlitFilter{$mblmdBSF1}\n"; print SUCOMMON " 2: $labelBelowSlitFilter{$mblmdBSF2}\n"; print SUCOMMON " 3: $labelBelowSlitFilter{$mblmdBSF3}\n"; print SUCOMMON "==============================================\n"; print SUCOMMON "R.E.M.D.:\n"; print SUCOMMON "\nGrating:\n"; print SUCOMMON " $labelGratRed{$mremdGrat}\n"; print SUCOMMON "MedDisp: Wavelength: Grating a: $mremdGratLam1 \n"; print SUCOMMON " Grating b: $mremdGratLam2 \n"; print SUCOMMON "Echelle: Long Slit: $mechLong\n"; print SUCOMMON " Ech.Mask: $mechMask\n"; print SUCOMMON "\nBelow Slit Filter:\n"; print SUCOMMON " 1: $labelBelowSlitFilter{$mremdBSF1}\n"; print SUCOMMON " 2: $labelBelowSlitFilter{$mremdBSF2}\n"; print SUCOMMON " 3: $labelBelowSlitFilter{$mremdBSF3}\n"; print SUCOMMON "REMD Focus Mode:\n"; print SUCOMMON " $cremdFoc \n"; print SUCOMMON "==============================================\n"; print SUCOMMON "COMMENTS:\n"; print SUCOMMON "$comCom\n"; print SUCOMMON "==============================================\n"; print SUCOMMON "created on $thisday, $thismonth, $mday, 200"; print SUCOMMON $year-100; print SUCOMMON ", $thishour:$min:$sec \$\$]\n\n"; close (SUFILE); close (SUCOMMON); close (SUREMEDY); close (SUREMEDYTAIL); #-- show request and ask for confirmation print <

Your Set-Up request is reproduced below. Remember that this form does not perform any test: double check it.

To submit it to Science Operation, press

To edit it again, press the [Back] button on your browser. END #- writes the content of output file to html output print "


\n";
   foreach $i (`tail --lines=+6  $writePath/$suFile ; cat $writePath/$suCommon`)
              {print $i ;}

   print "

\n"; # print "
\n";
#   foreach $i (`cat  $writePath/$suRemedy  $writePath/$suCommon $writePath/$suRemedyTail`)
#   {print $i ;}
#   print "

\n"; } #============================================================================== if ( $formStep == 2 ) { # # - FORMSTEP = 2: CONFIRMED REPORT - SEND IT # $suRemedy = substr($query->param(suRemedy),0,72); $suRemedy =~ s/[^a-z0-9A-Z.\-_]//g; $suFile = substr($query->param(suFile),0,72); $suFile =~ s/[^a-z0-9A-Z.\-_]//g; $suCommon = substr($query->param(suCommon),0,72); $suCommon =~ s/[^a-z0-9A-Z.\-_]//g; #- send the instruction files via email open(SENDMAIL, "|$sendmail") or die "Cannot open $sendmail: $!" ; foreach $i (`cat $writePath/$suFile $writePath/$suCommon `) {print SENDMAIL $i ;} close (SENDMAIL); print "...email sent\n"; open(SENDREM, "|$sendmail") or die "Cannot open $sendmail: $!" ; foreach $i (`cat $writePath/$suRemedy $writePath/$suCommon $writePath/$suRemedyTail`) {print SENDREM $i ;} close (SENDREM); print "...database filled\n"; print "

Your set-up has been submitted. It is reproduced below for your convenience in case you want to print it."; #- writes the content of output file to html output print "


\n";
       foreach $i (`tail --lines=+6  $writePath/$suFile ; cat $writePath/$suCommon`)
       {print $i ;}
       print "

\n"; } #============================================================================== # WE GOT NO PARAMETER, SO WE ARE AT STEP 0: DISPLAY THE EMPTY FORM } else { print $query->startform; print < EMMI Set-up Form
 [ ESO ] La Silla

La Silla - Science Operation Department
SciOp
EMMI Set-Up Form


Please use the following form to submit your set-up request for EMMI. If your setup is special and does not follow the standard setup form, please contact your support astronomer. Note that it is critical that you discuss the set-up with your support astronomer prior to submitting the form.

This set-up form has to be submitted at the latest at 07:00 local on the day you start observing. If you submit it later, it is likely that either your set-up will not be ready in time and/or that you will be waken up early in the morning.

Please do not overfill this form: select only the optical elements you need. This form is not performing any verification on the consistency of the set-up you request: be sure to check that you are not requesting duplicate or incompatible elements. END #--page 0 table print ""; print "
"; print ""; print "
Observer"; print $query->textfield('observer'); print " First name and name \n"; print "
Prog.Id"; print $query->textfield('progId'); print " Format: 075.D-01234(A); see schedule\n"; print "
Date of Setup"; print < First night of observations. Format: YYYY-MM-DD
P2PP Password"; print $query->textfield('p2pp'); print "Required for identification
"; print "
"; #--page 1 table print ""; #--- BIMG #--page 1 table print "
"; print ""; print "

BIMG

"; print "
Filter Wheel "; print "
Blue Filters "; print "
1"; print $query->popup_menu(-name=>'bimgFilt1', -Values=>['00', '01', '02', '03', '04', '05', '06', '07', '08', '09', '10','11', '12', '13', '14', '15', '16', '17', '18', '19', '20', '21'], -labels=>\%labelFiltBlue, -default=>'00'); print "
2"; print $query->popup_menu(-name=>'bimgFilt2', -Values=>['00', '01', '02', '03', '04', '05', '06', '07', '08', '09', '10','11', '12', '13', '14', '15', '16', '17', '18', '19', '20', '21'], -labels=>\%labelFiltBlue, -default=>'00'); print "
3"; print $query->popup_menu(-name=>'bimgFilt3', -Values=>['00', '01', '02', '03', '04', '05', '06', '07', '08', '09', '10','11', '12', '13', '14', '15', '16', '17', '18', '19', '20', '21'], -labels=>\%labelFiltBlue, -default=>'00'); print "
4"; print $query->popup_menu(-name=>'bimgFilt4', -Values=>['00', '01', '02', '03', '04', '05', '06', '07', '08', '09', '10','11', '12', '13', '14', '15', '16', '17', '18', '19', '20', '21'], -labels=>\%labelFiltBlue, -default=>'00'); print "
5"; print $query->popup_menu(-name=>'bimgFilt5', -Values=>['00', '01', '02', '03', '04', '05', '06', '07', '08', '09', '10','11', '12', '13', '14', '15', '16', '17', '18', '19', '20', '21'], -labels=>\%labelFiltBlue, -default=>'00'); print "
6"; print $query->popup_menu(-name=>'bimgFilt6', -Values=>['00', '01', '02', '03', '04', '05', '06', '07', '08', '09', '10','11', '12', '13', '14', '15', '16', '17', '18', '19', '20', '21'], -labels=>\%labelFiltBlue, -default=>'00'); print "
7"; print $query->popup_menu(-name=>'bimgFilt7', -Values=>['00', '01', '02', '03', '04', '05', '06', '07', '08', '09', '10','11', '12', '13', '14', '15', '16', '17', '18', '19', '20', '21'], -labels=>\%labelFiltBlue, -default=>'00'); print "
8"; print $query->popup_menu(-name=>'bimgFilt8', -Values=>['00', '01', '02', '03', '04', '05', '06', '07', '08', '09', '10','11', '12', '13', '14', '15', '16', '17', '18', '19', '20', '21'], -labels=>\%labelFiltBlue, -default=>'00'); print "
9"; print $query->popup_menu(-name=>'bimgFilt9', -Values=>['Free'], -labels=>\%labelFiltBlue, -default=>'00'); print "
"; #------------------------------------------------------------------------------ #--- RILD #------------------------------------------------------------------------------ #--page 1 table print "
"; print "

RILD

"; print ""; print ""; print ""; #-------- STAP #-main tab col: print ""; #-------- grism print ""; #--rild table print "
Slit WheelFilter wheelGrism Wheel
"; print ""; print "
"; print "Star Plates: "; print "
1"; print $query->popup_menu(-name=>'rildStap1', -Values=>['00', '01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '11', '12', '13'], -labels=>\%labelStap, -default=>'0'); print "
2"; print $query->popup_menu(-name=>'rildStap2', -Values=>['00', '01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '11', '12', '13'], -labels=>\%labelStap, -default=>'0'); print "
3"; print $query->popup_menu(-name=>'rildStap3', -Values=>['00', '01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '11', '12', '13'], -labels=>\%labelStap, -default=>'0'); print "
4"; print $query->popup_menu(-name=>'rildStap4', -Values=>['00', '01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '11', '12', '13'], -labels=>\%labelStap, -default=>'0'); print "
5"; print $query->popup_menu(-name=>'rildStap5', -Values=>['99'], -labels=>\%labelStap, -default=>'0'); print "
"; #-------- filter #-main tab col: print "
"; print ""; print "
"; print "
Red Filters: "; print "
1"; print $query->popup_menu(-name=>'rildFilt1', -Values=>['00', '01', '02', '03', '04', '05', '06', '07', '08', '09', '10','11', '12', '13', '14', '15', '16', '17', '18', '19', '20', '21','22', '23', '24', '25', '26', '27', '28', '29', '30', '31', '32','33', '34', '35', '36', '37', '38', '39', '40', '41', '42', '43','44', '45', '46', '47', '48', '49', '50', '51', '52'], -labels=>\%labelFiltRed, -default=>'0'); print "
2"; print $query->popup_menu(-name=>'rildFilt2', -Values=>['00', '01', '02', '03', '04', '05', '06', '07', '08', '09', '10','11', '12', '13', '14', '15', '16', '17', '18', '19', '20', '21','22', '23', '24', '25', '26', '27', '28', '29', '30', '31', '32','33', '34', '35', '36', '37', '38', '39', '40', '41', '42', '43','44', '45', '46', '47', '48', '49', '50', '51', '52'], -labels=>\%labelFiltRed, -default=>'0'); print "
3"; print $query->popup_menu(-name=>'rildFilt3', -Values=>['00', '01', '02', '03', '04', '05', '06', '07', '08', '09', '10','11', '12', '13', '14', '15', '16', '17', '18', '19', '20', '21','22', '23', '24', '25', '26', '27', '28', '29', '30', '31', '32','33', '34', '35', '36', '37', '38', '39', '40', '41', '42', '43','44', '45', '46', '47', '48', '49', '50', '51', '52'], -labels=>\%labelFiltRed, -default=>'0'); print "
4"; print $query->popup_menu(-name=>'rildFilt4', -Values=>['00', '01', '02', '03', '04', '05', '06', '07', '08', '09', '10','11', '12', '13', '14', '15', '16', '17', '18', '19', '20', '21','22', '23', '24', '25', '26', '27', '28', '29', '30', '31', '32','33', '34', '35', '36', '37', '38', '39', '40', '41', '42', '43','44', '45', '46', '47', '48', '49', '50', '51', '52'], -labels=>\%labelFiltRed, -default=>'0'); print "
5"; print $query->popup_menu(-name=>'rildFilt5', -Values=>['00', '01', '02', '03', '04', '05', '06', '07', '08', '09', '10','11', '12', '13', '14', '15', '16', '17', '18', '19', '20', '21','22', '23', '24', '25', '26', '27', '28', '29', '30', '31', '32','33', '34', '35', '36', '37', '38', '39', '40', '41', '42', '43','44', '45', '46', '47', '48', '49', '50', '51', '52'], -labels=>\%labelFiltRed, -default=>'0'); print "
6"; print $query->popup_menu(-name=>'rildFilt6', -Values=>['00', '01', '02', '03', '04', '05', '06', '07', '08', '09', '10','11', '12', '13', '14', '15', '16', '17', '18', '19', '20', '21','22', '23', '24', '25', '26', '27', '28', '29', '30', '31', '32','33', '34', '35', '36', '37', '38', '39', '40', '41', '42', '43','44', '45', '46', '47', '48', '49', '50', '51', '52'], -labels=>\%labelFiltRed, -default=>'0'); print "
7"; print $query->popup_menu(-name=>'rildFilt7', -Values=>['00', '01', '02', '03', '04', '05', '06', '07', '08', '09', '10','11', '12', '13', '14', '15', '16', '17', '18', '19', '20', '21','22', '23', '24', '25', '26', '27', '28', '29', '30', '31', '32','33', '34', '35', '36', '37', '38', '39', '40', '41', '42', '43','44', '45', '46', '47', '48', '49', '50', '51', '52'], -labels=>\%labelFiltRed, -default=>'0'); print "
8"; print $query->popup_menu(-name=>'rildFilt8', -Values=>['00', '01', '02', '03', '04', '05', '06', '07', '08', '09', '10','11', '12', '13', '14', '15', '16', '17', '18', '19', '20', '21','22', '23', '24', '25', '26', '27', '28', '29', '30', '31', '32','33', '34', '35', '36', '37', '38', '39', '40', '41', '42', '43','44', '45', '46', '47', '48', '49', '50', '51', '52'], -labels=>\%labelFiltRed, -default=>'0'); print "
9"; print $query->popup_menu(-name=>'rildFilt9', -Values=>['Free'], -labels=>\%labelFiltRed, -default=>'00'); print "
"; print "
"; print ""; print "
"; print "Grism: "; print "
1"; print $query->popup_menu(-name=>'rildGrism1', -Values=>['0','1','2','3','4','5','6','7'], -labels=>\%labelGrism, -default=>'0'); print "
2"; print $query->popup_menu(-name=>'rildGrism2', -Values=>['0','1','2','3','4','5','6','7'], -labels=>\%labelGrism, -default=>'0'); print "
3"; print $query->popup_menu(-name=>'rildGrism3', -Values=>['0','1','2','3','4','5','6','7'], -labels=>\%labelGrism, -default=>'0'); print "
4"; print $query->popup_menu(-name=>'rildGrism4', -Values=>['0','1','2','3','4','5','6','7'], -labels=>\%labelGrism, -default=>'0'); print "
5"; print $query->popup_menu(-name=>'rildGrism5', -Values=>['0','1','2','3','4','5','6','7'], -labels=>\%labelGrism, -default=>'0'); print "
"; print "Cross Dispersers: "; print "
6"; print $query->popup_menu(-name=>'rildXDisp1', -Values=>['0','1','2','3','4','5','6','7'], -labels=>\%labelGrism, -default=>'0'); print "
7"; print $query->popup_menu(-name=>'rildXDisp2', -Values=>['0','1','2','3','4','5','6','7'], -labels=>\%labelGrism, -default=>'0'); print "
Required: "; print "
8"; print $query->popup_menu(-name=>'junk1', -Values=>['Focus Wedge']); print "
9"; print $query->popup_menu(-name=>'junk2', -Values=>['Free']); print "
"; print "
"; print "MOS Punching Head: "; print $query->popup_menu(-name=>'rildMos', -Values=>['0','1','2','3','4'], -labels=>\%labelMos, -default=>'0'); #--page 1 table print "
"; #--- page 2 print ""; print "
"; #--- BLMD print "

BLMD

"; print ""; print "
"; print "Grating housing:"; print ""; print $query->popup_menu(-name=>'blmdGrat', -Values=>['0','1','2','3'], -labels=>\%labelGratBl, -default=>'0'); print "
"; print "Central wavelength(s):"; print ""; print " First grating="; print ""; print $query->textfield('blmdGratLam1'); print "nm"; print "
"; print " Second grating="; print ""; print $query->textfield('blmdGratLam2'); print "nm"; print "
"; print "Below Slit filters:"; print ""; print $query->popup_menu(-name=>'blmdBSF1', -values=>['0'], -labels=>\%labelBelowSlitFilter, -default=>'0'); print $query->popup_menu(-name=>'blmdBSF2', -values=>['0','1','2','3','4','5','6'], -labels=>\%labelBelowSlitFilter, -default=>'0'); print $query->popup_menu(-name=>'blmdBSF3', -values=>['0','1','2','3','4','5','6'], -labels=>\%labelBelowSlitFilter, -default=>'0'); print "
"; #--- REMD print "
"; print "

REMD

"; print ""; print "
"; print "Med. Dispersion/Echelle Grating: "; print ""; print $query->popup_menu(-name=>'remdGrat', -Values=>['0','1','2','3','4','5'], -labels=>\%labelGratRed, -default=>'0'); print "
"; print "
"; print "Medium Resolution"; print "Central wavelength(s):"; print ""; print "First grating="; print ""; print $query->textfield('remdGratLam1'); print "nm"; print "
"; print " Second grating="; print ""; print $query->textfield('remdGratLam2'); print "nm
"; print "
OR"; print "
"; print "
"; print "Echelle:
(don\'t forget Xdisp) "; print "
"; print "Do you want 'Long Slit Echelle' mode
(available only for Ech#10 and 14)?"; print "
"; print $query->radio_group( -name=>'echLong', -Values=>['yes','no'], -default=>'no'); print "
"; print "Do you need the Echelle Mask?"; print ""; print $query->radio_group( -name=>'echMask', -values=>['yes','no'], -default=>'yes'); print "
"; print <
REMD Focus Mode: Default mode: focus is adjusted with temperature. Best focus, but lines shift.
RadVel mode: focus is fixed. Lines do not move, but profile will vary. END print "
"; print "Below Slit filters:"; print ""; print $query->popup_menu(-name=>'remdBSF1', -values=>['0'], -labels=>\%labelBelowSlitFilter, -default=>'0'); print $query->popup_menu(-name=>'remdBSF2', -values=>['0','1','2','3','4','5','6'], -labels=>\%labelBelowSlitFilter, -default=>'0'); print $query->popup_menu(-name=>'remdBSF3', -values=>['0','1','2','3','4','5','6'], -labels=>\%labelBelowSlitFilter, -default=>'0'); print "
"; #--- DIMD #---p 2 table # print "
"; # # print "

DIMD

"; # print "DIMD requested?"; # print $query->radio_group( # -name=>'dimd', # -Values=>['yes','no'], # -default=>'no'); # #---p 2 table print <

Additional Comments:
In case you selected a special optical element ("Special - see note"), please give the specifications here after.

END print $query->submit(-value=>'SUBMIT'); print $query->reset; print $query->endform; }