// this file contains most of the JavaScript function required to run gcWeb.jsp
<!-- $Id: gcWeb.js,v 1.46 2007/07/17 23:17:17 sgroom Exp $ -->

function SetMenuLocation() {
     <!-- set hidden value for location radio -->
	for(i=0;i<document.gcGui.location.length;i++){
		if  (document.gcGui.location[i].selected){
			document.gcGui.menulocation.value=i;	
		}
	}
}

function SetMenuFormat() {
     <!-- set hidden value for format radio -->
        for(i=0;i<document.gcGui.outformat.length;i++){
                if (document.gcGui.outformat[i].selected){
                        document.gcGui.menuformat.value=i;
                }
        }
}

<!--     This function will take the current value of the -->
<!--     input form.  It sets hidden variables as necesary -->
<!--     and then submits the form onto the Java servlet  -->
<!--     which carries out the forms request. -->
function SubmitForm() {
var error=false;
     <!-- set hidden value for target designation radio -->
	for(i=0;i<document.gcGui.designation.length;i++){
		if(document.gcGui.designation[i].checked){
			document.gcGui.radiotarget.value=i;
		}
	}

     <!-- set hidden value for ksource radio -->
        for(i=0;i<document.gcGui.ksource.length;i++){
                if(document.gcGui.ksource[i].checked){
                        document.gcGui.radioKsource.value=i;
                }
        }

     <!-- set hidden value for nsource radio -->
        for(i=0;i<document.gcGui.nsource.length;i++){
                if(document.gcGui.nsource[i].checked){
                        document.gcGui.radioNsource.value=i;
                }
        }

     <!-- set hidden value for calibration search radio -->
        for(i=0;i<document.gcGui.calsearch.length;i++){
                if(document.gcGui.calsearch[i].checked){
                        document.gcGui.radioCalSearch.value=i;
                }
        }

     <!-- set hidden value for delay limit radio -->
        for(i=0;i<document.gcGui.delaylimit.length;i++){
                if(document.gcGui.delaylimit[i].checked){
                        document.gcGui.radioDelayLimit.value=i;
                }
        }

     <!-- set hidden value for output messages radio -->
        for(i=0;i<document.gcGui.outMsgs.length;i++){
                if(document.gcGui.outMsgs[i].checked){
                        document.gcGui.radioOutMsgs.value=i;
                }
        }

	SetMenuLocation();
        SetMenuFormat();

     <!-- set hidden values for selected date -->
	for (i=0; i< document.gcGui.day.length; i++) {
		if (document.gcGui.day[i].selected == true)
		{
			document.gcGui.selectday.value = 
				document.gcGui.day[i].value;
		}
	}
	for (i=0; i< document.gcGui.month.length; i++) {
		if (document.gcGui.month[i].selected == true){
	               document.gcGui.selectmonth.value = 
			    i + 1;	
		}
	}
	for (i=0; i< document.gcGui.year.length; i++) {
		if (document.gcGui.year[i].selected == true)
		{
			document.gcGui.selectyear.value = 
				document.gcGui.year[i].value;
		}
	}
	document.gcGui.action="/gcWeb/servlet/gcWeb";

 	//if dlimit value is not entered by user/no value 
	//lets consider it as if delaylimit was not even selected.
	//then assign delaylimit to null and take default 
	//values of delayMin/Max because that is actually getCal would be doing
	var value=document.gcGui.dlimit.value.replace(/(^\s+)|(\s+$)/g, "");
       if(document.gcGui.delaylimit[1].checked && (value.length<=0)){
		setDefaultDelays();		
	}//end length<=0
      if(document.gcGui.delaylimit[2].checked){
		var valueDMax=document.gcGui.dMax.value.replace(/(^\s+)|(\s+$)/g, "");
		var valueDMin=document.gcGui.dMin.value.replace(/(^\s+)|(\s+$)/g, "");
		if(valueDMax.length<=0){
			setDefaultDelays();		
			document.gcGui.dMin.value=-document.gcGui.dlimit.value;
		}
		if(valueDMax.length<=0){
			setDefaultDelays();
			document.gcGui.dMax.value=document.gcGui.dlimit.value;
		}
	}
	
     //check if delay Limit is in the min/max range
     var limit=setDefaultDelayLimit(document.gcGui.location.options[document.gcGui.location.selectedIndex].value);
     if(document.gcGui.delaylimit[1].checked && ((document.gcGui.dlimit.value<-limit) || (document.gcGui.dlimit.value>limit))){
	alert("Delay Limit value for this instrument must be in the interval of ["+(-limit)+"....."+limit+"].\nPlease correct the value and try again");
	error=true;	
     }
      if(document.gcGui.delaylimit[2].checked){
	 	if((document.gcGui.dMin.value<-limit) || (document.gcGui.dMax.value>limit)){
			alert("Delay Limit min/max values for this instrument must be in the interval of ["+(-limit)+"....."+limit+"].\nPlease correct the value and try again");
			error=true;	
		}else{
		   if(document.gcGui.dMin.value>document.gcGui.dMax.value){
			alert("Delay Limit min value must be smaller than max value.\nPlease correct the value and try again");
			error=true;
		   }
		}
	}	
	
     //check format for the Object Designation/Pos if Pos is selected
     //should be hours:minutes:seconds degrees:minutes:seconds 
     //will check if values are numeric
     if(document.gcGui.designation[3].checked){
           var val=document.gcGui.designator.value;           
	   //lets eliminate starting and trailing spaces
	   val=val.replace(/(^\s+)|(\s+$)/g, "");
	   //lets purge spaces in between RA and DEC
	   val=val.replace(/(\s+)/g, " ");
           //first check if there are 2 vars
           var array=val.split(" ");
           if(printError(array,2)){
	    //if correct - check first var to have 2 :'s
            var array1=array[0].split(":");
            if(printError(array1,3)){
	     //check if all values are numbers
	     if(checkNumber(array1)){
    	       //if correct - check second var to have 2 :'s
               var array2=array[1].split(":");  
               if(printError(array2,3)){	      
                //check if all values are numbers
	        if(checkNumber(array2)){
                 <!-- if correct - submit it to the servlet -->  	
		 //document.gcGui.submit();			
	        }else{		
			error=true;
		}
               }else{
			error=true;
		}
              }//if checkNumber array1
		else{
			error=true;
		}
            }else{
			error=true;
		}
           }else{
			error=true;
		}
	  }//end if document.pos.checked 
	
	if(!error){	
	    	//submit if no errors found
       		document.gcGui.submit();
	}
}

