
function validateDate(month, day, year) {

  var year = document.form.startyear.options[document.form.startyear.selectedIndex].value;
  var month = document.form.startmonth.options[document.form.startmonth.selectedIndex].value;
  var day = document.form.startday.options[document.form.startday.selectedIndex].value;
  
  if (year > 1980) {
	return true;
  }
  if (year < 1980) {
    window.alert('There is no data prior to July 28, 1980');
	return false;
  }
  if (month > 07) {
    return true;
  }
  if (month < 07) {
    window.alert('There is no data prior to July 28, 1980');
    return false;
  }
  if (day > 28) {
    return true;
  }
  if (day < 28) {
function validateDate(month, day, year) {

  var year = document.form.startyear.options[document.form.startyear.selectedIndex].value;
  var month = document.form.startmonth.options[document.form.startmonth.selectedIndex].value;
  var day = document.form.startday.options[document.form.startday.selectedIndex].value;
  
  if (year > 1980) {
	return true;
  }
  if (year < 1980) {
    window.alert('There is no data prior to July 28, 1980');
	return false;
  }
  if (month > 07) {
    return true;
  }
  if (month < 07) {
    window.alert('There is no data prior to July 28, 1980');
    return false;
  }
  if (day > 28) {
    return true;
  }
  if (day < 28) {
    window.alert('There is no data prior to July 28, 1980');
    return false;
  }
}


function dateCreate(isYrChange) {
		//--Month arrays
		daysInMonth = [	31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]
		monthArray = ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"]
		
		//--Date option boxes
		f_monthOpt = document.form.startmonth.options;
		f_dayOpt = document.form.startday.options;
		f_yearOpt = document.form.startyear.options;
		
		//--comment out for single date select boxes
		//t_monthOpt = document.forms.mainForm.monthTo.options;
		//t_dayOpt = document.forms.mainForm.dayTo.options;
		//t_yearOpt = document.forms.mainForm.yearTo.options;
		
		//--Get the "To" select box ranges for max values of the "From" selects
		
		//--Minimum and Maximum dates
	
	
		minYr = 1980;
		minMonth = 07-1; 			//--months are 1 based 
		minDay = 28;
	
	
		
		today = new Date();
		maxYr = today.getFullYear();
		maxMonth = today.getMonth();	//--returns 0 based month number
		maxDay = today.getDate();
						
		//--Initialize f_dayOpt array
		//f_dayOpt.length = 0;
		
		//sYear = parseInt(f_yearOpt[f_yearOpt.selectedIndex].value);
		//sMonth = parseInt(f_monthOpt[f_monthOpt.selectedIndex].value) - 1;
		//sDay = parseInt(f_dayOpt[f_dayOpt.selectedIndex].value);
		
		//-- ParseInt DOES NOT work for "08" & "09"
        sYear = f_yearOpt[f_yearOpt.selectedIndex].value/1;
        sMonth = f_monthOpt[f_monthOpt.selectedIndex].value/1 - 1;
        sDay = f_dayOpt[f_dayOpt.selectedIndex].value/1;
		
		//alert("f_monthOpt.selectedIndex: "+f_monthOpt.selectedIndex+"\nf_monthOpt.length: "+f_monthOpt.length);
		//alert("f_monthOpt[f_monthOpt.selectedIndex]: "+f_monthOpt[f_monthOpt.selectedIndex]+"\nf_monthOpt[f_monthOpt.selectedIndex].value: "+f_monthOpt[f_monthOpt.selectedIndex].value);
		//alert("parseInt(f_monthOpt[f_monthOpt.selectedIndex].value): "+parseInt(f_monthOpt[f_monthOpt.selectedIndex].value));
		//alert("sYear: "+sYear+"\nsMonth: "+sMonth+"\nsDay: "+sDay+"\nminYr: "+minYr+"\nminMonth: "+minMonth+"\nMinDay: "+minDay+"\nmaxYr: "+maxYr+"\nmaxMonth: "+maxMonth+"\nmaxDay: "+maxDay);		
	
	//--NS 6 has timing issues.  THese are to store the indexes that we will select
		iYear = -1;
		iMonth = -1;
		iDay = -1;
		//--Set up correct number of days for February
		daysInMonth[1] = ((sYear%4==0) && ( (!(sYear%100 ==0)) || (sYear % 400 == 0 )))?29:28;
		
		//--Populate select boxes starting with minDate values
		if((sYear == minYr) && isYrChange) {
			//alert("Min Year Selected");
			//alert(sYear);
			f_monthOpt.length = 0;
			for(var i=minMonth; i < monthArray.length; i++)
				f_monthOpt[f_monthOpt.length] = new Option(monthArray[i], i+1);
			//alert("sMonth: "+sMonth+"\nminMonth: "+minMonth);
			if(sMonth <= minMonth) {
				f_dayOpt.length = 0;
				iMonth = 0;
				for(var i=minDay; i < daysInMonth[minMonth]+1; i++)
					f_dayOpt[f_dayOpt.length] = new Option(i,i);
				if((sMonth == minMonth) && (sDay > minDay))
					iDay = sDay - minDay;
					
				else
					iDay = 0;
					
			} else {					
				iMonth = sMonth - minMonth;
				if(sDay > daysInMonth[sMonth])
					iDay = daysInMonth[sMonth] - 1;
				else
					iDay = sDay - 1;
			}			
			
		//--Populate select boxes with maxDate values
		}else if((sYear == maxYr) && isYrChange){
			//alert("max year & year change");
			f_monthOpt.length = 0;
			f_dayOpt.length = 0;
			
			for(var i =0; i < maxMonth+1; i++)
				f_monthOpt[f_monthOpt.length] = new Option(monthArray[i], i+1);
			if(sMonth > maxMonth) {
				iMonth = maxMonth;
				for(var i=0; i < maxDay; i++)
					f_dayOpt[f_dayOpt.length] = new Option(i,i);
				iDay = maxDay - 1;
			}else if(sMonth == maxMonth){
				for(var i=1; i < maxDay + 1; i++)
					f_dayOpt[f_dayOpt.length] = new Option(i,i);
				iMonth = maxMonth;
				if(sDay > maxDay)
					iDay = maxDay - 1;
				else
					iDay = sDay - 1;
				
			
			}else {
			
////----THINK LEAP YEAR !
				iMonth = sMonth;
				for(var i=1; i < daysInMonth[sMonth] + 1; i++)
					f_dayOpt[f_dayOpt.length] = new Option(i,i);
				if(sDay > daysInMonth[sMonth]) {
					iDay = daysInMonth[sMonth] - 1;
				} else {
					iDay = sDay - 1;
				}
			}
	

		//--Populate select boxes with all normal dates
		} else if(isYrChange) {
		//alert("plain old year change");
			f_dayOpt.length = 0;
			f_monthOpt.length =0;
////----THINK CHANGING FROM MIN
			for(var i=1; i < daysInMonth[sMonth]+1; i++) 
					f_dayOpt[f_dayOpt.length] = new Option(i,i);
			for(var i=0; i < monthArray.length; i++)
				f_monthOpt[f_monthOpt.length] = new Option(monthArray[i], i+1);
			iMonth = sMonth;	
			if(sDay > daysInMonth[sMonth])
				iDay = daysInMonth[sMonth] - 1;

			else
				iDay = sDay - 1;
						
		//--Only the month has changed, not year
		}else {
			f_dayOpt.length = 0;
			//alert("Month Change only");
			if(sMonth == minMonth && (sYear == minYr)) {
				//alert("Is min month");
				for(var days=minDay; days < daysInMonth[sMonth] + 1; days++)
					f_dayOpt[f_dayOpt.length] = new Option(days, days);
				if(sDay < minDay)  {
					iDay = 0;
				}else if(sDay > daysInMonth[sMonth])  {
					iDay = daysInMonth[sMonth] - 1;
				}else {
					iDay = sDay - minDay;
				}
				
					
			}else if(sMonth == maxMonth && (sYear == maxYr)) {
				//alert("Is max Year");
				for(var days=1; days < maxDay + 1; days++)
					f_dayOpt[f_dayOpt.length] = new Option(days, days);
				if(sDay > maxDay){
					iDay = maxDay - 1;
				} else {
					iDay = sDay - 1;
				}
					
			}else {
				//alert("month only change (!max/min)");
				//alert("f_dayOpt length:"+f_dayOpt.length);
				for(var days=1; days < daysInMonth[sMonth] + 1; days++)
					f_dayOpt[f_dayOpt.length] = new Option(days, days);
				if(sDay > daysInMonth[sMonth]){
					iDay = daysInMonth[sMonth] - 1;
				}else {
					iDay = sDay -1;
				}
				//alert("iDay: "+iDay+"\nsDay: "+sDay);
			}
	
		}
		//alert(iDay);
		if(iMonth > -1)
			setTimeout("f_monthOpt[iMonth].selected = true",10);
		setTimeout("f_dayOpt[iDay].selected = true", 10);
	}

    window.alert('There is no data prior to July 28, 1980');
    return false;
  }
}


