// START: URL parser script for use in the 'Dinosaur DataDig' update page

	var nMaxVars = 0;
	var sVarLine = "";
	var sName = new Array();
	var sValue = new Array();
	
	function getMaxVars() { return nMaxVars; }
	function getVarString() { return sVarLine; }
	function getNameArray() { return sName; }
	function getValueArray() { return sValue; }
		
	function parseCallingURL(sCallingURL) {
		//Get the calling URL and parse out variables
		sCallingURL = String(sCallingURL);
		
		if (sCallingURL.length == 0)
			return;
			
		// Check if there are any variables
		if (sCallingURL.indexOf('?') != -1) {
			sVarLine = String(sCallingURL.substring(sCallingURL.indexOf('?') + 1, sCallingURL.length));
		} else {
			// No variables
			return;
		}
		
		var nPos = 0;
		var sChar = "";
		var sWord = "";
		nMaxVars = 0;
		
		// Parse
		while (nPos < sVarLine.length) {
			sChar = sVarLine.substring(nPos, nPos + 1);
			
			if (sChar == "=") {
				sName[nMaxVars] = sWord;
				sWord = "";
				
			} else if (sChar == "&") {
				sValue[nMaxVars] = sWord;
				sWord = "";
				nMaxVars++;
				
			} else if (nPos == sVarLine.length - 1) {
				sWord += sVarLine.substring(nPos, nPos + 1);
				sValue[nMaxVars] = sWord;
				sWord = "";
				nMaxVars++;
				
			} else {
				sWord += sChar;
			}
			nPos++;
		}
	}
// FINISH: URL parser script for use in the 'Dinosaur DataDig' update page

function monthArray()
{
  month=new Array(12)
 month[0]="January"
 month[1]="February"
 month[2]="March"
 month[3]="April"
 month[4]="May"
 month[5]="June"
 month[6]="July"
 month[7]="August"
 month[8]="September"
 month[9]="October"
 month[10]="November"
 month[11]="December"
}

function genTest()
{
 alert ("genTest2");
}

function userDate(pageVar)
{
 var todaysDate = new Date();
 var thisDay = todaysDate.getDay();
 var thisDate = todaysDate.getDate();
 var thisMonth = todaysDate.getMonth();
 var thisYear = todaysDate.getFullYear();

 if (thisDay != 1) {
    if (thisDay == 0) {
	   thisDay = 7;
	}
 	if ((thisDate - (thisDay - 1)) < 1) {
	   if (thisMonth == 0) {
	      thisMonth = 11;
		  thisYear = thisYear - 1;
	   }
	   else {
	      thisMonth = thisMonth - 1;
	   }
	   var daysNum = 31;
	   if (thisMonth == 1) {
	      if ((thisYear % 4) == 0) {
		     daysNum = 29;
		  }
		  else {
		     daysNum = 28;
		  }
	   }
	   else if ((thisMonth == 3) || (thisMonth == 5) || (thisMonth == 8) || (thisMonth == 10)) {
	      daysNum = 30;
	   }
	   thisDate = (daysNum + (thisDate - (thisDay - 1)));
	}
	else {
	   thisDate = (thisDate - (thisDay - 1));
	}
 }
 if (pageVar) {
 usersDate += thisDate;
 usersMonth += (thisMonth + 1);
 usersYear += thisYear;
 }
 else {
  thisMonth = thisMonth + 1;
  document.forms['getStart'].elements[0].value = thisDate;
  document.forms['getStart'].elements[1].value = thisMonth;
  document.forms['getStart'].elements[2].value = thisYear;
  document.forms['getStart'].submit();
 }
}