function printError(arrayCheck, length){
     //check length of the array
     if(arrayCheck.length!=length){
       alert("Format for Pos: h:min:sec   degrees:min:sec");
       document.gcGui.designator.focus();
       return false;
     }   
    return true;
}
function checkNumber(arrayCheck){
    //check if array is numeric     
    for(i=0;i<arrayCheck.length;i++){	 
      if(isNaN(Number(arrayCheck[i]))){
	alert("Format for Pos: h:min:sec   degrees:min:sec");
	document.gcGui.designator.focus();
	return false;
      }
    }    
     return true;
}
<!-- functions to get the current date -->
function makeArray() {
     for (i=0; i<makeArray.arguments.length; i++) {
	  this[i+1] = makeArray.arguments[i];
     }
}
var themonths = new makeArray('January', 'February', 'March',
     'April', 'May', 'June', 'July', 'August', 'September',
     'October', 'November', 'December');

initDate();

<!-- alert("Month is " + themonth + " Day is " + theday + " Year is " + theyear); --> 
function initDate(){
	thedate = new Date();
	theday = thedate.getDate();
	thedayi = theday - 1;
	themonthi = thedate.getMonth();
	themonth = themonths[themonthi + 1];
	theyy = thedate.getYear();
	theyear = (theyy < 1000) ? theyy + 1900 : theyy;
}
<!-- reset form simply goes to example 0 -->
function ResetForm() {     
        ClearFields(); 	
	ResetBaseline(); 
	SetDefaults();
	document.menu.examples.options[11].selected=true;
}

function ResetBaseline(){
      document.gcGui.location.disabled = true;
      <!-- default location 2 = ki -->
      document.gcGui.location.options[2].selected=true;
      document.gcGui.timingI.checked=true;
      selectLocation(document.gcGui.location);	
      document.gcGui.choices.disabled = true;         
      document.gcGui.choices.options[0].selected=true;
      document.menu.examples.options[0].selected=true;	    
      document.gcGui.timingI.checked=false;
}

<!-- These routines set all the form fields for the examples that -->
<!-- are listed in the top frame.  If an example is selected, the -->
<!-- appropriate Set method is called to set all form inputs for -->
<!-- that query example -->

