
    // Javascript for displaying & validating the Berlin Questionnaire

    function showHideCat1(display)
    {  
	  if (display.selectedIndex != 1) 
	  { 
	    for(i=2; i<=5; i++) {
	      eval("document.getElementById('berlin"+i+"ID').style.color = '#DDD'"); 
	      eval("document.getElementById('berlin"+i+"').selectedIndex = 0");  
	      eval("document.getElementById('berlin"+i+"').style.visibility  = 'hidden'");  
		}
	  }
	  else if (document.getElementById('berlin2ID').style.visibility == 'visible') 
      { 
	    for(i=2; i<=5; i++) {
          eval("document.getElementById('berlin"+i+"ID').style.color = '#DDD'"); 
	      eval("document.getElementById('berlin"+i+"').style.visibility  = 'hidden'");  
		}
	  } else { for(i=2; i<=5; i++) {
                 eval("document.getElementById('berlin"+i+"ID').style.color = '#000'"); 
	             eval("document.getElementById('berlin"+i+"').style.visibility = 'visible'");  
		       }
	  }
      return false
    }	  

    function showHideCat2(display)
    {  
	  if (display.selectedIndex != 1) 
	  { 
	      document.getElementById('berlin9ID').style.color = '#DDD'; 
	      document.getElementById('berlin9').style.visibility = 'hidden';  
	      document.getElementById('berlin9').selectedIndex = 0;  
	  }
	  else if (document.getElementById('berlin9ID').style.visibility == 'visible') 
      { 
        document.getElementById('berlin9ID').style.color = '#DDD'; 
	    document.getElementById('berlin9').disabled = 1; 
	    document.getElementById('berlin9').style.visibility = 'hidden';  
	  } else { 
	    document.getElementById('berlin9ID').style.color = '#000';
	    document.getElementById('berlin9').style.visibility = 'visible';  
	  }
      return false
    }	
	
	function validateBerlin()
	{
	  var errMsg = "";
	 
	  if (document.bq.forename.value == '') { errMsg = errMsg + " - "; errMsg = errMsg + 'Forename\n'; }
	  if (document.bq.surname.value == '') { if (errMsg != '') { errMsg = errMsg + " - "; } errMsg = errMsg + 'Surname\n'; }
	  
	  if (document.bq.age.value == '') { if (errMsg != '') { errMsg = errMsg + " - "; } errMsg = errMsg + 'Age\n'; }
	  if (!(isInteger(document.bq.age.value))) { if (errMsg != '') { errMsg = errMsg + " - "; } errMsg = errMsg + 'Age (numeric value)\n'; }
	  
	  if (document.bq.sex.value == '') { if (errMsg != '') { errMsg = errMsg + " - "; } errMsg = errMsg + 'Sex\n'; }
	  if (document.bq.height.value == '') { if (errMsg != '') { errMsg = errMsg + " - "; } errMsg = errMsg + 'Height\n'; }
	  if (!(isInteger(document.bq.height.value))) { if (errMsg != '') { errMsg = errMsg + " - "; } errMsg = errMsg + 'Height (numeric value)\n'; }
	  if (document.bq.kgs.value == '') { if (errMsg != '') { errMsg = errMsg + " - "; } errMsg = errMsg + 'Weight\n'; }
	  if (!(isInteger(document.bq.kgs.value))) { if (errMsg != '') { errMsg = errMsg + " - "; } errMsg = errMsg + 'Weight (numeric value)\n'; }

	  if (errMsg != "") { errMsg = "To continue, you must first provide the following information about yourself : \n\n" + errMsg + "\n"; }
	  
	  var cat1answers = "";
	  if (document.bq.berlin1.selectedIndex == 1)
	  {
		if (document.bq.berlin2.selectedIndex == 0) { cat1answers = cat1answers + '2'; }
		if (document.bq.berlin3.selectedIndex == 0) { if (cat1answers != '') { cat1answers = cat1answers + ", "; } cat1answers = cat1answers + '3'; }
		if (document.bq.berlin4.selectedIndex == 0) { if (cat1answers != '') { cat1answers = cat1answers + ", "; } cat1answers = cat1answers + '4'; }
		if (document.bq.berlin5.selectedIndex == 0) { if (cat1answers != '') { cat1answers = cat1answers + ", "; } cat1answers = cat1answers + '5'; }
	  }
	  else if (document.bq.berlin1.selectedIndex == 0) { cat1answers = cat1answers + '1'; }
	  if (cat1answers != "") { cat1answers = "Please provide an answer to the category 1 questions - " + cat1answers + "\n\n"; }
	  
	  var cat2answers = "";
      if (document.bq.berlin6.selectedIndex == 0) { cat2answers = cat2answers + '6'; }
	  if (document.bq.berlin7.selectedIndex == 0) { if (cat2answers != '') { cat2answers = cat2answers + ", "; } cat2answers = cat2answers + '7'; }
	  if (document.bq.berlin8.selectedIndex == 0) { if (cat2answers != '') { cat2answers = cat2answers + ", "; } cat2answers = cat2answers + '8'; }
	  if (document.bq.berlin8.selectedIndex == 1) 
	  {
	    if (document.bq.berlin9.selectedIndex == 0) { if (cat2answers != '') { cat2answers = cat2answers + ", "; } cat2answers = cat2answers + '9'; }
	  }
	  if (cat2answers != "") { cat2answers = "Please provide an answer to the category 2 questions - " + cat2answers + "\n\n"; }
	  
	  var cat3answers = "";
      if (document.bq.berlin10.selectedIndex == 0) { cat3answers = cat3answers + '10'; }
	  if (cat3answers != "") { cat3answers = "Please provide an answer to the category 3 question - " + cat3answers + "\n"; }

	  var completeErrorString = errMsg + cat1answers + cat2answers + cat3answers;
	  
	  if (completeErrorString != "")
	  {
		alert(completeErrorString);
		return false
	  }
	  else return true
	}
	  
    function isInteger(s)
    {
      var i;
      if (isEmpty(s))
      if (isInteger.arguments.length == 1) return 0; else return (isInteger.arguments[1] == true);
      for (i = 0; i < s.length; i++) { var c = s.charAt(i); if (!isDigit(c)) return false; }
      return true;
    }

    function isEmpty(s) { return ((s == null) || (s.length == 0)) }
    function isDigit(c) { return ((c >= "0") && (c <= "9")) }