// Creates date for header
function header_date()
{
var fullDate = new Date()
var weekday = new Array(7)
weekday[0]="Sunday"
weekday[1]="Monday"
weekday[2]="Tuesday"
weekday[3]="Wednesday"
weekday[4]="Thursday"
weekday[5]="Friday"
weekday[6]="Saturday"

monthArray();

var daySuffix=new Array()
daySuffix[0]="th"
daySuffix[1]="st"
daySuffix[2]="nd"
daySuffix[3]="rd"

var dayNum = fullDate.getDate();
	dayNum = dayNum.toString();
	if(dayNum>3 && dayNum<21){
	  dayNum=0;
	}
    else if(((dayNum.charAt(dayNum.length-1))>3) || ((dayNum.charAt(dayNum.length-1))==0)) {
      dayNum=0;
    }
	else{
	  dayNum=dayNum.charAt(dayNum.length-1);
	}
    dayNum = fullDate.getDate() + daySuffix[dayNum].sup();
document.write(weekday[fullDate.getDay()] +" "+ month[fullDate.getMonth()] +" "+ dayNum +" "+ fullDate.getFullYear());
}

// creates phone & fax numbers
function OpenNumbers()
{
 document.write("Phone: +61 8 8365 4682");
}

// creates address
function OpenAddress()
{
 document.write("<strong>DinosaurCentral</strong>&#174;<br>1 Jones Court,<br>HIGHBURY, SA 5089<br>AUSTRALIA");
}

// creates email link
function OpenEmail(box) 
{
   domain="dinosaurcentral.com";
   document.write("<a href=\"mailto:"+box+"@"+domain+"\">"+box+"@"+domain+"</a>"); 
}

// creates first tag of email address link
function partEmail(box) 
{
   document.write( "<a href=\"mailto:"+box+"@dinosaurcentral.com\">" ); 
}

// creates begining of first tag of email address link so subject may be added
function partEmailCut(box) 
{
   document.write( "<a href=\"mailto:"+box+"@dinosaurcentral.com" ); 
}

// creates recipient email address for Central Dispatch newsletter signup form
function HiddenRecipient(box) 
{
   domain="dinosaurcentral.com";
   document.write("<INPUT TYPE=\"hidden\" NAME=\"recipient\" VALUE=\""+box+"@"+domain+"\">"); 
}


// displays configuration dialogue boxes

function optionsbox(section, thisBox)
{
var IEversion = 9999;
if (/MSIE (\d+\.\d+);/.test(navigator.userAgent)){ //test for MSIE x.x;
 var IEversion= Number(RegExp.$1) // capture x.x portion and store as a number
}
 if (IEversion <= 7) { document.getElementById(section+"-config-"+thisBox).style.display="block"; }
 else { document.getElementById(section+"-config-"+thisBox).style.display="table"; }
 document.getElementById("FG-topshield").style.visibility="visible";
 if (document.getElementById("FG-botshield")){ document.getElementById("FG-botshield").style.visibility="visible"; }
}

// Changes the sort order of the current found list
function sortDinos(section, numElems, currSort)
{
 var newSort = true;
 for (x=0;x<=numElems;x++) {
      if (document.forms[section+'SortDino'].elements[x].checked) {
          if (document.forms[section+'SortDino'].elements[x].value == currSort) {
              document.getElementById(section+"-config-sort").style.display="none";
              document.getElementById("FG-topshield").style.visibility="hidden";
              document.getElementById("FG-botshield").style.visibility="hidden";
              newSort = false;
              break;
          }
      }
 }
 if (newSort) {
     document.forms[section+'SortDino'].submit();
 }
}