<!-- query star by name iota_peg -->
//document.gcGui.designator.value = "iota_peg";
function SetExample0() {
     ClearFields(); 
     ResetBaseline();
     SetDefaults();	
     document.gcGui.designation[0].checked = true;
     document.gcGui.designation[1].checked = false;
     document.gcGui.designation[2].checked = false;
     document.gcGui.designation[3].checked = false;
     document.gcGui.designator.value = "iota_peg";
     document.gcGui.cal.checked = true;
     CalibratorsEnable();
     document.gcGui.simbadI.checked = false;
     document.gcGui.timingI.checked = false;

}
<!-- query star by position RA = 12 00 00 DEC = 45 00 00 -->
function SetExample1() {
     ClearFields();
     SetDefaults();
     document.gcGui.designation[0].checked = false;
     document.gcGui.designation[1].checked = false;
     document.gcGui.designation[2].checked = false;
     document.gcGui.designation[3].checked = true;

     document.gcGui.designator.value = "12:00:00 45:00:00";
     document.gcGui.cal.checked = true;
     CalibratorsEnable();
     document.gcGui.simbadI.checked = false;
     document.gcGui.timingI.checked = false;
}
<!-- query star by Henry Draper ID 4676 -->
function SetExample2() {
     ClearFields();
     SetDefaults();
     document.gcGui.designation[0].checked = false;
     document.gcGui.designation[1].checked = true;
     document.gcGui.designation[2].checked = false;
     document.gcGui.designation[3].checked = false;

     document.gcGui.designator.value = "4676";
     document.gcGui.cal.checked = true;
		CalibratorsEnable();
     document.gcGui.simbadI.checked = false;
     document.gcGui.timingI.checked = false;
}
<!-- query star by Hipparcos Id 21730 -->
function SetExample3() {
     ClearFields();
     SetDefaults();     
     document.gcGui.designation[0].checked = false;
     document.gcGui.designation[1].checked = false;
     document.gcGui.designation[2].checked = true;
     document.gcGui.designation[3].checked = false;

     document.gcGui.designator.value = "21730";
     document.gcGui.cal.checked = true;
     CalibratorsEnable();
     document.gcGui.simbadI.checked = false;
     document.gcGui.timingI.checked = false;
}
<!-- see gcWeb Help -->
function SetExample4() {
     SetExample0();	
     document.gcGui.designator.value = " ";
     document.gcGui.longhelp.value = "1";
}
<!-- get simbad information for iota_peg -->
function SetExample5() {
     SetExample0();
     document.gcGui.simbadI.checked = true;
     SimbadIshow();
     document.gcGui.commonNames.checked = true;
}
<!-- select giant calibrators for iota_peg -->
function SetExample6() {
     SetExample0();
     document.gcGui.designation[0].checked = true;
     document.gcGui.calradius.checked = true;
     document.gcGui.searchradius.value = "5";

     document.gcGui.minK.value = "3.5";
     MMshow(2);

     document.gcGui.maxK.value = "4.2";
     MMshow(3);

     document.gcGui.simbadI.checked = true;
     SimbadIshow();
     document.gcGui.main.checked = false;
     document.gcGui.giant.checked = true;
     document.gcGui.supergiant.checked = false;
}
<!-- create calibration script for SB2 64 Psc -->
function SetExample7() {
     ClearFields();
     SetDefaults();
     document.gcGui.designator.value = "64 psc";
     document.gcGui.designation[0].checked = true;
     document.gcGui.calScript.checked = true;
     document.gcGui.simbadI.checked = true;
     SimbadIshow();
     document.gcGui.commonNames.checked = true;
     document.gcGui.meas.checked = true;

}
<!-- estimate apparent diameters for SB2 64 psc -->
function SetExample8() {
     ClearFields();
     SetDefaults();
     document.gcGui.designator.value = "64_psc";
     document.gcGui.designation[0].checked = true;
     document.gcGui.fbol.checked = true;
     Fbolshow();
}
<!-- retrieve data only for Capella -->
function SetExample9() {
     ClearFields();
     SetDefaults();
     document.gcGui.designation[0].checked = true;
     document.gcGui.designator.value = "Capella";
     document.gcGui.cal.checked = false;
     CalibratorsEnable();
     document.gcGui.simbadI.checked = true;
     SimbadIshow();
}
<!-- assess giants in a particular part of the sky -->
function SetExample10() {
     ClearFields(); 
     SetDefaults();
     document.gcGui.designation[0].checked = false;
     document.gcGui.designation[1].checked = false;
     document.gcGui.designation[2].checked = false;
     document.gcGui.designation[3].checked = true;    
     document.gcGui.designator.value = "21:07:00 25:30:00";
     document.gcGui.timingI.checked = true;
     Timingshow();
     document.gcGui.main.checked = false;
     document.gcGui.giant.checked = true;
     document.gcGui.supergiant.checked = false;

     document.gcGui.maxK.value = "3";
     MMshow(3);

     document.gcGui.location[0].checked = true;
}