function dateCreate(isYrChange) {
		//--Month arrays
		daysInMonth = [	31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]
		monthArray = ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"]
		
		//--Date option boxes
		f_monthOpt = document.form.startmonth.options;
		f_dayOpt = document.form.startday.options;
		f_yearOpt = document.form.startyear.options;
		
		//--comment out for single date select boxes
		//t_monthOpt = document.forms.mainForm.monthTo.options;
		//t_dayOpt = document.forms.mainForm.dayTo.options;
		//t_yearOpt = document.forms.mainForm.yearTo.options;
		
		//--Get the "To" select box ranges for max values of the "From" selects
		
		//--Minimum and Maximum dates
	
	
		minYr = 1980;
		minMonth = 07-1; 			//--months are 1 based 
		minDay = 28;
	
	
		
		today = new Date();
		maxYr = today.getFullYear();
		maxMonth = today.getMonth();	//--returns 0 based month number
		maxDay = today.getDate();
						
		//--Initialize f_dayOpt array
		//f_dayOpt.length = 0;
		
		//sYear = parseInt(f_yearOpt[f_yearOpt.selectedIndex].value);
		//sMonth = parseInt(f_monthOpt[f_monthOpt.selectedIndex].value) - 1;
		//sDay = parseInt(f_dayOpt[f_dayOpt.selectedIndex].value);
		
		//-- ParseInt DOES NOT work for "08" & "09"
        sYear = f_yearOpt[f_yearOpt.selectedIndex].value/1;
        sMonth = f_monthOpt[f_monthOpt.selectedIndex].value/1 - 1;
        sDay = f_dayOpt[f_dayOpt.selectedIndex].value/1;
		
		//alert("f_monthOpt.selectedIndex: "+f_monthOpt.selectedIndex+"\nf_monthOpt.length: "+f_monthOpt.length);
		//alert("f_monthOpt[f_monthOpt.selectedIndex]: "+f_monthOpt[f_monthOpt.selectedIndex]+"\nf_monthOpt[f_monthOpt.selectedIndex].value: "+f_monthOpt[f_monthOpt.selectedIndex].value);
		//alert("parseInt(f_monthOpt[f_monthOpt.selectedIndex].value): "+parseInt(f_monthOpt[f_monthOpt.selectedIndex].value));
		//alert("sYear: "+sYear+"\nsMonth: "+sMonth+"\nsDay: "+sDay+"\nminYr: "+minYr+"\nminMonth: "+minMonth+"\nMinDay: "+minDay+"\nmaxYr: "+maxYr+"\nmaxMonth: "+maxMonth+"\nmaxDay: "+maxDay);		
	
	//--NS 6 has timing issues.  THese are to store the indexes that we will select
		iYear = -1;
		iMonth = -1;
		iDay = -1;
		//--Set up correct number of days for February
		daysInMonth[1] = ((sYear%4==0) && ( (!(sYear%100 ==0)) || (sYear % 400 == 0 )))?29:28;
		
		//--Populate select boxes starting with minDate values
		if((sYear == minYr) && isYrChange) {
			//alert("Min Year Selected");
			//alert(sYear);
			f_monthOpt.length = 0;
			for(var i=minMonth; i < monthArray.length; i++)
				f_monthOpt[f_monthOpt.length] = new Option(monthArray[i], i+1);
			//alert("sMonth: "+sMonth+"\nminMonth: "+minMonth);
			if(sMonth <= minMonth) {
				f_dayOpt.length = 0;
				iMonth = 0;
				for(var i=minDay; i < daysInMonth[minMonth]+1; i++)
					f_dayOpt[f_dayOpt.length] = new Option(i,i);
				if((sMonth == minMonth) && (sDay > minDay))
					iDay = sDay - minDay;
					
				else
					iDay = 0;
					
			} else {					
				iMonth = sMonth - minMonth;
				if(sDay > daysInMonth[sMonth])
					iDay = daysInMonth[sMonth] - 1;
				else
					iDay = sDay - 1;
			}			
			
		//--Populate select boxes with maxDate values
		}else if((sYear == maxYr) && isYrChange){
			//alert("max year & year change");
			f_monthOpt.length = 0;
			f_dayOpt.length = 0;
			
			for(var i =0; i < maxMonth+1; i++)
				f_monthOpt[f_monthOpt.length] = new Option(monthArray[i], i+1);
			if(sMonth > maxMonth) {
				iMonth = maxMonth;
				for(var i=0; i < maxDay; i++)
					f_dayOpt[f_dayOpt.length] = new Option(i,i);
				iDay = maxDay - 1;
			}else if(sMonth == maxMonth){
				for(var i=1; i < maxDay + 1; i++)
					f_dayOpt[f_dayOpt.length] = new Option(i,i);
				iMonth = maxMonth;
				if(sDay > maxDay)
					iDay = maxDay - 1;
				else
					iDay = sDay - 1;
				
			
			}else {
			
////----THINK LEAP YEAR !
				iMonth = sMonth;
				for(var i=1; i < daysInMonth[sMonth] + 1; i++)
					f_dayOpt[f_dayOpt.length] = new Option(i,i);
				if(sDay > daysInMonth[sMonth]) {
					iDay = daysInMonth[sMonth] - 1;
				} else {
					iDay = sDay - 1;
				}
			}
	

		//--Populate select boxes with all normal dates
		} else if(isYrChange) {
		//alert("plain old year change");
			f_dayOpt.length = 0;
			f_monthOpt.length =0;
////----THINK CHANGING FROM MIN
			for(var i=1; i < daysInMonth[sMonth]+1; i++) 
					f_dayOpt[f_dayOpt.length] = new Option(i,i);
			for(var i=0; i < monthArray.length; i++)
				f_monthOpt[f_monthOpt.length] = new Option(monthArray[i], i+1);
			iMonth = sMonth;	
			if(sDay > daysInMonth[sMonth])
				iDay = daysInMonth[sMonth] - 1;

			else
				iDay = sDay - 1;
						
		//--Only the month has changed, not year
		}else {
			f_dayOpt.length = 0;
			//alert("Month Change only");
			if(sMonth == minMonth && (sYear == minYr)) {
				//alert("Is min month");
				for(var days=minDay; days < daysInMonth[sMonth] + 1; days++)
					f_dayOpt[f_dayOpt.length] = new Option(days, days);
				if(sDay < minDay)  {
					iDay = 0;
				}else if(sDay > daysInMonth[sMonth])  {
					iDay = daysInMonth[sMonth] - 1;
				}else {
					iDay = sDay - minDay;
				}
				
					
			}else if(sMonth == maxMonth && (sYear == maxYr)) {
				//alert("Is max Year");
				for(var days=1; days < maxDay + 1; days++)
					f_dayOpt[f_dayOpt.length] = new Option(days, days);
				if(sDay > maxDay){
					iDay = maxDay - 1;
				} else {
					iDay = sDay - 1;
				}
					
			}else {
				//alert("month only change (!max/min)");
				//alert("f_dayOpt length:"+f_dayOpt.length);
				for(var days=1; days < daysInMonth[sMonth] + 1; days++)
					f_dayOpt[f_dayOpt.length] = new Option(days, days);
				if(sDay > daysInMonth[sMonth]){
					iDay = daysInMonth[sMonth] - 1;
				}else {
					iDay = sDay -1;
				}
				//alert("iDay: "+iDay+"\nsDay: "+sDay);
			}
	
		}
		//alert(iDay);
		if(iMonth > -1)
			setTimeout("f_monthOpt[iMonth].selected = true",10);
		setTimeout("f_dayOpt[iDay].selected = true", 10);
	}