// Changes the units of measurement in data window & search dialogue
function changeUnits(currUnits)
{
 var newUnits = true;
 for (x=0;x<=1;x++) {
      if (document.forms['FGDinoUnits'].elements[x].checked) {
          if (document.forms['FGDinoUnits'].elements[x].value == currUnits) {
              document.getElementById("FG-config-options").style.visibility="hidden";
              document.getElementById("FG-topshield").style.visibility="hidden";
              document.getElementById("FG-botshield").style.visibility="hidden";
              newUnits = false;
              break;
          }
      }
 }
 if (newUnits) {
     if (document.forms['FGSearchDino'].elements[2].value == 'Dist') {
         if (currUnits == 'imp') {
             document.forms['FGSearchDino'].elements[8].value = 'Length';
             document.forms['FGSearchDino'].elements[9].value = 'Height';
             if (document.forms['FGSearchDino'].elements[19].value != '') {
                 document.forms['FGSearchDino'].elements[1].value = document.forms['FGSearchDino'].elements[19].value;
             }
             else {
                   convertDist('toMet');
             }
             document.forms['FGSearchDino'].elements[27].value = 'met';
         }
         else {
               document.forms['FGSearchDino'].elements[8].value = 'impLength';
               document.forms['FGSearchDino'].elements[9].value = 'impHeight';
               if ((document.forms['FGSearchDino'].elements[20].value != '')||(document.forms['FGSearchDino'].elements[21].value != '')) {
                   convertImp();
               }
               else {
                     convertDist('toImp');
               }
               document.forms['FGSearchDino'].elements[27].value = 'imp';
         }
         document.forms['FGSearchDino'].submit();
         return;
     }
     else if (document.forms['FGSearchDino'].elements[2].value == 'Mass') {
              if (currUnits == 'imp') {
                  document.forms['FGSearchDino'].elements[10].value = 'Weight';
                  convertMass('toMet');
                  document.forms['FGSearchDino'].elements[27].value = 'met';
              }
              else {
                    document.forms['FGSearchDino'].elements[10].value = 'impWeight';
                    convertMass('toImp');
                    document.forms['FGSearchDino'].elements[27].value = 'imp';
              }
              document.forms['FGSearchDino'].submit();
              return;
     }
     document.forms['FGDinoUnits'].submit();
 }
}

// converts dist value from met to imp or visa versa
function convertDist(conversion)
{
 var newVal = 0;
 if (conversion == 'toMet') {
      var  value20 = document.forms['FGSearchDino'].elements[20].value;
      var  value21 = document.forms['FGSearchDino'].elements[21].value;
      value20 = value20 * 12;
      value21 = value21 * 1;
      value21 = value21 + value20;
      newVal = Math.round(value21 * 2.54);
      document.forms['FGSearchDino'].elements[1].value = newVal;
      document.forms['FGSearchDino'].elements[19].value = newVal;
 }
 else {
       newVal = Math.round(document.forms['FGSearchDino'].elements[19].value * 0.393700787);
       document.forms['FGSearchDino'].elements[1].value = newVal;
       document.forms['FGSearchDino'].elements[20].value = Math.floor(newVal/12);
       document.forms['FGSearchDino'].elements[21].value = Math.round(newVal%12);
 }
}

// converts mass value from met to imp or visa versa
function convertMass(conversion)
{
 var newVal = 0;
 if (conversion == 'toMet') {
     newVal = Math.round(document.forms['FGSearchDino'].elements[17].value * 0.45359237);
 }
 else {
       newVal = Math.round(document.forms['FGSearchDino'].elements[17].value * 2.20462);
 }
 document.forms['FGSearchDino'].elements[1].value = newVal;
 document.forms['FGSearchDino'].elements[17].value = newVal;
}

// closes configuration dialogue boxes & resets the form within
function cancel(section, thisBox, thisForm, currUnits)
{
 document.getElementById("FG-topshield").style.visibility="hidden";
 if (document.getElementById("FG-botshield")) { document.getElementById("FG-botshield").style.visibility="hidden"; }
 document.getElementById(section+"-config-"+thisBox).style.display="none";
 if (thisForm) { document.forms[thisForm].reset(); }
 if (thisForm == 'FGSearchDino') {
     document.getElementById("FG-searchTxt").style.display="none";
     document.getElementById("FG-searchmetDist").style.display="none";
     document.getElementById("FG-searchimpDist").style.display="none";
     document.getElementById("FG-searchMass").style.display="none";
     document.getElementById("FG-searchChron").style.display="none";
     document.getElementById("FG-searchops").style.display="none";
     if ((document.forms['FGSearchDino'].elements[2].value == '')||(document.forms['FGSearchDino'].elements[2].value == 'Txt')) {
         document.getElementById("FG-searchTxt").style.display="block";
     }
     else {
           document.getElementById("FG-searchops").style.display="block";
           if (document.forms['FGSearchDino'].elements[2].value == 'Dist') {
               document.getElementById("FG-search"+currUnits+"Dist").style.display="block";
           }

           else if (document.forms['FGearchDino'].elements[2].value == 'Mass') {
                    document.getElementById("FG-searchMass").style.display="block";
           }
           else {
                 document.getElementById("FG-searchChron").style.display="block";
           }
     }
 }
 else if (thisForm == 'searchMovie') {
          document.getElementById("mg-searchTxt").style.display="none";
          document.getElementById("mg-searchops").style.display="none";
               if ((document.forms['searchMovie'].elements[2].value == '')||(document.forms['searchMovie'].elements[2].value == 'Txt')) {
                   document.getElementById("mg-searchTxt").style.display="block";
               }
               else {
                     document.getElementById("mg-searchops").style.display="block";
               }
 }
}