<!-- clear form fields back to the default -->
function ClearFields() {
     document.gcGui.longhelp.value = "-1";
     document.gcGui.designation[0].checked = true;
     document.gcGui.designation[1].checked = false;
     document.gcGui.designation[2].checked = false;
     document.gcGui.designation[3].checked = false;
     document.gcGui.designator.value = " ";

     document.gcGui.cal.checked = true;
     document.gcGui.calsearch[0].checked = false;
     document.gcGui.calsearch[1].checked = true;
     CalibratorsEnable();

     document.gcGui.main.checked = true;
     document.gcGui.giant.checked = false;
     document.gcGui.supergiant.checked = false;

     document.gcGui.maxDiam.checked = false;
     document.gcGui.maxAD.value = " ";

     document.gcGui.calradius.checked = false;
     document.gcGui.searchradius.value = " ";

     document.gcGui.ksource[0].checked = true;
     document.gcGui.ksource[1].checked = false;
     document.gcGui.nsource[0].checked = true;
     document.gcGui.nsource[1].checked = false;
     document.gcGui.usemeasurement.checked = false;
     document.gcGui.usemeasurement.disabled = true;

     MMhide(0);
     document.gcGui.minV.value = " ";
     MMhide(1);
     document.gcGui.maxV.value = " ";
     MMhide(2);
     document.gcGui.minK.value = " ";
     MMhide(3);
     document.gcGui.maxK.value = " ";
     document.gcGui.NBand.checked = false;
     MMhide(7);
     document.gcGui.minN.value = " ";
     document.gcGui.maxN.value = " ";

     document.gcGui.Lband.checked = false;
     document.gcGui.Lprime.checked = false;
     document.gcGui.minL.value = " ";
     document.gcGui.maxL.value = " ";


     SimbadIhide();
     document.gcGui.simbadI.checked = false;

     document.gcGui.commonNames.checked = false;
     document.gcGui.meas.checked = false;
     document.gcGui.browser.checked = false;

     document.gcGui.delaylimit[0].checked=false;
     document.gcGui.delaylimit[1].checked=false;
     document.gcGui.delaylimit[2].checked=false;

     document.gcGui.dMin.value=" ";
     document.gcGui.dMax.value=" ";

     Timinghide();
     document.gcGui.timingI.checked = false;
     document.gcGui.timing.checked = false;
     document.gcGui.calender.checked = false;
     document.gcGui.uv.checked=false;
     document.gcGui.location[0].selected = true;
     document.gcGui.outformat[0].selected = true;
	    
     TPhide(0);
     TPhide(1);
     TPhide(2);
     TPhide(3);
     document.gcGui.selectdate.checked = false;
  
     TPhide(4);
     document.gcGui.wavelength.checked = false;
     document.gcGui.wlength.value = " ";
     document.gcGui.CTime.checked = false;
     document.gcGui.NullDepth.checked = false;
     document.gcGui.day[thedayi].selected = true;
     document.gcGui.month[themonthi].selected = true;

     TPhide(5);
     TPhide(6);

     document.gcGui.sendMail.checked = false;
     document.gcGui.email.value="";
     TPhide(7);     
     TPhide(8);	
     TPhide(9);
     TPhide(10);
     document.gcGui.dlimit.value = " ";
     document.gcGui.dlimit.disabled=true;

     if (theyear>=2000){
	 yearindex=theyear-2000;
     }

     document.gcGui.year[yearindex].selected = true;
     document.gcGui.fbol.checked = false;
     Fbolhide();

     document.gcGui.longWL.checked  = false;
     document.gcGui.TwoMass.checked = false;
     document.gcGui.constrainTemp.checked = false;
     document.gcGui.savePhotometry.checked = false;
     document.gcGui.fbolPlot.checked = false;
      
     document.gcGui.calScript.checked = false;
     document.gcGui.plx.checked       = false;
     document.gcGui.rename.checked = false;
     document.gcGui.identHDC.checked = false;
     document.gcGui.outformat.disabled = false;
     document.gcGui.outformat.options[0].selected=true;
     document.gcGui.outMsgs[0].checked = false;
     document.gcGui.outMsgs[1].checked = true;
     document.gcGui.outMsgs[2].checked = false;

      //added for clearing baselines
     document.gcGui.location.disabled = true;
     document.gcGui.location.options[0].selected=true;
     document.gcGui.timingI.checked   = true;
     selectLocation(document.gcGui.location);	
     document.gcGui.choices.disabled  = true;         
     document.gcGui.choices.options[0].selected=true;
     document.menu.examples.options[0].selected=true;
     document.gcGui.timingI.checked   = false;    
     
}
<!-- This function checks timing. If Timing Info button is not clicked -->
<!-- alert is fired to click timing info button first                  -->
function CheckTiming(){

    if(!document.gcGui.timingI.checked){
	if(!modifyFlag){
	        alert("To make baseline selection please click Timing info button first");             		        
	}
	
	Timinghide();
	
        for(i=0; i<document.gcGui.choices.options.length;i++){	
           document.gcGui.choices.options[i].selected = false;     
        }

	document.gcGui.choices.options[0].selected = true;
        return;
     }
}

<!-- This function gets called when the user selects a -->
<!-- format from the dropdown Output format menu choices -->
function setFormat(element) {
     document.gcGui.outformat.options[element.selectedIndex].selected = true;
     SetMenuFormat();
}


<!-- This function gets called when the user selects a location -->
<!-- from the dropdown location menu choices -->
function selectLocation(element) {     
   setLocation(element);
   setDefaultDelays();	
}

function setLocation(element) {     
     <!-- need to update the baseline selections menu -->
     if(!document.gcGui.timingI.checked){
	if(!modifyFlag){
        	alert("To make location selection please click Timing info button first");      	
	}
        BaseLineMenu(element.options[document.gcGui.oldIndex.value].value);
        SetMenuLocation();
        document.gcGui.location.options[document.gcGui.oldIndex.value].selected = true;
	document.gcGui.choices.options[0].selected=true;	
        document.gcGui.menulocation.value=document.gcGui.oldIndex.value;       
        return;
     }     
     
     document.gcGui.oldIndex.value=element.selectedIndex;
     BaseLineMenu(element.options[element.selectedIndex].value);//fixed selection problem with older Netscape
     SetMenuLocation(); 
     ifSelected=false;
	for(i=0;i<document.gcGui.choices.options.length;i++){
		if(document.gcGui.choices.options[i].selected){
			ifSelected=true;
		}
	}       
	if(!ifSelected){
		document.gcGui.choices.options[0].selected=true;  
	}	
}

