var fieldErrorColor = "#FF9999"

var valueExp      = /[^"]/
// PH, was: var valueEmailExp = /[\d\w@.-_]/;
// aangepast zodat ook streepjes (-) in e-mailadressen geaccepteerd worden.
var valueEmailExp = /[\d\w@.\-_]/;
var valuePassExp  = /[\d\w#_]/;
var valueNum      = /[\d]/;
var valueCurrency = /[\d,]/;
var valueDateExp  = /[\d-]/;
var valuePostExp  = /[\d\w]/;
var valuePhoneExp = /[\d-]/;
var valueUrlExp   = /[\d\w:\/._-]/;

// variabelen gebruikt bij controle invulformulieren
var foutmelding = "De rood gemarkeerde velden zijn niet of niet correct ingevuld.\nCorrigeer de velden en verstuur het formulier opnieuw";
var formError=0   // indicator of er een fout is in het formulier of niet

// markeert een veld als foutief
function markField (fieldObj) {
   fieldObj.style.backgroundColor = fieldErrorColor;
   formError=1
}

// wis alle markeringen 
function wisMarkering(formObj, color) {
   if (color==undefined) color = '#FFFFFF';

   aantal = formObj.elements.length
   for (i=0;i<aantal;i++) {
        type = formObj.elements[i].type
//      if (type=='text' || type=='password' || type=='select-one' || type='textarea') {
        if (type!='button' && type!='checkbox') {
            if (formObj.elements[i].readOnly) {
               formObj.elements[i].style.backgroundColor = "#E1E1E1";
            } else {
               formObj.elements[i].style.backgroundColor = color;
            }
        }
//      }
   }
}

function checkEmail(fieldObj, bRequired) {
   if ( bRequired ) {
      checkRequiredField(fieldObj)
   } else if (fieldObj.value=='') {
      return;
   }
   
   var filter = /^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i
   if (!filter.test(fieldObj.value)) {
      markField(fieldObj)
   }
}

//
function checkRequiredField (fieldObj) {
   if ( trim(fieldObj.value) == "") {
      markField (fieldObj)
	}
}

function checkRequiredSelectBox (fieldObj) {
   // is de eerste optie in de selectbox een dummy? (value="")
   if (fieldObj.options[0].value=="") {
      if (fieldObj.selectedIndex == 0) markField (fieldObj);
   }
}

// controleer 2 password velden
// Bij wijzigen profiel hoeft er geen password ingevuld te worden, vandaar de parameter bRequired
function checkPasswordFields (fieldObj1, fieldObj2, bRequired) {
   if (bRequired || (!bRequired && (fieldObj1.value.length>0 || fieldObj2.value.length>0) ) ) {
   	if (fieldObj1.value=="") {
         markField(fieldObj1);      
         markField(fieldObj2);
      } else if (fieldObj1.value.length<5) {
         markField(fieldObj1);      
         markField(fieldObj2);
      } else if (fieldObj1.value != fieldObj2.value) {
         markField(fieldObj2);
   	}
   }
}

// controleer valuta velden
function checkCurrencyField(fieldObj, bRequired) {
   var val = trim(fieldObj.value);

   // verwijder eventuele puntjes (duizendtallen) uit de waarde
   val = val.replace('.','');
   fieldObj.value = val;
  
   var len = val.length;
   var nChars = 9 // aantal tekens dat in invoerveld past (dus inclusief een ,00)
   if (bRequired) {
      checkRequiredField(fieldObj)
   }
   if (val != "") {
      // controleer of er geen andere tekens dan cijfers en komma instaan
      for (i=0;i<len;i++) {
         ch = val.charAt(i);
         if (ch.search(valueCurrency) != 0) {
            markField(fieldObj); // waarde not OK
         }
      }
      // alleen cijfers/komma --> controleer masker
      var pos = val.indexOf(",")
      if (pos > 0) {
         if (! val.match(/^[0123456789]*,[0123456789]{2}$/) ) {
            markField(fieldObj);
         }
      }
   }
   if (formError==0) {
      if (val >= 1000000) {
      //alert('Het bedrag dient < 1000000 te zijn')
         markField(fieldObj);
      }
   }
}

function checkAanbiedingsPrijs(fieldObj1, fieldObj2) {
   bedrag1 = parseFloat( fieldObj1.value.replace(',','.')  )
   bedrag2 = parseFloat( fieldObj2.value.replace(',','.')  )
   if (bedrag1!="" && (bedrag1>0) && (bedrag2 > bedrag1)) {
      markField(fieldObj2);
   }
}

function checkDate(fieldObj, bRequired) {
   var datefield = fieldObj;
   if (bRequired) {
      checkRequiredField(fieldObj);
   }
   if (trim(fieldObj.value) != "") {
      if (chkdate(fieldObj) == false) {
         markField(fieldObj);
      }
   }
}

function checkDateNotInPast( fldDatum ) {
   var today  = new Date();
   var invoer = new Date();
   year  = fldDatum.value.substring(6,10);
   month = parseInt(fldDatum.value.substring(3,5), 10) - 1;
   day   = fldDatum.value.substring(0,2);
   invoer.setFullYear( year, month, day);
   if (invoer < today) markField(fldDatum);
}

// controle of datum2 na datum1 ligt en of het sowieso wel geldige data zijn
function checkPeriode(datum1, datum2) {
   if (datum1.value!='') {
      checkDate(datum1, true);
      checkDate(datum2, true);

      // datum objecten maken om te kunnen vergelijken
      dat1 = new Date()
      dat1.setFullYear( datum1.value.substring(6,10), datum1.value.substring(3,5), datum1.value.substring(0,2) );
      dat2 = new Date( );
      dat2.setFullYear( datum2.value.substring(6,10), datum2.value.substring(3,5), datum2.value.substring(0,2) );
      if (dat1 > dat2) {
         markField(datum2);
      }
   }
}

function checkPostcodeN(fieldObj, bRequired) {
   if (bRequired) {
      checkRequiredField(fieldObj);
   }
   if (trim(fieldObj.value) != "") {
      if (fieldObj.value.length<4) {
         markField(fieldObj)
      } else{
         validChars = "1234567890";
         for (i=0; i<fieldObj.value.length; i++) {
            c = fieldObj.value.charAt(i);
            if (validChars.indexOf(c) == -1) {
               markField(fieldObj);
               break;
            }
         }
      }
   }
}

function checkPostcodeA(fieldObj, bRequired) {
   if (bRequired) {
      checkRequiredField(fieldObj);
   }
   if (trim(fieldObj.value) != "") {
      if (fieldObj.value.length<2) {
         markField(fieldObj)
      } else{
         validChars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
         for (i=0; i<fieldObj.value.length; i++) {
            c = fieldObj.value.charAt(i);
            if (validChars.indexOf(c) == -1) {
               markField(fieldObj);
               break;
            }
         }
      }
   }
}

function checkTelefoon(fieldObj, bRequired) {
   if (bRequired==true) {
      checkRequiredField(fieldObj);
   }
   val = fieldObj.value

   if (trim(fieldObj.value) != "") {
      if (val.match(/^0800-/) || val.match(/^090[069]-/) ) {
         if (   ! val.match(/0800-[\d]{4}$/) 
             && ! val.match(/0800-[\d]{7}$/) 
             && ! val.match(/090[069]-[\d]{4}$/) 
             && ! val.match(/090[069]-[\d]{7}$/)  ) 
         {
            markField(fieldObj);
         }
      } else {
         if (   !val.match(/^[\d]{4}-[\d]{6}$/) 
             && ! val.match(/^[\d]{3}-[\d]{7}$/) 
             && ! val.match(/06-[\d]{8}$/) ) 
         {
            markField(fieldObj);  
         }         
      }
   }
}

function getObj(name) {
   if (document.getElementById) {
  	   this.obj   = document.getElementById(name);
	   this.style = document.getElementById(name).style;
   } else if (document.all) {
      this.obj   = document.all[name];
      this.style = document.all[name].style;
   } else if (document.layers) {
      this.obj   = document.layers[name];
      this.style = document.layers[name];
   }
}

// trim functie voor javascript
function trim(str) {
   return str.replace(/^\s*|\s*$/g,"");
}
 
// activeert printfunctie voor het actieve venster
function printPage() {
   if (window.print) {
      window.print();
   } else {
      alert('Je browser ondersteunt deze functie niet. Klik met de rechtermuisknop in dit venster en kies voor afdrukken.');
   }
}

// open de opgegeven pagina in een popup scherm
function popUp(page) {
   w=620;
   h=450;
   if (screen.width) {
      left = screen.width/2 - w/2 - 10;
   } else {
      left=300;
   }
   mailvenster = window.open(page, 'mailvenster','toolbar=no,status=yes,scrollbars=yes,location=no,menubar=no,directories=no,height='+h+',width='+w+',left='+left+',top=0');
   mailvenster.focus()
   return false;
}

function checkCurrencyField2(fldObj, bRequired) {
   var val = fldObj.value;
   var len = val.length;
   var nChars = 8 // aantal tekens dat in invoerveld past (dus inclusief een ,00)
   
   if (!bRequired && val=="") return true
   if ( bRequired && val=="") return false
   if (val != "") {
      // controleer of er geen andere tekens dan cijfers en komma instaan
      for (i=0;i<len;i++) {
         ch = val.charAt(i);
         if (ch.search(valueCurrency) != 0) {
            return false; // waarde not OK
         }
      }
      // alleen cijfers/komma --> controleer masker
      var pos = val.indexOf(",")
      if (pos > 0) {
         if (! val.match(/^[0123456789]*,[0123456789]{2}$/) ) {
            return false
         }
      }
   }
   return true
}

// controleer veld op geldige datum
// maakt gebruik van de volgende functies:
// - chkdate(obj)
// - LeapYear(intYear)

function checkDateField(fldObj, bRequired) {
   var datefield = fldObj;
   if (!bRequired && datefield.value=="") return true
   if ( bRequired && datefield.value=="") return false
   if (chkdate(fldObj) == false) {
      return false;
   } else {
      return true;
   }
}

// subfunctie van chkdate(obj)
function LeapYear(intYear) {
   if (intYear % 100 == 0) {
      if (intYear % 400 == 0) { return true; }
   } else {
      if ((intYear % 4) == 0) { return true; }
   }
   return false;
}

// subfunctie van checkDateField
function chkdate(objName) {
   var datefield = objName;
   var strDate;
   var strDateArray;
   var strDay;
   var strMonth;
   var strYear;
   var intday;
   var intMonth;
   var intYear;
   var booFound = false;
   var strSeparatorArray = new Array("-"," ","/",".");
   var intElementNr;
   var err = 0;
   strDate = datefield.value;
   if (strDate.length < 1) {
      return true;
   }
   for (intElementNr = 0; intElementNr < strSeparatorArray.length; intElementNr++) {
      if (strDate.indexOf(strSeparatorArray[intElementNr]) != -1) {
         strDateArray = strDate.split(strSeparatorArray[intElementNr]);
         if (strDateArray.length != 3) {
            err = 1;
            return false;
         } else {
            strDay   = strDateArray[0];
            strMonth = strDateArray[1];
            strYear  = strDateArray[2];
         }
         booFound = true;
      }
   }
   if (booFound == false) {
      if (strDate.length>5) {
         strDay   = strDate.substr(0, 2);
         strMonth = strDate.substr(2, 2);
         strYear  = strDate.substr(4);
      } else {
         err = 1;
         return false
      }
   }

   if (strYear.length == 2) {
      strYear = '20' + strYear;
   }

   intday = parseInt(strDay, 10);
   if (isNaN(intday)) {
      err = 2;
      return false;
   }
   intMonth = parseInt(strMonth, 10);
   if (isNaN(intMonth)) {
      for (i = 0;i<12;i++) {
         if (strMonth.toUpperCase() == strMonthArray[i].toUpperCase()) {
            intMonth = i+1;
            strMonth = strMonthArray[i];
            i = 12;
         }
      }
      if (isNaN(intMonth)) {
         err = 3;
         return false;
      }
   }

   intYear = parseInt(strYear, 10);
   if (isNaN(intYear)) {
      err = 4;
      return false;
   }
   if (intMonth>12 || intMonth<1) {
      err = 5;
      return false;
   }
   if ((intMonth == 1 || intMonth == 3 || intMonth == 5 || intMonth == 7 || intMonth == 8 || intMonth == 10 || intMonth == 12) && (intday > 31 || intday < 1)) {
      err = 6;
      return false;
   }
   if ((intMonth == 4 || intMonth == 6 || intMonth == 9 || intMonth == 11) && (intday > 30 || intday < 1)) {
      err = 7;
      return false;
   }
   if (intMonth == 2) {
      if (intday < 1) {
         err = 8;
         return false;
      }
      if (LeapYear(intYear) == true) {
         if (intday > 29) {
            err = 9;
            return false;
         }
      } else {
         if (intday > 28) {
            err = 10;
            return false;
         }
      }
   }
   if (intday<10)   intday   = "0" + intday
   if (intMonth<10) intMonth = "0" + intMonth
   datefield.value = intday + "-" + intMonth + "-" + strYear;
   return true;
}

// Controleert of het laatst ingetypte teken een geldig teken is voor het type veld
// Zoniet, dan wordt het teken direct verwijderd
// type: text/pass/email/number/currency/date/post/phone/url
function chkLastChar(fld, type) {
   var fldValue    = fld.value;
   var fldLength   = fld.value.length;
   var fldLastChar = fldValue.charAt(fldLength - 1);
   switch (type) {
      case "text":
         regExp = valueExp;
         break;
      case "pass":
         regExp = valuePassExp;
         break;
      case "email": 
         regExp = valueEmailExp;
         break;
      case "number": 
         regExp = valueNum;
         break;
      case "currency":
         regExp = valueCurrency;
         break;
      case "date":
         regExp = valueDateExp;
         break;
      case "post":
         regExp = valuePostExp;
         break;
      case "phone":
         regExp = valuePhoneExp;
         break;
      case "url":
         regExp = valueUrlExp;
         break;
      default: 
         alert("Onbekend type: " + type + ". Gebruik: text/pass/email/currency/number/date/post/phone/url");
   }
   if (fldLastChar.search(regExp) != 0) {
      fld.value = fld.value.substring(0, fldLength - 1);
   }
}

function checkForm(formObj) {
   alert("OUDE JAVASCRIPT CONTROLE");
	if (formObj.voornaam) {
		if (formObj.voornaam.value == "") {
			alert("Er is geen voornaam ingevuld! Probeer het opnieuw...")
			formObj.voornaam.focus()
			return
		}
	}
	if (formObj.achternaam) {
		if (formObj.achternaam.value == "") {
			alert("Er is geen achternaam ingevuld! Probeer het opnieuw...")
			formObj.achternaam.focus()
			return
		}
	}
	if (formObj.emailadres) {
		if (formObj.emailadres.value == "") {
			alert("Er is geen e-mailadres ingevuld! Probeer het opnieuw...")
			formObj.emailadres.focus()
			return
		}
	}
	if (formObj.email) {
		if (formObj.email.value == "") {
			alert("Er is geen e-mailadres ingevuld! Probeer het opnieuw...")
			formObj.email.focus()
			return
		}
	}
	if (formObj.wachtwoord && !formObj.wachtwoord2){
		if (formObj.wachtwoord.value == "") {
			alert("Het gebruik van een 'leeg' wachtwoord is niet toegestaan. Probeer het opnieuw...")
			formObj.wachtwoord.focus()
			return
		}	
	}
	if (formObj.bedrijfsnaam) {
		if (formObj.bedrijfsnaam.value == "") {
			alert("Er is geen bedrijfsnaam ingevuld. Probeer het opnieuw...")
			formObj.bedrijfsnaam.focus()
			return
		}
	}
	if (formObj.adres) {
		if (formObj.adres.value == "") {
			alert("Er is geen adres ingevuld. Probeer het opnieuw...")
			formObj.adres.focus()
			return
		}
	}
	if (formObj.postcode) {
		sZip = formObj.postcode.value;
		filteredValue = " ";
		var i;
		var returnString = "";
		for (i = 0; i < sZip.length; i++) {
			var c = sZip.charAt(i);
			if (filteredValue.indexOf(c) == -1) returnString += c;
		}
		if (returnString.length < 6) {
			alert("De ingevoerde postcode is onjuist! Probeer het opnieuw...")
			formObj.postcode.focus()
			return
		} else {
			firstChars = "1234567890";
			lastChars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
			for (i = 0; i < returnString.length; i++) {
				var c = returnString.charAt(i);
				if ((i >= 0) & (i <= 3)) {
					if (firstChars.indexOf(c) == -1) {
						alert("De ingevoerde postcode is onjuist! Probeer het opnieuw...")
						formObj.postcode.focus()
						return
					}
				}
				if ((i >= 4) & (i <= 5)) {
					if (lastChars.indexOf(c) == -1) {
						alert("De ingevoerde postcode is onjuist! Probeer het opnieuw...")
						formObj.postcode.focus()
						return
					}
				}			
			}
		}
	}
	if (formObj.telefoon) {
		sTemp = formObj.telefoon.value;
		filteredValue = "-";
		for (i = 0; i < sTemp.length; i++){
			var c = sZip.charAt(i);
			if (filteredValue.indexOf(c) == -1) returnString += c;	
		}

		if (formObj.telefoon.value == "") {
			alert("Er is geen telefoon ingevuld. Probeer het opnieuw...")
			formObj.telefoon.focus()
			return
		}
	}
   
	if (formObj.plaats) {
		if (formObj.plaats.value == "") {
			alert("Er is geen plaats ingevuld. Probeer het opnieuw...")
			formObj.plaats.focus()
			return
		}
	}
	if (formObj.koptekst) {
		if (formObj.koptekst.value == "") {
			alert("Er is geen titel ingevuld. Probeer het opnieuw...")
			formObj.koptekst.focus()
			return
		}
	}
	if (formObj.categorie) {
		if (formObj.categorie.value == "") {
			alert("Er is geen rubriek geselecteerd. Probeer het opnieuw...")
			formObj.categorie.focus()
			return
		}
	}
	if (formObj.omschr) {
		if (formObj.omschr.value == "") {
			alert("Er is geen omschrijving ingevuld. Probeer het opnieuw...")
			formObj.omschr.focus()
			return
		}
	}
	if (formObj.bod) {
      if (formObj.bod.value="") {
         alert('Vergeet het bod niet in te vullen');
      } else {
         if (!checkCurrencyField2(formObj.bod, true)) {
            alert('Het bod is niet correct, ongeldig bedrag.')
   			formObj.bod.focus()
            return
         } else {
            // we hebben een geldig bod
            if (formObj.bod.value > 1000000) {
               alert('Bedrag te hoog')
            }
         }
      }
   }
	if (formObj.bedrag) {
      if (!checkCurrencyField2(formObj.bedrag, true)) {
         alert('Ongeldig bedrag...')
			formObj.bedrag.focus()
         return
      }
   }
	if (formObj.bedragvan) {
      if (!checkCurrencyField2(formObj.bedragvan, false)) {
         alert('Ongeldig bedrag...')
			formObj.bedragvan.focus()
         return
      } else {
         // we hebben een geldig bod
         if (formObj.bedragvan.value > 100000) {
            alert('Het bedrag dient < 100.000 te zijn')
   			formObj.bedragvan.focus()
            return
         }
      }
   }
	if (formObj.bedragvoor) {
      if (!checkCurrencyField2(formObj.bedragvoor, true)) {
         alert('Ongeldig bedrag...')
			formObj.bedragvoor.focus()
         return
      } else {
         bedragvan  = parseFloat( formObj.bedragvan.value.replace(',','.')   )
         bedragvoor = parseFloat( formObj.bedragvoor.value.replace(',','.')  )
         //alert("org=" + bedragvan + " | " + "aanb=" + bedragvoor + " | " + "aanbiedingsprijs>origineleprijs=" + (bedragvoor > bedragvan) )
         if (bedragvan!="" && (bedragvan>0) && (bedragvoor > bedragvan)) {
            alert('De aanbiedingsprijs dient lager te zijn dan de originele prijs');
            formObj.bedragvoor.focus();
            return;
         }
         if (formObj.bedragvoor.value > 100000) {
            alert('Het bedrag dient < 100000 te zijn')
   			formObj.bedragvoor.focus()
            return
         }
      }
   }

	if (formObj.periodevan) {
      if (!checkDateField(formObj.periodevan, true)) {
         alert('Datum dient in formaat dd-mm-jjjj te zijn ...')
			formObj.periodevan.focus()
         return
      }
   }
	if (formObj.periodetot) {
      if (!checkDateField(formObj.periodetot, true)) {
         alert('Datum dient in formaat dd-mm-jjjj te zijn..')
			formObj.periodetot.focus()
         return
      }
   }
	formObj.submit()
}

function checkSearch(formObj) {
   var msg = '';
   // zoeken op bedrijfsnaam
   if (formObj.zoekbedr[0].checked) {
   	if (formObj.bedrijf.value =="") {
         msg += "- vul een bedrijfsnaam in\n";
      } else if (formObj.bedrijf.value.length<3) {
         msg += "- bedrijfsnaam dient minimaal 3 karakters lang te zijn\n"
      }
   }
   // zoeken op rubriek
   if (formObj.zoekbedr[1].checked) {
      if (formObj.rubriekb.value=="") {
         msg += "- selecteer een rubriek\n";
      }
   }
   // zoeken op trefwoord
   if (formObj.zoekbedr[2].checked) {
      if (formObj.trefwoord.value=="") {
   //   msg += "- vul een trefwoord in\n";   zoeken op trefwoord is vanaf maart 2007 niet meer verplicht
      } else if (formObj.trefwoord.value.length<3) {
         msg += "- trefwoord dient minimaal 3 karakters lang te zijn\n"
      }
   }
   // minimaal een plaats selecteren
   if (formObj.plaats.value == -2 || formObj.plaats.value == '') {
     msg += "- selecteer een plaats\n";
   }
   
   if (msg != '') {
      alert(msg);
      formObj.bedrijf.focus();
      return;
   }
   formObj.submit()
}

function checkAanbodSearch(formObj) {
   var msg = '';
   if (formObj.zoekaanb[0].checked) {
   	if (formObj.trefwoord.value =="") {
         msg += "- vul een trefwoord in\n";
      } else if (formObj.trefwoord.value.length<3) {
         msg += "- het trefwoord dient minimaal 3 karakters lang te zijn\n"
      }
   }
   if (msg != '') { 
      alert(msg)  
      return;
   }
   formObj.submit()
}

function checkAdvertentieSearch(formObj) {
   var msg = '';
  // zoeken op trefwoord
   if (formObj.zoekadv[0].checked) {
      if (formObj.trefwoord.value =="") {
         msg += "- vul een trefwoord in\n";
      } else if (formObj.trefwoord.value.length<3) {
         msg += "- het trefwoord dient minimaal 3 karakters lang te zijn\n"
      }
   }
   if (formObj.zoekadv[1].checked) {
      if (formObj.adv_rubriek.value == '') {
         msg += "- selecteer een rubriek\n";
      } else 
      if (formObj.adv_subrubriek.value == '') {
         msg += "- selecteer een subrubriek\n";
      }
   }   
   // minimaal een plaats selecteren
   if (formObj.plaats.value == '') {
     msg += "- selecteer een plaats\n";
   }

   if (msg != '') { 
      alert(msg)  
      return;
   }
   formObj.submit()
}

function charLeft(formObj, nrChar) {
   if (formObj.value.length > nrChar) {
      formObj.value = formObj.value.substring(0, nrChar);
	}
   l = (nrChar - formObj.value.length)
	document.getElementById("labelCharLeft").innerHTML = 'Resterend aantal karakters: ' + l
}

// frm              : form name
// targetfield      : formfield waarin de subitems getoond dienen te worden
// type             : advertentie  (aanbiedingen is vervallen)
// alleSubRubrieken : tonen we alle subrubrieken, of alleen de subrubrieken die in gebruik zijn

function laadSubrubrieken(frm, targetfield, type, showUsedOnly, showOptieAlleSubRubrieken) {
   //alert('showUsedOnly=' + showUsedOnly + ' showOptieAlleSubRubrieken=' + showOptieAlleSubRubrieken);
   document.getElementById(targetfield).disabled = true
   switch (type) {
      case 'adv':
         fld = frm.adv_rubriek;
         idx = frm.adv_rubriek.selectedIndex;
         id  = fld.options[idx].value;
         break;
      //case 'aanb':
      //   fld = frm.aanb_rubriek
      //   idx = frm.aanb_rubriek.selectedIndex
      //   id  = fld.options[idx].value
      //   break;
      default:
         id = -999; // geen subrubrieken aanwezig
   }
   document.getElementById('hiddenframe').src = "readSelectboxItems.php?fld=" + targetfield + "&type=" + type + "&id=" + id + "&showUsedOnly=" + showUsedOnly + "&showOptieAlleSubRubrieken=" + showOptieAlleSubRubrieken;
}

function setList(field) {
   // field: naam van de te vullen Select-Box
   var listObj         = document.getElementById(field);
   var listObjlength   = listObj.length;
   listObj.length = 0;
   // Select Box in het Hidden frame dat als bron dient
   var framelistObj    = eval("frames['hiddenframe'].document.FRM_HIDDEN." + field);
   var framelistlength = framelistObj.length;
   for(var i = 0; i < framelistlength; i++) { 
      listObj.options[i] = new Option(framelistObj.options[i].text,  framelistObj.options[i].value);
   }
   if (listObj.form.adv_rubriek.value != '')
     listObj.disabled = false
   //if(navigator.appName == "Netscape") history.go(0);
}

function checkLoginForm (formObj) {
   wisMarkering(formObj)
   formError=0  // indicator of er een fout in het formulier zit, wordt in diverse functies op 1 gezet indien nodig
   
   checkEmail(formObj.emailadres,true);
   checkRequiredField(formObj.wachtwoord);

   (formError==1) ? alert(foutmelding) : formObj.submit();
}

function addfav(URL, name) {
   if (document.all) {
      window.external.AddFavorite
      (URL, name)
   }
}

// functies voor MouseOvers
// array imgs[] wordt gevuld per pagina. Daarna wordt initMouseOvers aangeroepen voor het afhandelen van de mouseovers.
// normale image  :  xxxxxxxxx.gif
// mouseover image:  xxxxxxxxx_on.gif
var mouseOvers    = new Array();
var mouseOuts     = new Array();
var mouseOverImgs = new Array();

function initMouseOvers() {
   for (var i=0;i<mouseOverImgs.length;i++) {
      mouseOverImgs[i].onmouseover = mouseGoesOver;
      mouseOverImgs[i].onmouseout  = mouseGoesOut;
      var suffix = mouseOverImgs[i].src.substring(mouseOverImgs[i].src.lastIndexOf('.'));
      mouseOuts[i]      = new Image();
      mouseOuts[i].src  = mouseOverImgs[i].src;
      mouseOvers[i]     = new Image();
      mouseOvers[i].src = mouseOverImgs[i].src.substring(0,mouseOverImgs[i].src.lastIndexOf('.')) + "_on" + suffix;
      mouseOverImgs[i].number = i;
   }
}

function mouseGoesOver() {
   this.src = mouseOvers[this.number].src;
}

function mouseGoesOut() {
	this.src = mouseOuts[this.number].src;
}

function toonFotos(url) {
  fotoWin = window.open(url,'fotoviewer','menubar=no,toolbar=no,location=no,directories=no,status=no,scrollbars=no,resizable=yes,dependent,width=640,height=480,left=50,top=50')
  fotoWin.focus();
}

// Maak veld (of alle velden in opgegeven array) leeg.
function emptyField ( fld ) { 
    document.getElementById(fld).value = '';
}