// toggles between record data page & large image page
function flipTab(onTab, offTab)
{
 document.getElementById("FG-toptab-"+offTab).style.zIndex=16;
 document.getElementById("FG-"+offTab).style.display="none";
 document.getElementById("FG-toptab-"+onTab).style.zIndex=20;
 document.getElementById("FG-"+onTab).style.display="block";
 document.forms['FGFindDino'].elements[1].value = onTab;
 document.forms['FGSortDino'].elements[9].value = onTab;
 document.forms['FGSearchDino'].elements[29].value = onTab;
 document.forms['FGDinoUnits'].elements[3].value = onTab;
}

function gallSet(section, onSet, onSetTab, currentSet)
{

 var tabLayers= new Array(7)
 tabLayers[0]=6;
 tabLayers[1]=5;
 tabLayers[2]=4;
 tabLayers[3]=3;
 tabLayers[4]=2;
 tabLayers[5]=1;
 tabLayers[6]=0;

 document.getElementById("page-tab-"+(onSet*1+1)).style.zIndex=9;
 document.getElementById("page-tab-label"+(onSet*1+1)).style.zIndex=10;
 document.getElementById("page-tab-"+((document.forms['newTab'].elements[0].value)*1+1)).style.zIndex = tabLayers[document.forms['newTab'].elements[0].value];
 document.getElementById("page-tab-label"+((document.forms['newTab'].elements[0].value)*1+1)).style.zIndex = 7;
 if (currentSet == "true") {
     if (onSet == 0) {
         document.getElementById("gall-content-set").style.display="none";
         document.getElementById("gall-content-about").style.display="block";
         document.getElementById("gall-content-temp").style.display="none";
     }
     else {
         document.getElementById("gall-content-set").style.display="block";
         document.getElementById("gall-content-about").style.display="none";
         document.getElementById("gall-content-temp").style.display="none";
     }
     document.forms['newTab'].elements[0].value = onSet;
 }
 else {
     document.getElementById("gall-content-temp").innerHTML = "Retreiving Set "+onSet+".<br><br>One moment please... <br><br><br><br><br><br><br>";
     document.getElementById("gall-content-set").style.display="none";
     document.getElementById("gall-content-about").style.display="none";
     document.getElementById("gall-content-temp").style.display="block";
     setOption("newTab", section+"Set", onSet);   
 }
}

function phSet(phLocation, onSet, offSet)
{

 var tabLayers= new Array(7)
 tabLayers[1]=7;
 tabLayers[2]=6;
 tabLayers[3]=5;
 tabLayers[4]=4;
 tabLayers[5]=3;
 tabLayers[6]=2;
 tabLayers[7]=1;
 
 document.getElementById("phtab-"+(onSet*1)).style.zIndex=9;
 document.getElementById("phtab-label"+(onSet*1)).style.zIndex=10;
 document.getElementById("phtab-"+(offSet*1)).style.zIndex=tabLayers[offSet*1];
 document.getElementById("phtab-label"+(offSet*1)).style.zIndex=7;
 document.getElementById("gall-content-set").style.display="none";
 document.getElementById("gall-content-temp").style.display="block";
 this.location = phLocation;
}

// submits any selected form
function submitForm(thisForm)
{
 document.forms[thisForm].submit();
}

//Finds all records in selected section of site
function findallRecs(siteSection)
{
 this.location = siteSection + "guide.php?findAll=findAll";
}