<!-- This function gets called when the user selects a location -->
<!-- from the dropdown location menu choices and it updates the -->
<!-- baseline selection menu to contain the choices for that location -->
function BaseLineMenu(s)
{
	bl=new String("");
	for (j=0; j<maxoptions; j++) {
	       document.gcGui.choices.options[j] = null;
         }
	document.gcGui.choices.options.length=0;
	
     if (s == "pti") { 
	 for(i=0;i<pti_length;i++){	
        	 bl = new String(pti[i]);
	         document.gcGui.choices.options[i] = new Option(bl,bl);
	 }          	
         numoptions=i+1;
	 
     } else if (s == "npoi") {                
	  for (i=0; i<npoi_length; i++) {
		bl = npoi[i];	 
	        document.gcGui.choices.options[i] = new Option(bl,bl);
          }
          numoptions=i+1;

   } else if (s == "ki") {
	  for (i=0; i<ki_length; i++) {
		bl = ki[i];	 
	        document.gcGui.choices.options[i] = new Option(bl,bl);
          }
          numoptions=i+1;

   } else if (s == "kinull") {
	  for (i=0; i<kinull_length; i++) {
		bl = kinull[i];	 
	        document.gcGui.choices.options[i] = new Option(bl,bl);
          }
          numoptions=i+1;

     } else if (s == "chara") {
           for (i=0; i<chara_length; i++) {
		bl = chara[i];	 
	        document.gcGui.choices.options[i] = new Option(bl,bl);
          }
          numoptions=i+1;

     } else if (s == "vlti") {

           for(i=0;i<vlti_length;i++){
         	 bl = vlti[i];
	          document.gcGui.choices.options[i] = new Option(bl,bl);
	 }          	
         numoptions=i+1;

     } else if (s == "susi") {
           for(i=0;i<susi_length;i++){
         	 bl = susi[i];
	          document.gcGui.choices.options[i] = new Option(bl,bl);
	 }          	
         numoptions=i+1;
     }
}



<!-- There are a number of subcategories in the form whereby the -->
<!-- category must be selected in order for the sub-options -->
<!-- in the category to become enabled.  -->
<!-- If a category is deselected, then the -->
<!-- the sub-options become disabled -->

    
<!-- Enable and disable Timing category -->
function TimingEnable() {
     if (document.gcGui.timingI.checked == false) {
	  Timinghide();
     } else if (document.gcGui.timingI.checked == true) {
	  Timingshow();
     }
}

<!-- Disable the timing sub-options --> 
function Timinghide()
{
     document.gcGui.calender.disabled = true;
     document.gcGui.timing.disabled = true;
     document.gcGui.uv.disabled = true;

     document.gcGui.location.disabled = true;
     document.gcGui.choices.disabled = true;

     document.gcGui.zangle.disabled=true;
     document.gcGui.wavelength.disabled = true;
     document.gcGui.zangle.disabled = true;
     document.gcGui.wlength.disabled = true;
     document.gcGui.dlimit.disabled = true;
     document.gcGui.dMin.disabled = true;
     document.gcGui.dMax.disabled = true;
     document.gcGui.boffset.disabled = true;

     document.gcGui.selectdate.disabled = true;
     document.gcGui.month.disabled = true;
     document.gcGui.day.disabled = true;
     document.gcGui.year.disabled = true;

     document.gcGui.CTime.disabled=true;
     document.gcGui.NullDepth.disabled=true;

     document.gcGui.delaylimit[0].disabled=true;
     document.gcGui.delaylimit[1].disabled=true;
     document.gcGui.delaylimit[2].disabled=true;

     document.gcGui.dlimit.disabled=true;
     document.gcGui.dMin.disabled=true;
     document.gcGui.dMax.disabled=true; 
}

<!-- Enable the timing sub-options -->
function Timingshow()
{
     document.gcGui.calender.disabled = false;
     document.gcGui.timing.disabled = false;
     document.gcGui.uv.disabled = false;

     document.gcGui.location.disabled = false;
     document.gcGui.choices.disabled = false;

     document.gcGui.zangle.disabled      = false;
     document.gcGui.boffset.disabled     = false;     

     document.gcGui.dMin.disabled        = true;
     document.gcGui.dMax.disabled        = true;
     document.gcGui.dlimit.disabled      = true;
     document.gcGui.selectdate.disabled  = false;

     document.gcGui.delaylimit[0].disabled   = false;
     document.gcGui.delaylimit[1].disabled  = false;
     document.gcGui.delaylimit[2].disabled  = false;

     document.gcGui.NullDepth.disabled   = false;
   

	if(document.gcGui.uv.checked || document.gcGui.timing.checked){
		document.gcGui.CTime.disabled = false;	
		if(document.gcGui.uv.checked){
			document.gcGui.wavelength.disabled=false;
			TPEnable(4);
		}
	}

        if(!document.gcGui.delaylimit[0].checked &&
	   !document.gcGui.delaylimit[1].checked &&
	   !document.gcGui.delaylimit[2].checked)
	{
                document.gcGui.delaylimit[0].checked=true;
        }

	
     TPEnable(1);
     TPEnable(3);	
     TPEnable(7);    	
     TPEnable(8);     	
}


