var textOfLayer="";

function MM_callJS(jsStr) { //v2.0
  return eval(jsStr)
}

function MM_setTextOfLayer(objName,x,newText) { //v4.01
	
	if (textOfLayer=="")
	{
		textOfLayer=newText
	}
	if ((obj=MM_findObj(objName))!=null) with (obj)
    if (document.layers) {document.write(unescape(newText)); document.close();}
    else innerHTML = unescape(newText);
}

function MM_openBrWindow(theURL,winName,features) { //v2.0
  window.open(theURL,winName,features);
}
function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.0
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && document.getElementById) x=document.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}
function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function CheckForm()
{

	var check = false;
	if (form.www_naam.value)
	{
		if (form.www_telefoon.value)
		{
			if (form.www_email.value)
			{
				check=true;
			}
		}
	}
	if (check)
	{
		form.submit();
	} else {
		alert('De velden naam, telefoon en e-mail moeten in gevuld worden.');
	}
}
function MM_jumpMenu(targ,selObj,restore){ //v3.0
  eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
  if (restore) selObj.selectedIndex=0;
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_jumpMenuGo(selName,targ,restore){ //v3.0
  var selObj = MM_findObj(selName); if (selObj) MM_jumpMenu(targ,selObj,restore);
}

//removes the wizard error messages and icoon
function removeError(msg)
{
	if (!msg)
	{
		msg = '';
	}
	MM_swapImgRestore();
	MM_setTextOfLayer('errorMsg','',msg);
	return true;
}

function error(field,msg)
{
//	MM_swapImage('warning','','images/warning.gif',1);
	MM_setTextOfLayer('errorMsg','','<font color="#CC0000"><b>'+msg+'</b></font>');
	alert(msg);
//	field.value = '';
	field.focus();
	return false;
}

/*
* pre: field is een form object
* post:	returned false als het form veld niet leeg is
*		returned true als het form veld leeg is
*/
function isEmpty(field) 
{
	var len;
	len = field.value.length;
	if (len > 0) {
		return false;
	} else {
		return true;
	}
}

function checkDay(field) 
{
	var len;
	len = field.value.length;
	if (len != 0)
	{
		if (!isNumeric(field,false))
		{
//			field.focus();
//			field.select();
			return error(field,"Dag ongeldig");
		} else if (len == 1) {
			field.value = "0" + field.value;
			return removeError();
		} else if ((field.value > 31 || field.value <= 0) && len != 0)
		{
//			field.focus();
//			field.select();
			return error(field,"Dag ongeldig");
		}
	}
	return true;
}

function checkMonth(field) 
{
	var len;
	len = field.value.length;
	if (len != 0)
	{

		if (!isNumeric(field,false))
		{
//			field.focus();
//			field.select();
			return error(field,"Maand ongeldig");
		} else if (len == 1) {
			field.value = "0" + field.value;
			return removeError();
		} else if ((field.value > 12 || field.value <= 0) && len != 0)
		{
//			field.focus();
//			field.select();
			return error(field,"Maand ongeldig");
		}
		return removeError();
	}
	return true;
}

function checkYear(field) 
{
	var len;
	len = field.value.length;
	if (len != 0)
	{
		if (!isNumeric(field,false))
		{	
//			field.focus();
//			field.select();
			return error(field,"Jaar ongeldig");
		} else if (len != 4) 
		{	
//			field.focus();
//			field.select();
			return error(field,"Jaar ongeldig");
		} else if (field.value < 1900)
		{	
//			field.focus();
//			field.select();
			return error(field,"Jaar ongeldig");
		} 
		return removeError();
	}
	return true;
}

function checkPostcode1(field) 
{
	var len;
	len = field.value.length;
	if (!isNumeric(field,false))
	{	
		return false;
	} else if (len != 4) 
	{	
		return false;
	} 
	return true;
}

function isNumeric(field, ignoreWhiteSpace) {
	str = field.value.toString();
	if (str.search != '') {
		if ((ignoreWhiteSpace && str.search(/[^\d\s]/) != -1) || (!ignoreWhiteSpace && str.search(/\D/) != -1)) return false;
	}
	return true;
}

// Remove all spaces from a string
function removeSpaces(string) {
	var newString = '';
	for (var i = 0; i < string.length; i++) {
		if (string.charAt(i) != ' ') newString += string.charAt(i);
	}
	return newString;
}

function checkPhoneNumber(field)
{
	if (field.value.length > 0)
	{
		if (isNumeric(field,true))
		{
			field.value = removeSpaces(field.value);
			return true;
		} else {
			return false;
		}
	} else {
		return true;
	}
}

function isValidEmail(f){
	if (/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(f.value)){
		return true;
	}
	return false;
}

/*
* toevoeg syteem controle functie's
*/

function verwijderItemSelected(f, removeFieldName)
{
	var ft;
	var fn;

	for (i=0;i<f.elements.length;i++)
	{
		ft=f.elements[i].type;
		fn=f.elements[i].name;

		if (ft != 'hidden' && fn == removeFieldName)
		{
			if (isEmpty(f.elements[i])) return error(f.elements[i],"Geen selectie gemaakt.");
		} 
	}
	return true;
}

function disableFields(field, disableValue)
{
	a=disableFields.arguments;
	f=field.form;
	state=false;

	if (field.value == disableValue)
	{
		state=true;
	}
	for (ia=2; ia<a.length;ia++)
	{ // alle alergumenten langslopen (behalve eerste 2)
		for (i=0;i<f.elements.length;i++)
		{ // alle form objecten langs lopen
			e=f.elements[i];
			if ((e.type != 'hidden') && (a[ia] == e.name))
			{
				e.disabled = state;
				if (state)
				{
					e.value = '';
				}
			}
		}
	}
}

function disableFieldsByName(f,fieldName, disableValue)
{
	a=disableFieldsByName.arguments;
	var field;
	state=false;

	for (i=0;i<f.elements.length;i++)
	{ // alle form objecten langs lopen
		e=f.elements[i];
		if ((e.type != 'hidden') && (e.name == fieldName))
		{
			field = e;
			i=f.elements.length;
		}
	}

	if (field.value == disableValue)
	{
		state=true;
	}
	for (ia=3; ia<a.length;ia++)
	{ // alle alergumenten langslopen (behalve eerste 2)
		for (i=0;i<f.elements.length;i++)
		{ // alle form objecten langs lopen
			e=f.elements[i];
			if ((e.type != 'hidden') && (a[ia] == e.name))
			{
				e.disabled = state;
				if (state==true)
				{
					e.value = '';
				}
			}
		}
	}
}

function candidateWerkervaring(f)
{
	var ft;
	var fn;
	var datums = new Array();
	var tmpDate

	for (i=0;i<f.elements.length;i++)
	{
		ft=f.elements[i].type;
		fn=f.elements[i].name;

		if (ft != 'hidden' && fn == 'www_werk_bedrijfsnaam[]')
		{
			if (isEmpty(f.elements[i])) return error(f.elements[i],"Bedrijfsnaam : Verplicht");
		} 
		else if (ft != 'hidden' && fn == 'www_werk_bedrijfslokatie[]')
		{
			if (isEmpty(f.elements[i])) return error(f.elements[i],"Bedrijfslokatie : Verplicht");
		} 
		else if (ft != 'hidden' && fn == 'www_werk_functietitel[]')
		{
			if (isEmpty(f.elements[i])) return error(f.elements[i],"Functie titel : Verplicht");
		}
		else if (ft != 'hidden' && fn == 'www_werk_van_a[]')
		{
			datums[0] = f.elements[i].options[f.elements[i].selectedIndex].value; // maand 1
		}
		else if (ft != 'hidden' && fn == 'www_werk_van_b[]')
		{
			datums[1] = f.elements[i].value; // jaar 1
		}
		else if (ft != 'hidden' && fn == 'www_werk_tot_a[]')
		{
			datums[2] = f.elements[i].options[f.elements[i].selectedIndex].value; // maand 2
		}
		else if (ft != 'hidden' && fn == 'www_werk_tot_b[]')
		{
			datums[3] = f.elements[i].value; // jaar 2
			if (datums[1] == datums[3])
			{

				if (parseInt(datums[0]) > parseInt(datums[2]))
				{
					return error(f.elements[i],"Van - Tot datums : Ongeldig");
				}
			} else if (parseInt(datums[1]) > parseInt(datums[3]))
			{
				return error(f.elements[i],"Van - Tot datums : Ongeldig");
			}
		}
	}
	return true;
}

function candidateOpleiding(f)
{
	var ft;
	var fn;

	for (i=0;i<f.elements.length;i++)
	{
		ft=f.elements[i].type;
		fn=f.elements[i].name;

		if (ft != 'hidden' && fn == 'www_opleiding1_naam[]')
		{
			if (isEmpty(f.elements[i])) return error(f.elements[i],"Naam opleiding : Verplicht");
		} 
	}
	return true;
}

function candidateKennisvan(f)
{
	var ft;
	var fn;

	for (i=0;i<f.elements.length;i++)
	{
		ft=f.elements[i].type;
		fn=f.elements[i].name;

		if (ft != 'hidden' && fn == 'www_kennisvan_onderdeel[]')
		{
			if (isEmpty(f.elements[i])) return error(f.elements[i],"Kennis van ... : Verplicht");
		} 
	}
	return true;
}

function candidateReferentie(f)
{
	var ft;
	var fn;
	var fe;

	for (i=0;i<f.elements.length;i++)
	{
		fe=f.elements[i];
		ft=fe.type;
		fn=fe.name;

		if (ft != 'hidden' && fn == 'www_referentie_naam[]')
		{
			if (isEmpty(fe)) return error(fe,"Naam : Verplicht");
		}
		if (ft != 'hidden' && fn == 'www_referentie_bedrijf[]')
		{
			if (isEmpty(fe)) return error(fe,"Bedrijf : Verplicht");
		} 
		if (ft != 'hidden' && fn == 'www_referentie_functie[]')
		{
			if (isEmpty(fe)) return error(fe,"Functie : Verplicht");
		}
		if (ft != 'hidden' && fn == 'www_referentie_telefoon[]' && !isEmpty(fe))
		{
			if (!checkPhoneNumber(fe)) return error(fe,"Telefoon dient alleen uit cijfers te bestaan.");
		}
	}
	return true;
}

function candidateTalenkennis(f)
{
	var ft;
	var fn;
	var fe;
	var newUnique;
	var unique;
	var records = new Array();
	var removed = new Array();

	for (i=0;i<f.elements.length;i++)
	{
		fe=f.elements[i];
		ft=fe.type;
		fn=fe.name;

		if (ft == 'hidden' && fn == 'www_taalkennis_remove[]')
		{
			removed[fe.value]=true;
		}
		if (ft != 'hidden' && fn == 'www_taalkennis_taal[]')
		{
			if (isEmpty(f.elements[i])) return error(f.elements[i],"Taal : Verplicht");
			else newUnique = fe.value;
		}
		if (ft != 'hidden' && fn == 'www_taalkennis_type[]')
		{
			if (isEmpty(f.elements[i])) return error(f.elements[i],"Taalkennis type : Verplicht");
			else newUnique += fe.value;
		}
		if (ft != 'hidden' && fn == 'www_taalkennis_niveau[]')
		{
			if (isEmpty(f.elements[i])) return error(f.elements[i],"Niveau : Verplicht");
		}
	}
	index=0;
	for (i=0;i<f.elements.length;i++)
	{
		fe=f.elements[i];
		ft=fe.type;
		fn=fe.name;

		if (ft == 'hidden' && fn == 'www_taalkennis_taal[]')
		{
			unique = fe.value;
		}
		if (ft == 'hidden' && fn == 'www_taalkennis_type[]')
		{
			unique += fe.value;
			if (!removed[index])
			{
				records[unique] = true;
			}
			index++;
		}
	}
	if (records[newUnique])
	{
		return error(f.elements[i-1],"Dubbele combinatie taal/type");
	}
	return true;
}

function candidateBranche(f)
{
	var ft;
	var fn;

	for (i=0;i<f.elements.length;i++)
	{
		ft=f.elements[i].type;
		fn=f.elements[i].name;

		if (ft != 'hidden' && fn == 'www_categorie[]')
		{
			if (isEmpty(f.elements[i])) return error(f.elements[i],"Brance categorie : Verplicht");
		}
		if (ft != 'hidden' && fn == 'www_branche[]')
		{
			if (isEmpty(f.elements[i])) return error(f.elements[i],"Branche : Verplicht");
		}
	}
	return true;
}

function contractorContact(f)
{
	var ft;
	var fn;

	for (i=0;i<f.elements.length;i++)
	{
		ft=f.elements[i].type;
		fn=f.elements[i].name;

		if (ft != 'hidden' && fn == 'www_contact_naam1[]')
		{
			if (isEmpty(f.elements[i]))	return error(f.elements[i],"Voornaam : Verplicht");
		} else if (ft != 'hidden' && fn == 'www_contact_naam3[]')
		{
			if (isEmpty(f.elements[i])) return error(f.elements[i],"Achternaam : Verplicht");
		} else if (ft != 'hidden' && fn == 'www_contact_telefoon1[]')
		{
			if (isEmpty(f.elements[i])) return error(f.elements[i],"Telefoon : Verplicht");
		} else if (ft != 'hidden' && fn == 'www_contact_telefoon1[]')
		{
			if (!isNumeric(f.elements[i],false)) return error(f.elements[i],"Telefoon Nr. ongeldig");
		} else if (ft != 'hidden' && fn == 'www_contact_email[]')
		{
			if (isEmpty(f.elements[i])) return error(f.elements[i],"Email : Verplicht");
			if (!isValidEmail(f.elements[i])) return error(f.elements[i],"Email adres heeft een ongeldige opbouw");
		}
	}
	return true;
}

function vacancyTekst(f)
{
	var ft;
	var fn;

	for (i=0;i<f.elements.length;i++)
	{
		ft=f.elements[i].type;
		fn=f.elements[i].name;

		if (ft != 'hidden' && fn == 'www_tekst_titel[]')
		{
			if (isEmpty(f.elements[i])) return error(f.elements[i],"Titel : Verplicht");
		} 
		else if (ft != 'hidden' && fn == 'www_tekst_omschrijving[]')
		{
			if (isEmpty(f.elements[i])) return error(f.elements[i],"Omschrijving : Verplicht");
		} 
	}
	return true;
}

function gewensteRegio(f)
{
	var ft;
	var fn;

	for (i=0;i<f.elements.length;i++)
	{
		ft=f.elements[i].type;
		fn=f.elements[i].name;

		if (ft != 'hidden' && fn == 'www_regio[]')
		{
			if (isEmpty(f.elements[i])) return error(f.elements[i],"Selectie : Verplicht");
		}
	}
	return true;
}

function editItem(removeField)
{
	f=removeField.form;		// the form
	a=editItem.arguments;	// the arguments
	rebuild = new Array();	// stores the found value's
	counter=0;					// record counter

	if (removeField.length > 0)
	{
		// waardes opzoeken in hidden fields
		for (aCount=1; aCount<a.length; aCount++)
		{ // voor elk argument (behalve de eerste)
			counter=0;
			for (i=0;i<f.elements.length;i++)
			{ // alle form objecten langs lopen
				e=f.elements[i]; // huidige element
				if ((e.type == 'hidden') && (e.name == a[aCount]))
				{
					if (removeField.value == counter)
					{
						rebuild[aCount]=e;
						counter++;
					} else {
						// waarde gevonden maar niet het juiste record
						counter++;
					}
				}
			}
		}
		// waardes zetten in het formulier
		for (aCount=1; aCount<a.length; aCount++)
		{ // voor elk argument (behalve de eerste)
			for (i=0;i<f.elements.length;i++)
			{ // alle form objecten langs lopen
				e=f.elements[i]; // current element
				if ((e.type != 'hidden') && (e.name == a[aCount]))
				{
					e.value = rebuild[aCount].value;
				}
			}
		}
	}
	return true;
}

function editRestore(f,removeField)
{
	a=editRestore.arguments;	// the arguments
	recordNumber=MM_findObj(removeField).value;
	rebuild = new Array();	// stores the found value's
	counter=0;

	// waardes van het formulier ophalen
	for (aCount=2; aCount<a.length; aCount++)
	{ // voor elk argument (behalve de eerste)
		for (i=0;i<f.elements.length;i++)
		{ // alle form objecten langs lopen
			e=f.elements[i]; // current element
			if ((e.type != 'hidden') && (e.name == a[aCount]))
			{
				rebuild[aCount]=e.value;
			}
		}
	}

	// waardes opzoeken in hidden fields
	for (aCount=2; aCount<a.length; aCount++)
	{ // voor elk argument (behalve de eerste)
		for (i=0;i<f.elements.length;i++)
		{ // alle form objecten langs lopen
			e=f.elements[i]; // huidige element
			if ((e.type == 'hidden') && (e.name == a[aCount]))
			{
				if (recordNumber == counter)
				{
					e.value=rebuild[aCount];
				} else {
					// waarde gevonden maar niet het juiste record
					counter++;
				}
			}
		}
	}
	return true;
}

function setFocusOnFirstField(f)
{
	var ft;
	var e;

	for (i=0;i<f.elements.length;i++)
	{
		ft=f.elements[i].type;
		e=f.elements[i];

		if (ft != 'hidden')
		{
			e.focus();
			return true;
		} 
	}
	return false;
}

function passwordDifference(p1,p2)
{
	return ( (!(isEmpty(p1)) || !(isEmpty(p2)) ) && (p1.value != p2.value) );
}


// directe alert naar scherm
function passwordSame(p1,p2)
{
	if (p1.value.length < 6)
	{
		alert('Je wachtwoord dient minimaal 6 karakters lang te zijn.');
		return false;
	}
	else if (p1.value != p2.value)
	{
		alert('De wachtwoorden komen niet overeen.');
		return false;
	} else {
		return confirm('Weet je zeker dat je je wachtwoord wil wijzigen?');
	}
}