// sets an input field to a supplied variable & calls the submitForm() function
function setOption(formName, varName, varValue)
{
 document.forms[formName].elements[varName].value = varValue;
 submitForm(formName);
}

// toggles between different text entry fields & numerical operators for different search field types
function entryOps(fieldType, currUnits)
{
 document.getElementById("FG-searchTxt").style.display="none";
 document.getElementById("FG-searchmetDist").style.display="none";
 document.getElementById("FG-searchimpDist").style.display="none";
 document.getElementById("FG-searchMass").style.display="none";
 document.getElementById("FG-searchChron").style.display="none";
 document.getElementById("FG-searchops").style.display="none";
 if (fieldType == "Txt") {
     document.getElementById("FG-searchTxt").style.display="block";
 }
 else if (fieldType == "Dist") {
          document.getElementById("FG-search"+currUnits+"Dist").style.display="block";
          document.getElementById("FG-searchops").style.display="block";
 }
 else {
       document.getElementById("FG-search"+fieldType).style.display="block";
       document.getElementById("FG-searchops").style.display="block";
 }
}

function mgEntryOps(fieldType)
{
 document.getElementById("mg-searchTxt").style.display="none";
 document.getElementById("mg-searchYear").style.display="none";
 document.getElementById("mg-searchops").style.display="none";
 if (fieldType == "Txt") {
     document.getElementById("mg-searchTxt").style.display="block";
 }
 else {
       document.getElementById("mg-searchYear").style.display="block";
       document.getElementById("mg-searchops").style.display="block";
 }
}

// main search function that calls sub-functions
function searchDinos(currUnits)
{
 var fieldSelected = false;
 var fieldType = '';
 for (var x=3;x<=15;x++) {
      if (document.forms['FGSearchDino'].elements[x].checked) {
          fieldSelected = true;
          break;
         }
 }
 if (fieldSelected) {
     if (document.forms['FGSearchDino'].elements[10].checked) {
        fieldType = 'Mass'; }
     else if ((document.forms['FGSearchDino'].elements[8].checked) || (document.forms['FGSearchDino'].elements[9].checked)) {
              fieldType = 'Dist'; }
     else if ((document.forms['FGSearchDino'].elements[14].checked) || (document.forms['FGSearchDino'].elements[15].checked)) {
              fieldType = 'Chron'; }
     else { fieldType = 'Txt'; }
     if (fieldType == 'Txt') {
         if (document.forms['FGSearchDino'].elements[16].value != '') {
             document.forms['FGSearchDino'].elements[0].value = 'LIKE';
             document.forms['FGSearchDino'].elements[1].value = document.forms['FGSearchDino'].elements[16].value;
             document.forms['FGSearchDino'].elements[2].value = fieldType;
             clearSearchFields(fieldType, '16');
             clearRadios(document.forms['FGSearchDino'].elements['searchOp']);
             document.forms['FGSearchDino'].elements[28].value = 0;
             document.forms['FGSearchDino'].submit();
         }
         else { alert ("Please enter a word or phrase to search for."); }
     }
     else {
           if (validateNumSearch(currUnits, fieldType)) {
               document.forms['FGSearchDino'].elements[2].value = fieldType;
               if (fieldType == 'Mass') {
                   document.forms['FGSearchDino'].elements[1].value = document.forms['FGSearchDino'].elements[17].value;
                   clearSearchFields(fieldType, '17');
               }
               else if (fieldType == 'Chron') {
                        document.forms['FGSearchDino'].elements[1].value = document.forms['FGSearchDino'].elements[18].value;
                        clearSearchFields(fieldType, '18');
               }
               else {
                     if (currUnits == 'imp') {
                         convertImp();
                         clearSearchFields(fieldType, '20', '21');
                     }
                     else {
                           document.forms['FGSearchDino'].elements[1].value = document.forms['FGSearchDino'].elements[19].value;
                           clearSearchFields(fieldType, '19');
                     }
               }
               document.forms['FGSearchDino'].elements[28].value = 0;
               document.forms['FGSearchDino'].submit();
           }
     }
 }
 else { alert ("Please select a field to search within."); }
}