<!-- Enable and disable the minV,maxV,minK,maxK,minN,maxN options -->
function MMEnable(i) {
     if (i==0) {	 
	       MMshow(0);
     } else if (i==1) {
	       MMshow(1);
     } else if (i==2) {
	       MMshow(2);
     } else if (i==3) {
	       MMshow(3);
     }else if (i==4) {
          if (document.gcGui.uv.checked == false) {
	       MMhide(4);
          } else if (document.gcGui.uv.checked == true) {
	       MMshow(4);
          }
     }else if (i==5) {
          if (document.gcGui.maxDiam.checked == false) {
	       MMhide(5);
          } else if (document.gcGui.maxDiam.checked == true) {
	       MMshow(5);
          }
     }else if (i==6){
	 if (document.gcGui.timing.checked == false) {
	       MMhide(6);
          } else if (document.gcGui.timing.checked == true) {
	       MMshow(6);
          }

     } else if (i==7) {
         if (document.gcGui.NBand.checked == false) {
               MMhide(7);
          } else if (document.gcGui.NBand.checked == true) {
               MMshow(7);
          }
     }
}

<!-- disable the minV,maxV,minK,maxK,minN,maxN options -->
function MMhide(i)
{
     if (i == 0) document.gcGui.minV.disabled = true;
     else if (i == 1) document.gcGui.maxV.disabled = true;
     else if (i == 2) document.gcGui.minK.disabled = true;
     else if (i == 3) document.gcGui.maxK.disabled = true;
     else if (i == 4){
	 document.gcGui.wavelength.disabled=true;
	 document.gcGui.wlength.disabled   =true;	 
	 if(!document.gcGui.timing.checked){
		 document.gcGui.CTime.disabled     =true;
	 }
     }
     else if (i == 5) document.gcGui.maxAD.disabled = true;
     else if (i == 6) {
	if(!document.gcGui.uv.checked){
		document.gcGui.CTime.disabled = true;		
	}
     }

     else if (i == 7){
        if(!document.gcGui.NBand.checked){
          document.gcGui.nsource[0].disabled=true;
          document.gcGui.nsource[1].disabled=true;

          if(!document.gcGui.ksource[1].checked)
             document.gcGui.usemeasurement.disabled = true;
          else if (document.gcGui.ksource[1].checked) 
             document.gcGui.usemeasurement.disabled = false;
        }
     }
}

<!-- enable the minV,maxV,minK,maxK,minN,maxN options -->
function MMshow(i)
{
     if (i == 0) document.gcGui.minV.disabled = false;
     else if (i == 1) document.gcGui.maxV.disabled = false;
     else if (i == 2) document.gcGui.minK.disabled = false;
     else if (i == 3) document.gcGui.maxK.disabled = false;
     else if (i == 4) {
	document.gcGui.wavelength.disabled=false;
	document.gcGui.CTime.disabled=false;
        TPEnable(4);
	}
     else if (i == 5) {
	//document.gcGui.maxAD.enabled = true;
	document.gcGui.maxAD.disabled=false;
	}
     else if (i == 6) {
	document.gcGui.CTime.disabled=false;
	}

     else if (i == 7){
        if(document.gcGui.NBand.checked){
           document.gcGui.nsource[0].disabled=false;
           document.gcGui.nsource[1].disabled=false;
        }

        if(document.gcGui.nsource[1].checked) 
           document.gcGui.usemeasurement.disabled = false;
     }
}	


<!-- Enable and disable the zenthangle,delaylimit, -->
<!-- biasoffset, and selectdate options -->
function TPEnable(i) {
     if (i==0) {
     } else if (i==3) {
          if (document.gcGui.selectdate.checked == false) {
	       TPhide(3);
          } else if (document.gcGui.selectdate.checked == true) {
	       TPshow(3);
          }
     } else if (i==4) {	
          if (document.gcGui.wavelength.checked == false) {
	       TPhide(4);
          } else if (document.gcGui.wavelength.checked == true) {
	       TPshow(4);
          }
     } else if (i==7){
	if (document.gcGui.sendMail.checked == false) {
		TPhide(7);
	} else if (document.gcGui.sendMail.checked == true) {
		TPshow(7);
	}
     } else if (i==8) {
        if (document.gcGui.delaylimit[0].checked == false){
                TPhide(8);
        } else if (document.gcGui.delaylimit[0].checked == true) {
		TPshow(8);
	}
     }	else if (i==9) {
        if (document.gcGui.delaylimit[1].checked == false){
                TPhide(9);
        } else if (document.gcGui.delaylimit[1].checked == true) {
		TPshow(9);
	}
     }	else if (i==10) {
        if (document.gcGui.delaylimit[2].checked == false){
                TPhide(10);
        } else if (document.gcGui.delaylimit[2].checked == true) {
		TPshow(10);
	}
    }
}

<!-- Disable the zenthangle,delaylimit, -->
<!-- biasoffset, and selectdate options  -->
function TPhide(i)
{
     if (i==3) {
	document.gcGui.month.disabled = true;
        document.gcGui.day.disabled = true;
        document.gcGui.year.disabled = true;
     }
     else if (i==4) {
	document.gcGui.wlength.disabled=true;
     }      
     else if (i==7) {
	document.gcGui.email.disabled=true;
     }
     else if (i==8){
	<!-- document.gcGui.delaylimit[0].checked=false; -->
        <!-- document.gcGui.delaylimit[1].checked=true; -->
        <!-- document.gcGui.delaylimit[2].checked=false; -->
	<!-- document.gcGui.dlimit.disabled=true;	 -->
	<!-- document.gcGui.dMin.disabled=true; -->
	<!-- document.gcGui.dMax.disabled=true; -->
     }
     else if (i==9){
        <!-- document.gcGui.delaylimit[0].checked=true; -->
        <!-- document.gcGui.delaylimit[1].checked=false; -->
        <!-- document.gcGui.delaylimit[2].checked=false; -->
	document.gcGui.dlimit.disabled=true;
	<!-- document.gcGui.dMin.disabled=true; -->
	<!-- document.gcGui.dMax.disabled=true; -->
     }
     else if (i==10){
        <!-- document.gcGui.delaylimit[0].checked=true; -->
        <!-- document.gcGui.delaylimit[1].checked=false; -->
        <!-- document.gcGui.delaylimit[2].checked=false; -->
	<!-- document.gcGui.dlimit.disabled=true; -->
	document.gcGui.dMin.disabled=true;
	document.gcGui.dMax.disabled=true;
     }
}

<!-- Enable the zenthangle,delaylimit, ->
<!-- biasoffset, and selectdate options ->
function TPshow(i)
{
     if (i==3) {
	document.gcGui.month.disabled = false;
	document.gcGui.day.disabled = false;
	document.gcGui.year.disabled = false;
     } else if (i==4) {
	document.gcGui.wavelength.disabled=false;
	document.gcGui.wlength.disabled=false;
     } else if (i==7) {
	document.gcGui.sendMail.disabled=false;
	document.gcGui.email.disabled=false;
     } else if (i==8) {
        <!-- document.gcGui.delaylimit[0].checked=true; -->
        <!-- document.gcGui.delaylimit[1].checked=false; -->
        <!-- document.gcGui.delaylimit[2].checked=false; -->
	TPhide(9);
	TPhide(10);
     } else if (i==9) {
        <!-- document.gcGui.delaylimit[0].checked=false; -->
        <!-- document.gcGui.delaylimit[1].checked=true; -->
        <!-- document.gcGui.delaylimit[2].checked=false; -->
	document.gcGui.dlimit.disabled=false;
	TPhide(8);
	TPhide(10);
     } else if (i==10) {
        <!-- document.gcGui.delaylimit[0].checked=false; -->
        <!-- document.gcGui.delaylimit[1].checked=true; -->
        <!-- document.gcGui.delaylimit[2].checked=true; -->
	document.gcGui.dMax.disabled=false;
	document.gcGui.dMin.disabled=false;		
	TPhide(8);
	TPhide(9);
     }
}

<!-- Enable and Disable the fbol category -->
function FbolEnable() {
     if (document.gcGui.fbol.checked == false) {	  
	  Fbolhide();
     } else if (document.gcGui.fbol.checked == true) {
	if(document.gcGui.browser.checked){
	   alert("The Simbad Query-->Browser option is not currently supported with the fbol Diameters option.\nThe Browser option is de-selected.");
	}
	  document.gcGui.browser.disable=true;
	  document.gcGui.browser.checked=false;
	  Fbolshow();
     }
}
<!-- do not let user to select browser if fbol is already selected. -->
function CheckFBol(){
	if(document.gcGui.fbol.checked){
		alert("The Simbad Query-->Browser option is not currently supported with the fbol Diameters option.\nTo select the Browser option, first please de-select the fbol Diameters option.");
		document.gcGui.browser.disable=true;
		document.gcGui.browser.checked=false;
		
	}
}
<!-- Disable the fbol options -->
function Fbolhide()
{
     document.gcGui.longWL.disabled = true;
     document.gcGui.TwoMass.disabled = true;
     document.gcGui.constrainTemp.disabled = true;
     document.gcGui.savePhotometry.disabled = true;
     document.gcGui.fbolPlot.disabled = true;
}

<!-- Enable the fbol options -->
function Fbolshow()
{
     document.gcGui.longWL.disabled = false;
     document.gcGui.TwoMass.disabled = false;
     document.gcGui.constrainTemp.disabled = false;
     document.gcGui.savePhotometry.disabled = false;
     document.gcGui.fbolPlot.disabled = false;
}


<!-- if Simbad Query is Clicked, enable sub obtions -->
<!-- if Simbad Query is unClicked, disable sub obtions -->
function SimbadEnable() {
     if (document.gcGui.simbadI.checked == false) {
	  SimbadIhide();
     } else if (document.gcGui.simbadI.checked == true) {
	  SimbadIshow();
     }
}

<!-- if Photometry Options "2MASS" and/or "IRAS" radio button is Clicked, enable -->
<!-- "Use 2MASS/IRAS measurements", if neither 2MASS or IRAS is selected, -->
<!--  disable Use 2MASS/IRAS measurements -->
function UseMeasurementsEnable(mtype) {
    if((document.gcGui.ksource[1].checked) || ((document.gcGui.nsource[1].checked) 
     && (document.gcGui.nsource[1].disabled == false)))
        document.gcGui.usemeasurement.disabled = false;
    else if ((!document.gcGui.ksource[1].checked) && ((document.gcGui.nsource[1].disabled == true) || (!document.gcGui.nsource[1].checked)))
        document.gcGui.usemeasurement.disabled = true;
}