// clears values in search form input fields except for current fieldtype
function clearSearchFields(fieldType, thisField1, thisField2)
{
 for (var x=16 ; x<=21 ; x++) {
      if ((x != thisField1)&&(x != thisField2)) {
          document.forms['FGSearchDino'].elements[x].value = '';
      }
 }
}

// clears numerical operator radio buttons - called for text searches
function clearRadios(thisRadio)
{
     for (var i = 0; i < thisRadio.length; i++) {
          thisRadio[i].checked = false;
     }
}

// validates user input for numerical searches
function validateNumSearch(currUnits, fieldType)
{
 var searchValid = false;
 var opStart = 22;
 var opEnd = 26;
 if (fieldType == 'Mass') {
     if ((document.forms['FGSearchDino'].elements[17].value != '') & (isNum(document.forms['FGSearchDino'].elements[17].value))) {
         searchValid = true;
     }
 }
 else if (fieldType == 'Chron') {
          if ((document.forms['FGSearchDino'].elements[18].value != '') & (isNum(document.forms['FGSearchDino'].elements[18].value))) {
              searchValid = true;
          }
 }
 else {
       if (currUnits == 'imp') {
           var  value20 = document.forms['FGSearchDino'].elements[20].value;
           var  value21 = document.forms['FGSearchDino'].elements[21].value;
           if ((!isNum(value20) && value20 != "") || (!isNum(value21) && value21 != "") || (value20 == "1" && value21 == "1") || (value20 == 0 && value21 == 0)) {
               searchValid = false;
           }
           else {
                 searchValid = true;
           }
       }
       else {
             if ((document.forms['FGSearchDino'].elements[19].value != '') & (isNum(document.forms['FGSearchDino'].elements[19].value))) {
                 searchValid = true;
             }
       }
 }
 if (searchValid == true) {
     searchValid = false;
     if (currUnits == "imp") {
         opStart++;
         opEnd++;
     }
     for (var x=opStart ; x<=opEnd ; x++) {
          if (document.forms['FGSearchDino'].elements[x].checked) {
              searchValid = true;
              document.forms['FGSearchDino'].elements[0].value = document.forms['FGSearchDino'].elements[x].value;
              break;
          }
     }
     if (searchValid == false) {
         alert ("Please select an operator for your numeric search.");
         return searchValid;
     }
 }
 else {
       alert ("You have selected a numerical or chronological search field.\n\rPlease enter a numerical value to search for.");
 }
 return searchValid;
}

// checks user input is purely numerical for numerical searches
function isNum(searchValue)
{
 var IsNumeral=true;
 var NumChars = "0123456789."; 
 for (var i=0;i<searchValue.length;i++) {
      if (NumChars.indexOf(searchValue.charAt(i)) == -1) {
          IsNumeral = false;
          break;
      }
 }
  return IsNumeral;
}

// converts feet & inches into inches for searches of the distance type fields in imperial units
function convertImp()
{
 var  value20 = document.forms['FGSearchDino'].elements[20].value;
 var  value21 = document.forms['FGSearchDino'].elements[21].value;
 value20 = value20 * 12;
 value21 = value21 * 1;
 value21 = value21 + value20;
 document.forms['FGSearchDino'].elements[1].value = value21;
 return;
}

// Movie Guide search function
function searchMovies()
{
 var fieldSelected = false;
 var fieldType = '';
 for (var x=3;x<=6;x++) {
      if (document.forms['searchMovie'].elements[x].checked) {
          fieldSelected = true;
          break;
         }
 }
 if (fieldSelected) {
     if (document.forms['searchMovie'].elements[6].checked) {
        fieldType = 'Year'; }
     else { fieldType = 'Txt'; }
     document.forms['searchMovie'].elements[2].value = fieldType;
     if (fieldType == 'Txt') {
         if (document.forms['searchMovie'].elements[7].value != '') {
             document.forms['searchMovie'].elements[0].value = 'LIKE';
             document.forms['searchMovie'].elements[1].value = document.forms['searchMovie'].elements[7].value;
             document.forms['searchMovie'].elements[8].value = '';
             clearRadios(document.forms['searchMovie'].elements['mgsearchOp']);
             document.forms['searchMovie'].elements[15].value = 0;
             document.forms['searchMovie'].submit();
         }
         else { alert ("Please enter a word or phrase to search for."); }
     }
     else {
         var opSelected = false;
         if (document.forms['searchMovie'].elements[8].value != '') {
             for (var x=9 ; x<=13 ; x++) {
                  if (document.forms['searchMovie'].elements[x].checked) {
                      opSelected = true;
                      document.forms['searchMovie'].elements[0].value = document.forms['searchMovie'].elements[x].value;
                      break;
                  }
             }
             if (opSelected == true) {
                 document.forms['searchMovie'].elements[1].value = document.forms['searchMovie'].elements[8].value;
                 document.forms['searchMovie'].elements[7].value = '';
                 document.forms['searchMovie'].elements[15].value = 0;
                 document.forms['searchMovie'].submit();
             }
             else { alert ("Please select an operator for your year search."); }
         }
         else { alert ("Please enter a year to search for."); }
     }
 }
 else { alert ("Please select a field to search within."); }
}

function openWin(URL, winWidth, winHeight, scrollBars, locationBar, statusBar, toolBar, menuBar) {
 WinNew = window.open( URL, "WinNew", "width="+winWidth+",height="+winHeight+",scrollbars="+scrollBars+",location="+locationBar+",status="+statusBar+",toolbar="+toolBar+",menubar="+menuBar+",resizable=0" );
}

function isLeapYear(theYear) {
  if (((theYear%4==0)&&(theYear%100!=0))||(theYear%400==0)) {
    return true;
  }
  else { return false; }
 }

function verifyDayMonth(theDay, theMonth, theYear) {
  if ((theDay>31)||((theDay>30)&&((theMonth=="April")||(theMonth=="June")||(theMonth=="September")||(theMonth=="November")))||((theDay>29)&&(theMonth=="February"))) {
    alert("30 days hath September etc etc etc...\nThe point is the date you have entered doesn't exist.\nPlease fix it before continuing.");
    return false;
  }
  if ((theMonth=="February")&&(theDay==29)) {
    if (!isLeapYear(theYear)) {
      alert ("The date you have entered could not have occurred as " + theYear + " was not a leap year.\nPlease fix the date before continuing.");
      return false;
    }
  } 
  return true;
}

function verifyDatePast(theDay, theMonth, theYear) {
  var theMonthNum=-1;
  monthArray();
  for (i=0;i<month.length;i++) {
    if(month[i]==theMonth) {
    theMonthNum=i;
    break;
    }
  }
  var eventDate=new Date();
  eventDate.setFullYear(theYear,theMonthNum,theDay);
  var today = new Date();
  if (eventDate>today) {
    alert("That date is in the future! Please fix this before continuing.");
    return false;
  }
  else { return true; }
}

function DBhistoryVerify() {
  var theDay = document.forms['historyForm'].elements[0].value;
  var theMonth = document.forms['historyForm'].elements[1].value;
  var theYear = document.forms['historyForm'].elements[2].value;
  if (theYear.length!=4) {
    alert ("Please enter the year in full year format eg: 1953");
    return false;
  }
  if(!verifyDatePast(theDay, theMonth, theYear)) {
    return false;
  }
  if(!verifyDayMonth(theDay, theMonth, theYear)) {
    return false;
  }
  if (document.forms['historyForm'].elements[3].value.length <= 0) {
    alert ("The Event field is required to be filled in. Please fix this before continuing.");
    return false;
  }
  if ((!document.forms['historyForm'].elements[4].value)&&(document.forms['historyForm'].elements[5].value)) {
    alert ("An image caption can only be entered if an image file has been selected for uploading.");
    return false;
  }
  return true;
}
function UDloginVerify() {
    var uName = document.forms['UDloginForm'].elements[1].value;
    var pWord = document.forms['UDloginForm'].elements[2].value;
    if (uName == "") {
            alert ("Please enter your username.");
            return false;
    }
    if (pWord == "") {
            alert ("Please enter your password.");
            return false;
    }
  return true;
}