<!-- if Calibrator radio button is Clicked, enable calibrator sub obtions, -->
<!--    and disable User Search suboptions -->
<!-- if User Search radio button is Clicked, enable user search sub options, -->
<!--    and disable calibrator sub obtions -->
function CalibratorSearchEnable(caltype) {
    if(caltype=='user') {
        CalibratorsHide();
        document.gcGui.caltext.disabled = false;
    }
    else if(caltype=='calib') {
        CalibratorsShow();
        document.gcGui.caltext.disabled = true;
    }
}


<!-- if Calibrators Query is Clicked, enable sub obtions -->
<!-- if Calibrators Query is unClicked, disable sub obtions -->
function CalibratorsEnable() {
     if (document.gcGui.cal.checked == false) {	 
	  CalibratorsHide();
          document.gcGui.calsearch[0].disabled=true;
          document.gcGui.calsearch[1].disabled=true;
          document.gcGui.caltext.disabled=true;
     } else if (document.gcGui.cal.checked == true) {
          if(document.gcGui.calsearch[1].checked == true) {
	       CalibratorsShow();
               document.gcGui.caltext.disabled=true;
          }
          else if(document.gcGui.calsearch[1].checked == false) {
               CalibratorsHide();
               document.gcGui.caltext.disabled=false;
          }

          document.gcGui.calsearch[0].disabled=false;
          document.gcGui.calsearch[1].disabled=false;
     }
}
<!-- Disable calibrators query options -->
function CalibratorsHide(){
	document.gcGui.main.disabled=true;
	document.gcGui.giant.disabled=true;
	document.gcGui.supergiant.disabled=true;	
	document.gcGui.maxDiam.disabled=true;
	document.gcGui.maxAD.disabled=true;
	document.gcGui.searchradius.disabled=true;
	document.gcGui.minV.disabled=true;
	document.gcGui.maxV.disabled=true;	
	document.gcGui.minK.disabled=true;
	document.gcGui.maxK.disabled=true;
        document.gcGui.minN.disabled=true;
        document.gcGui.maxN.disabled=true;
        document.gcGui.minL.disabled=true;
        document.gcGui.maxL.disabled=true;
}
<!-- Disable calibrators query options -->
function CalibratorsShow(){
	document.gcGui.main.disabled=false;
	document.gcGui.giant.disabled=false;
	document.gcGui.supergiant.disabled=false;
	document.gcGui.maxDiam.disabled=false;	
	if(document.gcGui.maxDiam.checked){
		document.gcGui.maxAD.disabled=false;	
	}else{
		document.gcGui.maxAD.disabled=true;
	}
	document.gcGui.calradius.checked=false;	
	document.gcGui.searchradius.disabled=false;
	document.gcGui.minV.disabled=false;
	document.gcGui.maxV.disabled=false;	
	document.gcGui.minK.disabled=false;
	document.gcGui.maxK.disabled=false;
        document.gcGui.minN.disabled=false;
        document.gcGui.maxN.disabled=false;
        document.gcGui.minL.disabled=false;
        document.gcGui.maxL.disabled=false;
}
<!-- Disable the Simbad query options -->
function SimbadIhide()
{
     document.gcGui.commonNames.disabled = true;
     document.gcGui.meas.disabled = true;
     document.gcGui.browser.disabled = true;
     document.gcGui.browser.disabled = true;
}

<!-- Enable the Simbad query options -->
function SimbadIshow()
{
     document.gcGui.commonNames.disabled = false;
     document.gcGui.meas.disabled = false;
     document.gcGui.browser.disabled = false;
     document.gcGui.browser.disabled = false;
}

//======================
//functions from gcGuitop.html
//====================
<!-- default menu to first example -->
function SubmitInit() {
     document.menu.examples.options[0].selected = true;
     SubmitExample();
}
<!-- fill out form for selected example -->
function SubmitExample() {

     ptr = this;
     var index=document.menu.examples.options.selectedIndex;

     if (document.menu.examples.options[0].selected) {
	  ptr.SetExample0();
     } else if (document.menu.examples.options[1].selected) {
	  ptr.SetExample1();
     } else if (document.menu.examples.options[2].selected) {
	  ptr.SetExample2();
     } else if (document.menu.examples.options[3].selected) {
	  ptr.SetExample3();
     } else if (document.menu.examples.options[4].selected) {
	  ptr.SetExample4();
     } else if (document.menu.examples.options[5].selected) {
	  ptr.SetExample5();
     } else if (document.menu.examples.options[6].selected) {
	  ptr.SetExample6();
     } else if (document.menu.examples.options[7].selected) {
	  ptr.SetExample7();
     } else if (document.menu.examples.options[8].selected) {
	  ptr.SetExample8();
     } else if (document.menu.examples.options[9].selected) {
	  ptr.SetExample9();
     } else if (document.menu.examples.options[10].selected) {
	  ptr.SetExample10();
     }

	document.menu.examples.options[index].selected=true;

}

function setDefaultDelays(){
	document.gcGui.dlimit.value=setDefaultDelayLimit(document.gcGui.location.options[document.gcGui.location.selectedIndex].value);

}
function doNothing(theForm){
	//this function catches the submit event from the form
}
