/*
[PH:20040611] W1.01 extra check die controleert of het object wel aanwezig is
[MS:20050105] W1.02 nieuw datum tijd pattern. datum en eventueel de tijd (niet verplicht) bijv: 27-06-2004 19:30 of 27-06-2004
*/

var blnVerzoek = false;
var blnVerzonden = false;
var cnt = 1;
function getInternetExplorerVersion()
// Returns the version of Internet Explorer or a -1
// (indicating the use of another browser).
{
  var rv = -1; // Return value assumes failure.
  if (navigator.appName == 'Microsoft Internet Explorer')
  {
    var ua = navigator.userAgent;
    var re  = new RegExp("MSIE ([0-9]{1,}[\.0-9]{0,})");
    if (re.exec(ua) != null)
      rv = parseFloat( RegExp.$1 );
  }
  return rv;
}
function isIE6() {
    return (getInternetExplorerVersion() < 7.0) && (getInternetExplorerVersion() > -1);
}

function htmlpopup(filename, params, query, list, doel, tekstID)
{
	var obj = document.getElementById(tekstID);
	
	if (obj.value.length > 0){
		var message = 
			'Advies bij bewerken van tekst via de HTML-editor:\n'
			+ '\n'
			+ '1. Vul eerst de andere velden in.\n'
			+ '2. Klik op \'Opslaan\'.\n'
			+ '3. Klik op de optie \'Wijzigen\' in de functieknop.\n'
			+ '4. Klik op de knop \'Inhoud artikel typen\' op de knop \'Bewerken\' om uw tekst in de HTML-editor te wijzigen.\n'
			+ '\n'
			+ 'Klik nu op de knop \'Annuleren\' om eerst bovenstaande stappen te doorlopen, of klik op de knop \'OK\' als u toch door wilt gaan met de HTML-editor.';
		
		if (window.confirm(message))
		{
			return false;
		}	
		else
		{
			popup(filename, params, query, list, doel);
		}
	}
	else{
		popup(filename, params, query, list, doel);
	}
}


/*
***************************************************************************************************
  function popup(filename, query)
  
  Omschrijving:
	1. Openen van een popup scherm
	2. Ieder popup heeft dus dezelfde groote en style
  
  Parameters:
	Filename:		de te openen pagina (url)
	Query:			de mee te geven querystring beginnend met de '?'

* Werkt niet vanwege het milonic menu, daar zit ook een popup-functie in.
***************************************************************************************************
*/
function popup(filename, params, query, list, doel, beveiliging)
{
	var obj = document.getElementById('clicked_' + doel);
	
	var popup;
	var filename;
	var title;
	
	if (beveiliging == true)
	{
		if (obj)
		{
			if (obj.value == 'true')
			{
				var message = 
					'Ter beveiliging kunt u slechts één keer de knop \'Bewerken\' gebruiken.\n'
					+ 'Wilt u nu wijzigingen aanbrengen, voer dan eerst de volgende stappen uit:\n'
					+ '\n'
					+ '1. Vul eerst de andere velden in.\n'
					+ '2. Klik op \'Opslaan\'.\n'
					+ '3. Klik op de optie \'Wijzigen\' in de functieknop.\n'
					+ '4. Klik op de knop \'Bewerken\' om wijzigingen aan te brengen.\n'
					+ '\n'
					+ 'Klik nu op de knop \'Annuleren\' om eerst bovenstaande stappen te doorlopen, of klik op de knop \'OK\' als u toch door wilt gaan. U loopt dan wel het risico dat de oude inhoud verloren gaat.';
			
				if (window.confirm(message))
				{
					return false;
				}			
			}	
		}
	}

	if (filename == 'koppeling.asp')
	{
		doel = null;
	}
	
	filename = filename;
	
	if (query)
	{
		filename += query;
	}
	
	if (params == null){
		params = 'left=100,top=100,width=600,height=400,resizable=no,scrollbars=yes';
	}
	
	if (list)
	{
		var i = list.indexOf('=');
		var temp;
		
		temp = list.substr(0,i);
		
		if (list.substr(0,i) == 'selected'){	
			
			var selected = document.getElementById(list.substr(i+1, list.length -i));
			filename += '&selected=' + selected.value;
		}
		else{
			filename += '&list=' + list;
		}
	}

	if (doel)
	{	
		var i = doel.indexOf('=');
		
		if (doel.substr(0,i) == 'multiple'){	
		
			var selected = document.getElementById(doel.substr(i+1, doel.length -i));
			filename += '&selected=' + selected.value;
		}
		else
		{
			filename += '&doel=' + doel;
		}
	}

	title     = 'popup_file';
	
	if (popup && !popup.closed) 
	{
		return;
	}
		
	window.open(filename, title, params);
} //popup()

/*
***************************************************************************************************
  function popup_Page(filename, query)
  
  Omschrijving:
	1. Openen van een popup_Page scherm
	2. Ieder popup_Page heeft dus dezelfde groote en style
  
  Parameters:
	Filename:		de te openen pagina (url)
	Query:			de mee te geven querystring beginnend met de '?'

***************************************************************************************************
*/
function popup_Page(filename, params, query, list, doel)
{
	var obj = document.getElementById('clicked_' + doel);
	
	var popup_Page;
	var filename;
	var title;
	
	if (obj)
	{
		if (obj.value == 'true')
		{
			var message = 
				'Ter beveiliging kunt u slechts één keer de knop \'Selecteren\' gebruiken.\n'
				+ 'Wilt u nu wijzigingen aanbrengen, voer dan eerst de volgende stappen uit:\n'
				+ '\n'
				+ '1. Vul eerst de andere velden in.\n'
				+ '2. Klik op \'Opslaan\'.\n'
				+ '3. Klik op de optie \'Wijzigen\' in de functieknop.\n'
				+ '4. Klik op de knop \'Selecteren\' om wijzigingen aan te brengen.\n'
				+ '\n'
				+ 'Klik nu op de knop \'OK\' om eerst bovenstaande stappen te doorlopen, of klik op de knop \'Annuleren\' als u toch door wilt gaan. U loopt dan wel het risico dat de oude inhoud verloren gaat.';
		
			if (window.confirm(message))
			{
				return false;
			}			
		}	
	}
	
	if (filename == 'koppeling.asp')
	{
		doel = null;
	}
	if(filename == 'Popup.asp')
	{
	    doel = null
    }
	filename = filename;
	
	if (query)
	{
		filename += query;
	}
	
	if (params == null){
		params = 'left=100,top=100,width=600,height=400,resizable=no,scrollbars=yes';
	}
	
	if (list)
	{
		var i = list.indexOf('=');
		var temp;
		
		temp = list.substr(0,i);
		
		if (list.substr(0,i) == 'selected'){	
			
			var selected = document.getElementById(list.substr(i+1, list.length -i));
			filename += '&selected=' + selected.value;
		}
		else{
			filename += '&list=' + list;
		}
	}
	
	if (doel)
	{	
		var i = doel.indexOf('=');
		
		if (doel.substr(0,i) == 'multiple'){	
		
			var selected = document.getElementById(doel.substr(i+1, doel.length -i));
			filename += '&selected=' + selected.value;
		}
		else
		{
			filename += '&doel=' + doel;
		}
	}

	title     = 'popup_file';
	
	if (popup_Page && !popup_Page.closed) 
	{
		return;
	}
		
	var win;
	win = window.open(filename, title, params);
	win.focus();
} //popup_Page()

function popup_new(filename, winparams, params, bron)
{
	if (!filename){
		return false;
	}
	
	if (!winparams){
		return false;
	}
		
	if (!bron){
		return false;
	}
	else{
		//var selection = document.forms['frminvoer'].elements[bron].value;
		var selected = document.getElementById(bron).value;
	}
	
	if (params){
		filename += "?" + params + "&selected=" + selected;
	}
	
	window.open(filename, 'popup', winparams);
	
} //popup_new()


/*
 ***************************************************************************************************
 * function stap(sjabloonID)
 *  
 * Omschrijving:
 *		laad de volgende stap, en post het formulier
 *	
 * Parameters:
 *		sjabloonID: de ID van het volgende sjabloon
 *
 *	Wijzigingen
 *		[PH:20041012] Created
 *
 ***************************************************************************************************
 */
function stap(sjabloonID)
{
	var obj;
	obj = document.getElementById('volgendestap');
	
	if (obj)
	{
		obj.value = sjabloonID;
	}	
	
	if (fn_submitCheck() == true)
	{
		document.forms['frminvoer'].submit();
	}
}

/*
***************************************************************************************************
  function menuAction(actie, pagina, list, doel)
  
  Omschrijving:
	1. Actie die wordt ondernomen vanuit het menu
  
  Parameters:
	actie:			actie die wordt gedaan (bv: opslaan, annuleren)
	pagina:			naam van pagina waarvan de actie wordt ondernomen
	list:			list waarin de gekozen waarden worden opgeslagen
	hiddenfield:	hiddenfield waarin de waarden values / ID's worden opgeslagen
	
  Wijzigingen:
	[MS:20041111]	Bij klik op Annuleer in case 'file' het window sluiten

***************************************************************************************************
*/
function menuAction(actie, pagina, list, hiddenfield, maximum)
{	
	switch(actie)
	{
		case 'annuleren':
			switch(pagina)
			{
				case 'file':
					//executeSluitCode('annuleer');
				
					var obj = document.getElementById('fotoID');
					obj.value = '*';
					
					obj = document.getElementById('verwijderen');
					obj.submit();
					window.close();
					break;
					
				case 'popup':
					window.close();
					break;
					
				case 'invoersjabloon':
					javascript:history.back(-1);
					break;

				//[RL:20040128] toevoegen optie
				case 'overzichtsjabloon':
					history.back();	
					break;
				
				default:
					alert('onbekende pagina: ' + actie + ', pagina: ' + pagina);
					break;
					
			}
			break;
		
		case 'opslaan':
			switch(pagina.toLowerCase())
			{
				case 'file':
					//executeSluitCode('opslaan');
					fn_FileSubmit(list, hiddenfield, maximum);				
				break;
				
				case 'invoersjabloon':
					if (fn_submitCheck() == true)
					{
						if (blnVerzonden == true)
						{
							alert('De gegevens zijn reeds verzonden, een ogenblik geduld aub.');
						}
						blnVerzonden = true;
						document.forms['frminvoer'].submit();
					}
				break;
				
				default:
					alert('onbekende pagina: ' + actie + ', pagina: ' + pagina);
					break;				
			}
			
			break;
		
		/*
		 * [PH:20040929] hierbij wordt eerst het kennisitem opgeslagen, en vervolgens de raadplegen geactiveerd
		 */	
		case 'raadplegen':
			if (fn_submitCheck() == true)
			{
				var objForm = document.getElementById('frminvoer');
				if (objForm)
				{
					var objRaadplegen = document.getElementById('raadplegen');
					if (objRaadplegen)
					{
						objRaadplegen.value = 'true';
					}
					objForm.submit();
				}
			}
			break;			

		//[RL:20040128] toevoegen optie
		case 'toevoegen':
			switch(pagina.toLowerCase())
			{
				case 'overzichtsjabloon':
					
					document.forms['frmoverzicht'].submit();

				break;

				//[RL:20040206] toevoegen optie
				case 'overzichtformulier':					
					document.forms['frmformulier'].submit();
				break;
				
				default:
					alert('onbekende pagina: ' + actie + ', pagina: ' + pagina);
					break;				
			}
			
			break;
		
		case 'help':
			window.open('../help/handleiding.htm');
			//popup('../help/handleiding.htm', 'width=700,height=400,resizable=no,scrollbars=yes');
			break;
			
		case 'download':
			parent.location.href = "telefoonlijst_csv_out.asp?filename=telefoonlijst.csv";
			break;
			
		default:
			alert('onbekende actie: ' + actie + ', op pagina: ' + pagina);
			break;
	}
} //menuAction()



/*

*/
function fn_HTMLEditorSubmit(tekst, doel, popup)
{
	var obj;
	var infoObj;
	var txtlength = 0;	
	
	if (popup == 'true')
	{
		obj     = window.opener.document.getElementById(doel);
		infoObj = window.opener.document.getElementById('info_' + doel);
		
		if (!obj){
			fnDisplayError(1);
		}
		
		if (!infoObj){
			fnDisplayError(1);
		}
	}
	else
	{
		obj     = document.getElementById(doel);
		infoObj = document.getElementById('info_' + doel);
	}

	obj.value = '';
	infoObj.value = '';
		
	if (!obj)
	{
		return false;
	}
	
	if (!infoObj)
	{
		return false;
	}
	
	if (tekst)
	{
		tekst = fnHardunescape(tekst)
	
		obj.value = tekst;
		
		var tagOpen  = false;
		var tagClose = true; 
		var karakter;
		/*
		//document.write ('tagOpen: ' + tagOpen + '<br>');
		//document.write ('tagClose: ' + tagClose + '<br>');
		//document.write ('txtlength: ' + txtlength + '<br><br><br>');
			*/		
		for (var i=0; i<tekst.length; i++)
		{
			karakter = tekst.substr(i, 1);	
	
			if ((tagOpen == false) && (tagClose == true))
			{
				if (karakter == '<')
				{
					tagOpen = true;
					tagClose = false;
					//document.write ('-------------------------------<br>');						
					txtlength--;
				}					
				txtlength++;
			}
			else
			{
				if((tagOpen == true) && (tagClose == false))
				{
					if (karakter == '>')
					{
						tagOpen = false;
						tagClose = true;	
						//document.write ('+++++++++++++++++++++++++++++++<br>');						
					}
				}
			}				
			//document.write ('i: ' + i + ',' + karakter + '<br>');
			//document.write ('tagOpen: ' + tagOpen + '<br>');
			//document.write ('tagClose: ' + tagClose + '<br>');
			//document.write ('txtlength: ' + txtlength + '<br><br>');				
			
		}

	}		
		
	if (obj.value.length == 0)
	{
		infoObj.value = '';		
	}
	else
	{
		infoObj.value = 'Er is een tekst ingevoerd met ' + txtlength + ' tekens';
	}

} //fn_HTMLEditorSubmit()



function fnHardunescape(strValue)
{
	if(typeof(strValue) != 'string')
	{
		return '';
	}

	var pos1 = 0;
	var pos2 = 0;

	var rVal = '';
	var strChar = '';

	for(var i = 0; i < strValue.length; i++)
	{
		strChar = strValue.charAt(i);
		
		if(strChar == '%')
		{
			pos1 = i + 1;
			pos2 = strValue.indexOf('%', pos1);

			strChar = strValue.substring(pos1, pos2);
			//window.alert('strValue: ' + strValue + '\npos1: ' + pos1 + '\npos2: ' + pos2 + '\nstrChar: ' + strChar);
			strChar = String.fromCharCode(strChar);

			i = pos2;
		}

		rVal += strChar;
	}

	return rVal;
}

/*
***************************************************************************************************
  function fn_FileSubmit(list, hiddenfield)
  
  Omschrijving:
	1. Bijwerken van de listbox en het hiddenveld op het invoerSjabloon
  
  Parameters:
	list:			list waarin de gekozen waarden worden opgeslagen
	hiddenfield:	hiddenfield waarin de waarden values / ID's worden opgeslagen

***************************************************************************************************
*/
function fn_FileSubmit(list, hiddenfield, maximum)
{
	var filename;
	var fileid;
	var cm_list;
	var hf_hiddenfield;
	var arr;
    var test;
    
	filename       = document.getElementById('hf_filename');
	fileid         = document.getElementById('hf_fileid');

	cm_list         = window.opener.document.getElementById('cm_' + list);
	hf_hiddenfield  = window.opener.document.getElementById(list);
		    
	if (!cm_list){
		fnDisplayError(1);
	}
		
	if (!hf_hiddenfield){
	    fnDisplayError(1);
	}
	
	if (((filename) && (fileid)) && ((cm_list) && (hf_hiddenfield)))
	{
		cm_list.length = 0;
		hf_hiddenfield.value = '';
		
		arr = filename.value.split(",");
	
		if (maximum.length > 0){
			if (arr.length > maximum){
				alert('Er zijn te veel bestanden toegevoegd, u mag maximaal ' + maximum + ' bestande(en) toevoegen');		
				return false;	
			}
		}		
		
		
		for(var i=0; i<arr.length; i++)
		{
			var oOption = window.opener.document.createElement('OPTION');
			cm_list.options.add(oOption);
			oOption.value = arr[i];
			oOption.text = arr[i];
		}
				
		hf_hiddenfield.value = fileid.value;
	}
	
	window.close();
}



/*
***************************************************************************************************
  function fn_AddFile(progressID, type, naam)
  
  Omschrijving:
	1. Toevoegen van een bestand in de popup file_upload()
	2. Controleer of het bestandstype correct is.
  
  Parameters:
	progressID:		De ID van het uploadprocess
	type:			Een lijst van types waar de extensie aan voldoet
	naam:			De naam van het type, tekst voor de foutmelding

***************************************************************************************************
*/
function fn_AddFile(progressID, type, naam)
{
	var filename;
	var extensie;
	var ltype;
	
	filename = document.forms['form1'].elements['bf_file1'].value 
	ltype = type.toLowerCase();
	
	if (filename != '')
	{
		extensie = filename.substr((filename.length - 3),3)
		extensie = extensie.toLowerCase();
		
		//controleer of het bestand het juiste type is
		if (ltype.indexOf(extensie) < 0)
		{
			alert('Het door u geselecteerde bestand is niet een ' + naam + '\n\rSelecteer een ' + type + ' bestand');
		}
		else
		{
			if (progressID != null)
			{
				winstyle="height=200,width=500,status=no,toolbar=no,menubar=no,location=no";
				window.open('progress.asp?progressid=' + progressID, null, winstyle);
			}
			
			if (blnVerzoek == true)
			{
				alert('Het verzoek is reeds verzonden, een ogenblik geduld aub.');
			}
			else{
				blnVerzoek = true;
				var obj = document.getElementById('toevoegen');
				obj.style.display = 'inline';
				document.form1.submit();
			}
		}		
	}
} //fn_AddFile()



/*
***************************************************************************************************
  function init_attach()
  
  Omschrijving:
	
  Parameters:
	Maakt gebruik van de array arrAttach:
		arrAttach[0] = veldID
		arrAttach[1] = attachveldID
		arrAttach[2] = checkOn
		arrAttach[3] = waarde
		arrAttach[4] = actie

***************************************************************************************************
*/
function init_attach()
{
	var aObj;  //attach inputfield Object
	var tRObj; //target row Object
	var tObj;  //target inputfield Object
	
	var checkOn;
	var waarde;
	var objType;
	
	if (arrAttach)
	{
		for (var i=0; i<arrAttach.length; i++)
		{
			checkOn = arrAttach[i][2];
			waarde  = arrAttach[i][3];
		
			tObj = document.getElementById(arrAttach[i][0]);
			tRObj = document.getElementById('fld_' + arrAttach[i][0]);
			aObj = document.getElementById(arrAttach[i][1]);
			
			if ((aObj != null) && (arrAttach[i][0] != 275))
			{
				if(typeof aObj.attachEvent != 'function') {
					var oldAttach = aObj.attachEvent;
					aObj.attachEvent = function(eventname,name) {
						if(window.addEventListener) {
						    if(eventname == 'onclick') {
						        eventname = 'click';
						    }
						    else if(eventname == 'onchange') {
						        eventname = 'change';
						    }
							aObj.addEventListener(eventname,name,false);
						}
						else {
							oldAttach(eventname,name);
						}
					};
				}
				if(window.addEventListener) {
				    if(typeof aObj.click != 'function') {
				        aObj.click = function() {
				            var e = this.ownerDocument.createEvent("MouseEvents");
				            e.initMouseEvent('click',true,true,this.ownerDocument.defaultView,1,0,0,0,0,false,false,false,false,0,null);
				            this.dispatchEvent(e);
				        };
				    }	
				}		
				//check die ooit nog anders zal moeten
				//indien een gebruikersnaam is ingevuld bij een gebruiker toon dan deze
				if (arrAttach[i][0] == 73)
				{
					var oAttach = document.getElementById(arrAttach[i][0]);
					if (oAttach)
					{
						if (oAttach.value != '')
						{
							if(aObj)
							{
								aObj.selectedIndex = 1;
							}
						}
					}
				}
				
				objType = aObj.type;
				
				switch(checkOn)
				{
					case 'length':
						aObj.attachEvent('onclick', fn_attachLoadList);
						aObj.click();
						break;
					
					case 'checked':
						if (objType == 'checkbox')
						{
							aObj.attachEvent('onclick', fn_attachLoadList);
							var doelRow = document.getElementById('fld_' + arrAttach[i][0]);
							if (doelRow)
							{
								if (waarde == 'true')
								{
									if (aObj.checked == true)
									{
										doelRow.style.display = 'inline';
									}
									else
									{
										doelRow.style.display = 'none';
									}
								}
								else
								{
									if (aObj.checked == true)
									{
										doelRow.style.display = 'none';
									}
									else
									{
										doelRow.style.display = 'inline';
									}
								}
							}					
						}
						break;
					
					case 'value':
						switch(objType)
						{
							case 'checkbox':
								var obj2 = document.getElementsByName(aObj.name);
								
								for (var j=0; j<obj2.length; j++){
									if (obj2[j].value == waarde)
									{
										//alert(document.getElementsByName(aObj).name[j].value);
										//var obj3 = document.getElementById(obj2[j]);
										//alert(obj3.id);
										
										aObj.attachEvent('onclick', fn_attachLoadList);
										//aObj.attachEvent('onchange', fn_attachLoadList);
										var doelRow = document.getElementById('fld_' + arrAttach[i][0]);
										
										if (obj2[j].checked)
										{
											//doelRow.style.display = 'inline';
										}
										else
										{
											doelRow.style.display = 'none';
										}
									}
								}
								break;
								
							case 'select-one':
								aObj.attachEvent('onchange', fn_attachLoadList);
								aObj.attachEvent('onclick', fn_attachLoadList);
								
								var doelRow = document.getElementById('fld_' + arrAttach[i][0]);
								if (doelRow)
								{
									doelRow.style.display = 'none';
									var temp = aObj.selectedIndex;
									aObj.click();
									aObj.selectedIndex = temp;
								}
								break;
								
							default:
								aObj.attachEvent('onclick', fn_attachLoadList);
								
								var doelRow = document.getElementById('fld_' + arrAttach[i][0]);
								if (doelRow)
								{
									doelRow.style.display = 'none';
									var temp = aObj.selectedIndex;
									aObj.click();
									aObj.selectedIndex = temp;
								}
								break;
						}
					break;
				}
			}

			//selecteer de default waarde
			if (tObj != null)
			{	
				for (var j=0; j<tObj.length; j++)
				{
					if (tObj[j].value == arrAttach[i][5])
					{
						tObj.selectedIndex = j;
					}
				}
			}
		}
	}
}



/*
***************************************************************************************************
  function fn_attachLoadList()
  
  Omschrijving:
	
  Parameters:
	Maakt gebruik van de array arrAttach:
		arrAttach[0] = veldID
		arrAttach[1] = attachveldID
		arrAttach[2] = checkOn
		arrAttach[3] = waarde
		arrAttach[4] = actie

***************************************************************************************************
*/
function fn_attachLoadList(eventSource)
{
	var waarde;
	var checkOn;
	
	if (arrAttach)
	{
		for (var i=0; i<arrAttach.length; i++)
		{
			checkOn = arrAttach[i][2];
			waarde  = arrAttach[i][3];
			if(window.event) eventSource = window.event;
			var eventSourceId = eventSource.srcElement ? eventSource.srcElement : eventSource.target;
			eventSourceId = eventSourceId.id;
			if (eventSourceId == arrAttach[i][1])
			{
				var doel = document.getElementById(arrAttach[i][0]);
				var doelRow = document.getElementById('fld_' + arrAttach[i][0]);

				switch(checkOn)
				{
					case 'checked':
						var bron = document.getElementById(eventSourceId);
						
						if (bron.type == 'checkbox')
						{
							var doelRow = document.getElementById('fld_' + arrAttach[i][0]);
							if (doelRow)
							{
								if (waarde == 'true')
								{
									if (bron.checked == true)
									{
										doelRow.style.display = 'inline';
									}
									else
									{
										doelRow.style.display = 'none';
									}
								}
								else
								{
									if (bron.checked == true)
									{
										doelRow.style.display = 'none';
									}
									else
									{
										doelRow.style.display = 'inline';
									}
								}
							}					
						}
						break;						
						
					case 'length':
						var bron = document.getElementById('ks_' + eventSourceId);
						
						if ((doel) && (bron))
						{			
							doelRow.style.display = 'none';
							
							if (bron.length > 1)
							{
								doelRow.style.display = 'inline';					
							}
							fn_loadwaarden(doel, bron);
						}
						break;
						
					case 'value':
						var bron = document.getElementById(eventSourceId);
						//bron = document.getElementById(bron.name);
						
						if ((doel) && (bron))
						{			
							doelRow.style.display = 'none';
							
							if (bron.type == 'checkbox'){
								var obj2 = document.getElementsByName(bron.name);
								
								for (var j=0; j<obj2.length; j++){
									if (obj2[j].value == waarde){
										if (obj2[j].checked){
											doelRow.style.display = 'inline';
										}
									}
								}
							}
							else{
								if (bron.type == 'select-one')
								{
									if ((checkOn == 'value') || (checkOn == 'text'))
									{
										if (waarde.indexOf('|') > 0)
										{
											var arrWaarde = waarde.split('|');
											
											for (j=0; j<arrWaarde.length; j++)
											{
												if (bron[bron.selectedIndex].value == arrWaarde[j])
												{
													//doelRow.style.display = 'inline';
												}
												//verwijder de eventuele tekstuele invoer indien de betreffende text wordt gehidden
												//anders wordt deze opgeslagen en kun je rare situaties krijgen
												else{
													if (doel.type == 'text'){
														doel.value = '';
													}
												}
											}
										}
										else
										{
											if (bron[bron.selectedIndex].value == waarde)
											{
											    doelRow.style.display ='inline';
											}
											//verwijder de eventuele tekstuele invoer indien de betreffende text wordt gehidden
											//anders wordt deze opgeslagen en kun je rare situaties krijgen
											else{
												if (doel.type == 'text'){
													doel.value = '';
												}
											}
										}
									}
									
								
									
								}	
								else{
									if (bron[bron.selectedIndex].value == waarde)
									{
										doelRow.style.display = 'inline';
									}
								}	
							}
						}
						
						break;
				}
			}
		}
	}
}
	




/*
***************************************************************************************************
  function fn_AttachEvent(VeldID, AttachVeldID, Checkon, Waarde, Actie)
  
  Omschrijving:
  
  Parameters:

***************************************************************************************************
*/
function fn_AttachEvent(obj)
{
	var tRow;
	var tObj;
	
	for (var i=0; i<arrAttach.length; i++)
	{	
		tRow = document.getElementById('fld_' + arrAttach[i][0]);
		tObj = document.getElementById(arrAttach[i][0]);
					
		if ((arrAttach[i][1]) == obj.id)
		{
			switch(arrAttach[i][2].toLowerCase())
			{
				case "length":
					if (obj.length > 0)
					{
						if (tObj != null)
						{
							tObj.length = 0;
							fn_loadwaarden(tObj, obj);
						}
													
						if (tRow != null)
						{
							tRow.style.display = 'inline';
						}
					}
					else
					{
						if (tRow != null)
						{
							tRow.style.display = 'none';
						}
					}
					break;
			}
		}			
	}
} //fn_AttachEvent()



function fn_loadwaarden(doel, bron)
{
	if (doel != null)
	{
		doel.length = 0;
		
		for (var i=0; i<bron.length; i++)
		{
			var oOption = document.createElement("OPTION");
			doel.options.add(oOption);
			oOption.value = bron[i].value;
			oOption.text = bron[i].text;
		}
	}
}



/*
***************************************************************************************************
  function fn_MinimaleWeergave(value)
  
  Omschrijving:
	1. Geef alleen de minimale velden weer, of juist alle velden
  
  Parameters:
	value:	0 verkort
			1 volledig

***************************************************************************************************
*/
function fn_MinimaleWeergave(obj)
{	
	var strCluster;
	var blnCluster;
	
	for (var i=0; i<arrMinimaal.length; i++)
	{
		if (strCluster != arrMinimaal[i][1])
		{
			var iObj = document.getElementById('img_' + strCluster);
						
			if (iObj!= null)
			{
				if (blnCluster == 0)
				{
					iObj.src = '../images/icons/icon-plus.gif';
				}
				else
				{
					iObj.src = '../images/icons/icon-min.gif';	
				}
			}
			
			strCluster = arrMinimaal[i][1];
			blnCluster = 0;
		}
		
		if (arrMinimaal[i][2] == 0)
		{
			if (document.getElementById('fld_' + arrMinimaal[i][0]) != null)
				{
				if (obj.selectedIndex == 0) //verkort weergeven
				{
					document.getElementById('fld_' + arrMinimaal[i][0]).style.display = 'none';
				}
				else //value == 0, volledig weergeven
				{
					document.getElementById('fld_' + arrMinimaal[i][0]).style.display = 'inline';
					blnCluster = 0;
				}
			}
		}
		else
		{
			blnCluster = 1;
		}
	}
	
} //fnMinimaleWeergave()





/*
***************************************************************************************************
  function fn_CheckInvoer()
  
  Omschrijving:
	arrVelden[0] = clusterID
	arrVelden[1] = veld (decoded)
	arrVelden[2] = verplicht
	arrVelden[3] = minimaal
	arrVelden[4] = cluster open/gesloten
	arrVelden[5] = koppelsrtID
	arrVelden[6] = Label
	arrVelden[7] = invoertype (RegExp)
	arrVelden[8] = maximum lengte
  Parameters:

***************************************************************************************************
*/
function fn_submitCheck()
{
	var obj;
	var first_obj;
	var checkRegExpArr = new Array();
	var checkMsgArr = new Array();
	var checkLenArr = new Array();
	
	for (var i=0; i<arrVelden.length; i++)
	{
		if (arrVelden[i][7].length != 0)
		{
			var obj = document.getElementById(arrVelden[i][1]);
			
			if (obj)
			{
				text = obj.value
			
				if (text.length > 0)
				{
					switch(arrVelden[i][7])
					{
						case 'password':
							var pattern = /^.{5,}$/;
							if (!pattern.exec(text))
							{
								checkRegExpArr[checkRegExpArr.length] = [arrVelden[i][6] + ' - wachtwoord moet minimaal 5 tekens bevatten'];
							}				
							break;
							
						case 'integer':
							var pattern = /^[0-9]*$/;
							if (!pattern.exec(text))
							{
								checkRegExpArr[checkRegExpArr.length] = [arrVelden[i][6] + ' - geen getal (0123)'];
							}				
							break;
							
						case 'hyperlink':
							/*
							 * [PH:20040817]
							 * indien een hyperlink is ingevuld maar niet begint met http:// vul deze dan in.
							 */
							if (text.substr(0, 7) != 'http://')
							{
								if( text.substr(0, 8) != 'https://' )
								{
									text = 'http://' + text;
									obj.value = text;
								}
							}
							
							var pattern = /(\w+):\/\/([^/:]+)(:\d*)?([^# ]*)/;
							if (!pattern.exec(text))
							{
								checkRegExpArr[checkRegExpArr.length] = [arrVelden[i][6] + ' - geen hyperlink (http://www.knowledgereef.nl)'];
							}				
							break;
							
						case 'telefoon':
							/*
							var pattern = /^[0-9.-. .(.)]*$/;
							if (!pattern.exec(text))
							{
								checkRegExpArr[checkRegExpArr.length] = [arrVelden[i][6] + ' - geen telefoonnummer ((036)-527 830 0)'];
							}										
							*/
							break;
						case 'email':
							var pattern = /^[a-zA-Z0-9._-]+@([a-zA-Z0-9.-]+\.)+[a-zA-Z0-9.-]{2,4}$/;
							if (!pattern.exec(text))
							{
								checkRegExpArr[checkRegExpArr.length] = [arrVelden[i][6] + ' - geen e-mailadres (info@knowledgereef.nl)'];
							}										
							break;

						case 'datum':
							var pattern       = /^\d{1,2}-\d{1,2}-(\d{4})$/;
							var correct       = true;
							var maanden       = new Array(31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);
							var schrikkeljaar = 0;
							var dag           = text.substr(0, 2);
							var maand         = text.substr(3, 2);
							var jaar          = text.substr(6, 4);

							if (!pattern.exec(text)){
								correct = false;
							}
							
							
							if (correct == true){
								//geldige datum?				
								if ((jaar >= 1900) && (jaar <= 2100)){
									//indien schrikkeljaar
									if ((jaar % 4) == 0){
										schrikkeljaar = 1;
									}

									if ((maand >= 0) && (maand <= 12)){
										if ((dag >= 0) && (dag <= (maanden[maand -1]) + schrikkeljaar)){
											correct = true;
										}
										else{
											correct = false;
										}					
									}
									else{
									correct = false;
									}					
								}
								else{
									correct = false;
								}						
							}
													
							if (correct == false){
								checkRegExpArr[checkRegExpArr.length] = [arrVelden[i][6] + ' - geen datum (18-02-2004)'];						
							}

							break;
							
						/*
						* [PH:20040627] nieuw datum tijd pattern bijv: 27-06-2004 19:30
						*/
						case 'datumtijd':
							var datum = text.substr(0, 10);
							var tijd = text.substr(11,5);
							
							var pattern       = /^\d{1,2}-\d{1,2}-(\d{4})$/;
							var correct       = true;
							var maanden       = new Array(31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);
							var schrikkeljaar = 0;
							var dag           = text.substr(0, 2);
							var maand         = text.substr(3, 2);
							var jaar          = text.substr(6, 4);
							
							if (!pattern.exec(datum)){
								correct = false;
							}
													
							if (correct == true){
								//geldige datum?				
								if ((jaar >= 1900) && (jaar <= 2100)){
									//indien schrikkeljaar
									if ((jaar % 4) == 0){
										schrikkeljaar = 1;
									}

									if ((maand >= 0) && (maand <= 12)){
										if ((dag >= 0) && (dag <= (maanden[maand -1]) + schrikkeljaar)){
											correct = true;
										}
										else{
											correct = false;
										}					
									}
									else{
									correct = false;
									}					
								}
								else{
									correct = false;
								}						
							}
							
							var correct2 = true;
							
							var pattern =  /^\d{1,2}[:]\d{2}([:]\d{2})?( [aApP][mM]?)?$/;
							if (!pattern.exec(tijd))
							{
								correct2 = false;
							}					
							else
							{
								var uur           = text.substr(11, 2);
								var minuut		  = text.substr(14, 2);
								
								if ((uur >= '00') && (uur <= '23'))
								{
									if ((minuut >= '00') && (minuut <= '59'))
									{
										correct2 = true;
									
										
									}
									else
									{
										correct2 = false;
									}								
								}
								else
								{
									correct2 = false;
								}
							}					
							
							if ((correct == false) || (correct2 == false)){
								checkRegExpArr[checkRegExpArr.length] = [arrVelden[i][6] + ' - geen datum / tijd notatie'];
							}
													
							break;						
/*
						* [MS:20050105] nieuw datum tijd pattern. datum en eventueel de tijd (niet verplicht)
										 bijv: 27-06-2004 19:30 of 27-06-2004
						*/
						case 'datumevttijd':
							var datum = text.substr(0, 10);
							var tijd = text.substr(11,5);
							
							var pattern       = /^\d{1,2}-\d{1,2}-(\d{4})$/;
							var correct       = true;
							var maanden       = new Array(31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);
							var schrikkeljaar = 0;
							var dag           = text.substr(0, 2);
							var maand         = text.substr(3, 2);
							var jaar          = text.substr(6, 4);
							
							if (!pattern.exec(datum)){
								correct = false;
							}
													
							if (correct == true){
								//geldige datum?				
								if ((jaar >= 1900) && (jaar <= 2100)){
									//indien schrikkeljaar
									if ((jaar % 4) == 0){
										schrikkeljaar = 1;
									}

									if ((maand >= 0) && (maand <= 12)){
										if ((dag >= 0) && (dag <= (maanden[maand -1]) + schrikkeljaar)){
											correct = true;
										}
										else{
											correct = false;
										}					
									}
									else{
									correct = false;
									}					
								}
								else{
									correct = false;
								}						
							}
							
							var correct2 = true;
							
							var pattern =  /^\d{1,2}[:]\d{2}([:]\d{2})?( [aApP][mM]?)?$/;
							if (!pattern.exec(tijd))
							{
								//correct2 = false;
							}					
							else
							{
								var uur           = text.substr(11, 2);
								var minuut		  = text.substr(14, 2);
								
								if ((uur >= '00') && (uur <= '23'))
								{
									if ((minuut >= '00') && (minuut <= '59'))
									{
										correct2 = true;
									
										
									}
									else
									{
										correct2 = false;
									}								
								}
								else
								{
									correct2 = false;
								}
							}					
							
							if ((correct == false) || (correct2 == false)){
								checkRegExpArr[checkRegExpArr.length] = [arrVelden[i][6] + ' - geen datum / tijd notatie'];
							}
													
							break;	

						// [MS:20070526] Controle datum begin / eind
						case 'datumcheck':
							var datum = text.substr(0, 10);
							var tijd = text.substr(11,5);
							
							var pattern       = /^\d{1,2}-\d{1,2}-(\d{4})$/;
							var correct       = true;
							var maanden       = new Array(31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);
							var schrikkeljaar = 0;
							var dag           = text.substr(0, 2);
							var maand         = text.substr(3, 2);
							var jaar          = text.substr(6, 4);
							
							var obj1, obj2
							var bExtraControle = true;
							
							var iID = parseInt(arrVelden[i][1]) + 1
							var obj1 = document.getElementById('' + arrVelden[i][1]);
							var obj2 = document.getElementById('' + iID);
							
							if (!pattern.exec(datum)){
								correct = false;
							}
													
							if (correct == true){
								//geldige datum?				
								if ((jaar >= 1900) && (jaar <= 2100)){
									//indien schrikkeljaar
									if ((jaar % 4) == 0){
										schrikkeljaar = 1;
									}

									if ((maand >= 0) && (maand <= 12)){
										if ((dag >= 0) && (dag <= (maanden[maand -1]) + schrikkeljaar)){
											
											if (dateCompare(obj1, obj2)) {
												correct = true;
											}
											else
											{
											/*correct = true;*/
											/*
											//20071214 JV: Tijdelijk uit gezet, omdat het problemen geeft op productie en testomgeving.
											//Data worden omgedraaid (maand & dag). Kan niet zo snel vinden waar het aan zou moeten liggen.
											*/
											correct = false;
											bExtraControle = false;
											checkRegExpArr[checkRegExpArr.length] = [arrVelden[i][6] + ' - Aanvangdatum mag niet groter zijn dan de einddatum'];
											
											}
										}
										else{
											correct = false;
										}					
									}
									else{
									correct = false;
									}					
								}
								else{
									correct = false;
								}						
							}
							
							var correct2 = true;
							
							var pattern =  /^\d{1,2}[:]\d{2}([:]\d{2})?( [aApP][mM]?)?$/;
							if (!pattern.exec(tijd))
							{
								//correct2 = false;
							}					
							else
							{
								var uur           = text.substr(11, 2);
								var minuut		  = text.substr(14, 2);
								
								if ((uur >= '00') && (uur <= '23'))
								{
									if ((minuut >= '00') && (minuut <= '59'))
									{
										correct2 = true;
									
										
									}
									else
									{
										correct2 = false;
									}								
								}
								else
								{
									correct2 = false;
								}
							}					
							if (((correct == false) || (correct2 == false)) && (bExtraControle == true)){
								checkRegExpArr[checkRegExpArr.length] = [arrVelden[i][6] + ' - geen datum / tijd notatie'];
							}
													
							break;	
							
					}
				}
			}
		}
	}
	
	//indien velden niet voldoen aan het Regular Expression formaat, geef dan een melding (alert) weer
	if (checkRegExpArr.length != 0)
	{
		var msg;
		msg = '';
		
		for (var i=0; i<checkRegExpArr.length; i++)
		{
			if (i > 0)
			{
				msg += '\n\r';
			}
			
			msg += '- ' + checkRegExpArr[i][0];
		}
		alert('De door u ingevoerde velden zijn niet allemaal juist ingevuld\n\r\n\rOnjuist zijn:\n\r' + msg);
	
		if (first_obj != null)
		{
			//first_obj.focus();
		}

		return false;
	}

	
	
	//doorloop alle velden
	for (var i=0; i<arrVelden.length; i++)
	{	
		var obj;
		
		//maximum grootte voor een veld
		if (arrVelden[i][8] > 0)
		{
			obj = document.getElementById(arrVelden[i][1]);
			
			/*
			[PH:20040611] W1.01 extra check die controleert of het object wel aanwezig is
			*/
			if (obj)
			{
				if (obj.name.substr(0, 3) == 'ta_'){
					if (obj.value.length > arrVelden[i][8]){
						checkLenArr[checkLenArr.length] = ['\'' + arrVelden[i][6] + '\' (tekens: ' + obj.value.length + ', toegestaan: ' + arrVelden[i][8] + ')'];
					}
				}
			}
		}
			
		if (arrVelden[i][2] == 1)
		{
			obj = document.getElementById(arrVelden[i][1]);
			
			if (obj)
			{
				var objRow = document.getElementById('fld_' + obj.id);
				switch(obj.name.substr(0, 3))
				{
					case "ta_":
					case "tf_":
						if (objRow.style.display != 'none'){
							if (obj.value.length == 0)
							{
								if (first_obj == null)
								{
									first_obj = obj;
								}
								checkMsgArr[checkMsgArr.length] = [arrVelden[i][6]];	
							}
						}
						break;

					case "hf_":
						if (objRow.style.display != 'none')
						{
							//Extra controle op -1, anders kon je een pop-up openen, dan op opslaan drukken. Je krijgt dan waarde -1 als value.
							if (obj.value.length == 0 || obj.value == -1)
							{
								checkMsgArr[checkMsgArr.length] = [arrVelden[i][6]];	
							}
						}
						break;
						
					case "cm_":
						if (objRow.style.display != 'none')
						{
							if (obj.selectedIndex == 0)
							{
								if (obj.value == '-1')
								{						
									if (first_obj == null)
									{
										first_obj = obj;
									}
									checkMsgArr[checkMsgArr.length] = [arrVelden[i][6]];	
								}
							}
						}
						break;
				}
			}
			else
			{
				var rdi = 0;
				var blnSelected = false;
				
				obj = document.getElementById(arrVelden[i][1] + ':' + rdi);			

				if (obj)
				{
					var objRow = document.getElementById('fld_' + arrVelden[i][1]);
				
					switch(obj.name.substr(0, 3))
					{
						case "rd_":
							if (objRow.style.display != 'none')
							{
								var obj2;
								
								obj2 = document.getElementById(arrVelden[i][1] + ':' + rdi);
								
								while(obj2 && (blnSelected == false))
								{
									obj2 = document.getElementById(arrVelden[i][1] + ':' + rdi);
									
									if (obj2)
									{
										if (obj2.checked)
										{
											blnSelected = true;
										}
									}
									rdi++;
								}
								
								if (blnSelected == false)
								{
									checkMsgArr[checkMsgArr.length] = [arrVelden[i][6]];
								}
							}
							break;
					}
				}
			}
		}				
	}
	
	
	//indien velden de maximum lengte overschrijven, geef dan een melding (alert) weer
	if (checkLenArr.length != 0)
	{
		var msg;
		msg = '';
		
		for (var i=0; i<checkLenArr.length; i++)
		{
			if (i > 0)
			{
				msg += '\n\r';
			}
			
			msg += '- ' + checkLenArr[i][0];
		}
		alert('De maximum lengte van één of meer velden is overschreden\n\r\n\rVelden:\n\r' + msg);
		
		if (first_obj != null)
		{
			//first_obj.focus();
		}

		return false;
	}

	//indien velden niet zijn ingevoerd, geef dan een melding (alert) weer
	if (checkMsgArr.length != 0)
	{
		var msg, maxmessages, messages;
		msg = '';
		
		maxmessages = 10;
		
		if (checkMsgArr.length > maxmessages)
		{
			messages = maxmessages
		}
		else
		{
			messages = checkMsgArr.length;
		}
		
		for (var i=0; i<messages; i++)
		{
			if (i > 0)
			{
				msg += '\n\r';
			}
			
			msg += '- ' + checkMsgArr[i][0];
		}
		
		if (checkMsgArr.length > maxmessages)
		{
			msg += '\n\nEr zijn nog meer ontbrekende gegevens...';
		}		
		
		alert('Dit formulier heeft een aantal verplichte velden, die niet allemaal zijn ingevuld\n\r\n\rOntbrekende gegevens:\n\r' + msg);
		
		if (first_obj != null)
		{
			//first_obj.focus();
		}

		return false;
	}

	//doorloop alle velden, indien koppelsrtID subdomein en redactioneel subdomein voorkomen, verwijder dan het
	//redactioneel subdomein uit de lijst van subdomeinen, anders bestaan er twee koppelsoorten voor het atoom
	var ks15;
	var ks19;
	
	for (var i=0; i<arrVelden.length; i++)
	{
		if (arrVelden[i][5] == "15")
		{
			ks15 = document.getElementById(arrVelden[i][1]);
		}
		
		if (arrVelden[i][5] == "19")
		{
			ks19 = document.getElementById(arrVelden[i][1]);
		}
	}	
	
	if (ks15){
		if (ks19){
			var list = ks15.value.split(",");
			
			if (list.length == 1){
				ks19.length = 0;
			}				
		}
	}
	
	return true;
}



/*
***************************************************************************************************
  function fn_cluster()
  
  Omschrijving:
	arrVelden[0] = clusterID
	arrVelden[1] = veldID
	arrVelden[2] = verplicht
	arrVelden[3] = minimaal
	arrVelden[4] = cluster open/gesloten
	arrVelden[5] = koppelsrtID
	arrVelden[6] = Label
  Parameters:

***************************************************************************************************
*/
function fn_cluster(clusterID, iObj)
{
	var obj;
	var filename;
	
	//vervang de plus gif in een min gif of andersom
	obj = iObj;
	
	if (obj)
	{
		filename = obj.src.substr(obj.src.length - 8, 8);
		if (filename == 'plus.gif')
		{
			obj.src = '../images/icons/icon-min.gif';
		}
		else
		{
			obj.src = '../images/icons/icon-plus.gif';
		}
	}
	
	for (var i=0; i<arrVelden.length; i++)
	{	
		if (arrVelden[i][0] == clusterID)
		{
			obj = document.getElementById('fld_' + arrVelden[i][1]);
			
			if (obj)
			{
				if (arrVelden[i][4] == 1)
				{
					obj.style.display = 'none';		
					arrVelden[i][4] = 0;
				}
				else
				{
					obj.style.display = 'inline';		
					arrVelden[i][4] = 1;
				}
			}
		}
	}
} //fn_cluster()



/*
***************************************************************************************************
  function fn_CheckInvoer()
  
  Omschrijving:
	1. Controleer of alle verplichte velden zijn ingevoerd, voordat een pagina wordt gepost
	2. Verplichte velden staan in een array 'arrCheck'
	
	checkMsgArr[0]
	checkMsgArr[1]
	checkMsgArr[2]
	
  Parameters:

***************************************************************************************************
*/
function fn_CheckInvoer2()
{
	if(typeof(arrCheck) == 'undefined')
		return true;

	var bron;
	var checkMsgArr = new Array();
	
	for (var i=0; i<arrCheck.length; i++)
	{
		bron = document.forms['frminvoer'].elements[arrCheck[i][0]];
		switch(arrCheck[i][0].substr(0, 3))
		{
			case "ta_":
				if (bron.value.length == 0)
				{
					checkMsgArr[checkMsgArr.length] = [arrCheck[i][0], arrCheck[i][1], arrCheck[i][3]];
				}
				break;
								
			case "tf_":
				if (bron.value.length == 0)
				{
					checkMsgArr[checkMsgArr.length] = [arrCheck[i][0], arrCheck[i][1], arrCheck[i][3]];
				}
				break;

			case "hf_":
				if (bron.value.length == 0){
					checkMsgArr[checkMsgArr.length] = [arrCheck[i][0], arrCheck[i][1], arrCheck[i][3]];
				}
				break;

			case "cm_":
				if (bron.selectedIndex == 0)
				{
					checkMsgArr[checkMsgArr.length] = [arrCheck[i][0], arrCheck[i][1], arrCheck[i][3]];
				}	
				break;
						
			default:
				//alert('iets anders: ' + arrCheck[i][0].substr(0, 3));
				break;
		}
	}

	
	for (var i=0; i<arrCheck.length; i++)
	{
		bron = document.forms['frminvoer'].elements[arrCheck[i][0]];

		switch(arrCheck[i][2])
		{
			case "www":
				if (bron.value != '')
				{
					if (bron.value.indexOf('http://', 0) == -1)
					{
						if (bron.value.indexOf('https://', 0) == -1)
						{
							alert('Een url moet beginnen met http://');
						}
					}
				}
				break;
				
			case "email":
				if (bron.value != '')
				{
					if (bron.value.indexOf('@', 0) == -1)
					{
						alert('Geen geldig e-mailadres ingevoerd\n\reen e-mailadres moet minimaal een \'@\' bevatten');
					}
				}
				break;
				
			case "wachtwoord":
				if (bron.value != '')
				{
					if (bron.value.indexOf(' ', 0) != -1)
					{
						alert('Een wachtwoord mag geen spaties bevatten');
					}
				}
				break;
				
			case "telefoon":
				if (bron.value != '')
				{
				}
				break;		
				
			case "datum":
				if (bron.value != '')
				{
				}				
				break;		
		}
	}
	

	if (checkMsgArr.length != 0)
	{
		var msg;
		msg = '';
		
		for (var i=0; i<checkMsgArr.length; i++)
		{
			if (i > 0)
			{
				msg += '\n\r';
			}
			
			if (checkMsgArr[i][1].length != 0)
			{
				msg += '- ' + checkMsgArr[i][2] + ' (' + checkMsgArr[i][1] + ')';
			}
			else
			{
				msg += '- ' + checkMsgArr[i][2];
			}
		}
		alert('Dit invoersjabloon heeft een aantal verplichte velden, die niet allemaal zijn ingevuld\n\r\n\rOntbrekende invoer in de volgende velden:\n\r' + msg);
		
		return false;
	}

	return true;
}



function popup_koppelsrt(koppelsrtID, atoomsrtID, doel, maximum)
{	
	var popup;
	var filename;
	var title
	var params;
	
	var selected = '';
	
	bron = document.forms['frminvoer'].elements['cm_' + koppelsrtID];
	
	for (var i=0; i<bron.length; i++)
	{
		if (i > 0){
			selected += ',';
		}
		selected += bron[i].value;
	}
		
	filename  = 'pop_koppeling.asp?koppelsrtID=' + koppelsrtID + '&atoomsrtID=' + atoomsrtID + '&doel=' + doel + '&maximum=' + maximum;
	
	if (selected.length != null)
	{
		filename += '&selected=' + selected;
	}
	
	title     = 'popup_koppeling';
	params    = 'width=600,height=400,resizable=no,scrollbars=yes';
	
	if (popup && !popup.closed) 
	{
		return;
	}
		
	popup = window.open(filename, title, params);
	
	if (popup.opener == null)
	{
		popup.opener = self;
	}
}


function fn_InitKoppeling(maximum)
{
	var selected;
	var list1;
	var list2;
	var arr_selected;
	
	selected = document.getElementById('selected').value;
	list1 = document.getElementById('list1');
	list2 = document.getElementById('list2');
	
	if (selected){
		arr_selected = selected.split(",");
		
		for (var i=0; i<arr_selected.length; i++)
		{	
			if (selected != null)
			{
				var waarde = arr_selected[i];
			}
			else
			{
				var waarde = arr_selected[i].value;
			}
			
			for (var j=0; j<list1.length; j++)
			{
				if (waarde == list1[j].value)
				{
					var oOption = document.createElement("OPTION");
					list2.options.add(oOption);
					oOption.value = list1[j].value;
					oOption.text = list1[j].text;
					
					//list1.options.remove(j);
					list1.remove(j);
				}
			}
		}
	}
	
	if (maximum)
	{	
		if (list2){
			if (list2.length > maximum)
			{
				alert('Er zijn te veel items geselecteerd, u mag maximaal ' + maximum + ' item(s) selecteren');
			}
		}
	}

}

/*
vul de twee selectboxen
list1: complete lijst met koppelSoorten
list2: lijst met geselecteerde koppelSoorten
*/
function loadkoppeling(koppelSrtID, selected)
{
	var selectbox;
	var item;
	var bron;
	
	bron = window.opener.document.forms['frminvoer'].elements['cm_' + koppelSrtID];
	
	if (!bron){
		fnDisplayError(1);
	}

	
	selectbox = frmKoppeling.list1;
	
	for (var i=0; i<arrSortVeld.length; i++)
	{				
		item = new Option(arrSortVeld[i][2], arrSortVeld[i][1]);
		selectbox.options.add(item);
	}
	
	list1 = frmKoppeling.list1;
	list2 = frmKoppeling.list2;
	
	if (selected != null){
		
		bron = selected.split(",");
	}
	
	//verplaatst de geselecteerde opties uit list1 naar list2
	for (var i=0; i<bron.length; i++)
	{	
		if (selected != null)
		{
			var waarde = bron[i];
		}
		else
		{
			var waarde = bron[i].value;
		}
		
		for (var j=0; j<list1.length; j++)
		{
			if (waarde == list1[j].value)
			{
				var oOption = document.createElement("OPTION");
				list2.options.add(oOption);
				oOption.value = list1[j].value;
				oOption.text = list1[j].text;
				
				//list1.options.remove(j);
				list1.remove(j);
			}
		}
	}

	
	koppeling_updatefields();
}


function invoersubmit(actie, atoomID, atoomSrtID)
{
	switch(actie)
	{
		case "opslaan":
			frminvoer.submit();
			break;
	}
}
	
function fn_submitnew(veldID, maximum)
{
	var bron;
	var doel;
	
	bron = document.getElementById('list2');
	doel = window.opener.document.getElementById('ks_' + veldID);
	hf_doel	= window.opener.document.getElementById(veldID);
	
	if (!bron){
		fnDisplayError(1);
	}

	if (!doel){
		fnDisplayError(1);
	}

	
	if (!bron)
	{
		return false;
	}
	
	if (!doel)
	{
		return false;
	}
	
	if (!hf_doel)
	{
		return false;
	}
	
	if (maximum)
	{
		if (bron.length > maximum)
		{
			alert('Er zijn te veel items geselecteerd, u mag maximaal ' + maximum + ' item(s) selecteren');
			return false;
		}
	}
	
	doel.length = 0;
	hf_doel.value = '';
	
	for (var i=0; i<bron.length; i++)
	{
		var oOption = window.opener.document.createElement('OPTION');
		doel.options.add(oOption);
		oOption.value = bron[i].value;
		oOption.text = bron[i].text;

		if (i != 0)
		{
			hf_doel.value += ','
		}
		
		hf_doel.value += bron[i].value;
	}
	
	//handmatige click om de eventuele attachEvent aan te roepen, de onchange werkt namelijk niet lekker
	hf_doel.click();
	
	window.close();
}

			
function koppelingsubmit(actie, koppelSrtID, doel, maximum)
{	
	switch(actie)
	{
		case 'zoek':
			frmKoppeling.submit();
			break;		
		case 'annuleren':
			window.close();
			break;
			
		case 'opslaan':
			var bron;
			var listbox;
			var hiddenfield;
			
			bron = frmKoppeling.list2;
			listbox = window.opener.document.forms['frminvoer'].elements['cm_' + koppelSrtID];
			hiddenfield = window.opener.document.forms['frminvoer'].elements['hf_' + doel];
			
			if (!listbox){
				fnDisplayError(1);
			}

			if (!hiddenfield){
				fnDisplayError(1);
			}

			listbox.length = 0;
			hiddenfield.value = '';

			if (maximum)
			{
				if (bron.length > maximum)
				{
					alert('Er zijn te veel items geselecteerd, u mag maximaal ' + maximum + ' item(s) selecteren');
					return false;
				}
			}
			
			for (var i=0; i<bron.length; i++)
			{
				var oOption = window.opener.document.createElement('OPTION');
				listbox.options.add(oOption);
				oOption.value = bron[i].value;
				oOption.text = bron[i].text;
				
				if (i != 0)
				{
					hiddenfield.value += ','
				}
				
				hiddenfield.value += bron[i].value;
			}

			//handmatige click om de eventuele attachEvent aan te roepen, de onchange werkt namelijk niet lekker
			hiddenfield.click();
			
			window.close();
						
		default:
	}
}


function fnAddTrefwoord(bron, doel, trefwoord, maximum){
	var oTrw        = document.getElementById('nwtrefwoord');
	var oBron       = document.getElementById('list1');
	var oTargetList = document.getElementById('list2');

	if (oTrw){
		if (oTrw.value != ''){
			var oOption = document.createElement('OPTION');
			oTargetList.options.add(oOption);
			oOption.text = oTrw.value;
			
			oTrw.value = '';
		}
	}

	for (var i=0; i <oBron.length; i++){
		if (oBron[i].selected == true){
			var oOption = document.createElement('OPTION');
			oTargetList.options.add(oOption);
			oOption.text = oBron[i].text + ' (officieel trefwoord)';
			
			//oBron.options.remove(i);
			oBron.remove(i);
			i--;
		}
	}

/*
	for (var i=oBron.length-1; i>=0; i--){
		if (oBron[i].selected == true){
			var oOption = document.createElement('OPTION');
			oTargetList.options.add(oOption);
			oOption.text = oBron[i].text + ' (officieel trefwoord)';
			
			oBron.options.remove(i);
		}
	}
	/*
	for (var i=0; i<oBron.length; i++){
		if (oBron[i].selected == true){
			alert(i + '\n' + oBron[i].text);
			oBron.options.remove(i);
		}
	}
*/
//	oBron.selectedIndex = -1;
}



function additem(bron, doel, maximum)
{
	var item;
	var position = 0;
	var intTeller = 0;
	
	if (maximum)
	{
		if (doel)
		{
			if (doel.length >= maximum)
			{
				alert('Er zijn te veel items geselecteerd, u mag maximaal ' + maximum + ' item(s) selecteren');
				return false;
			}
		}
	}
	
	if ((bron) && (doel))
	{
		for (var i=0; i<bron.length; i++)
		{
			if (bron[i].selected == true)
			{
				intTeller++;
				
				for (var j=0; j<doel.length; j++)
				{
					if (bron[i].value <= doel[j].value)
					{
						position = j;
					}
				}
				
				item = new Option(bron.options[i].text, bron.options[i].value);
				doel.options.add(item, position);
			}
		}

		for (var i=0; i<doel.length; i++)
		{
			for (var j=0; j<bron.length; j++)
			{
				if (doel[i].value == bron[j].value)
				{
					//bron.options.remove(j);
					bron.remove(j);
				}					
			}
		}
	}
		
	koppeling_updatefields();
}


function koppeling_updatefields()
{
	var list1;
	var list2;
	var selected;
	
	list1 = document.forms[0].list1;
	list2 = document.forms[0].list2;
	selected = document.forms[0].selected;
	
	selected.value = '';
	
	if (list2)
	{
		for (var i=0; i<list2.length; i++)
		{
			if (i > 0)
			{
				//is de waarde een string of een integer, geef om een string een 'tje mee
				var pattern = /^\d+$/;
				if (!pattern.exec(list2[i].value))
				{
				
				}	
				else
				{
					selected.value += ',';
				}			
			}
			selected.value += list2[i].value;
		}
	}
}


function fnWeblinkTest(obj)
{
	var oField;
	var filename;
	
	oField = document.getElementById(obj);
	
	filename = oField.value;
	
	if (filename){
		var pattern = /(\w+):\/\/([^/:]+)(:\d*)?([^# ]*)/;
		if (!pattern.exec(filename)){
			alert('de door u ingevoerde hyperlink in niet correct.');
			return false;
		}				
		window.open(filename, 'popup', 'width=600,height=400');
	}
	else{
		alert('U moet eerst een hyperlink invoeren voordat u kunt testen.');
		return false;
	}
	
	return true;
}

function mov(obj)
{
	var cls = obj.className;

	obj.orgClass = cls;

	cls += '_over';

	obj.className = cls;
}

function mou(obj)
{
	var cls = '';

	if(obj.orgClass)
	{
		cls = obj.orgClass;
	}
	obj.className = cls;
}

function hideTableRow(oObj)
{
	if(!oObj) return flase;
	
	var oTR = oObj;
	
	//vervang de plus gif in een min gif of andersom
	var filename = oObj.src.substr(oObj.src.length - 8, 8);
	if (filename == 'plus.gif')
	{
		oObj.src = '../images/icons/icon-min.gif';
	}
	else
	{
		oObj.src = '../images/icons/icon-plus.gif';
	}
	
	while((oTR.tagName != 'TR') && (oTR.tagName != 'BODY'))
	{
		oTR = oTR.parentElement;
	}
	
	if(oTR.tagName == 'BODY') return false;
	
	var oRow = oTR.nextSibling;
	
	while(oRow)
	{
		if(oRow != oTR)
		{
			if(oRow.className == oTR.className)
			{
				oRow = null;
			}
			else
			{
				if(oRow.style.display == 'none')
					oRow.style.display = 'inline';
				else
					oRow.style.display = 'none';
				oRow = oRow.nextSibling;
			}
		}
	}
	
	return true;
}


function fnKoppeling(doel, maximum)
{
	var result = true;
	
	var objCmDoel = window.opener.document.getElementById('ks_' + doel);
	var objHfDoel = window.opener.document.getElementById(doel);

	var objClicked = window.opener.document.getElementById('clicked_' + doel);
	
	if (objClicked)
	{
		objClicked.value = true;
	}
	
	var objBron = document.getElementById('list2');

	if (!objCmDoel)
	{
		fnDisplayError(1);
		result = false;
	}

	if (result == true)
	{
		if (!objHfDoel)
		{
			fnDisplayError(1);
			result = false;
		}
	}
	
	objCmDoel.length	= 0;
	objHfDoel.value		= '';

	if (result == true)
	{
		if (maximum)
		{
			if (objBron.length > maximum)
			{
				window.alert('Er zijn te veel items geselecteerd, u mag maximaal ' + maximum + ' item(s) selecteren');
				result = false;
			}
		}
	}
	
	if (result == true)
	{
		/*
		indien er geen items zijn geselecteerd geef dan de -1 parameter door zodat de koppelingen worden verwijderd
		er wordt op deze manier een input meegegeven
		*/
		if (objBron.length == 0)
		{
				objHfDoel.value += '-1';
		}
		else
		{
			for (var i=0; i<objBron.length; i++)
			{
				var oOption = window.opener.document.createElement('OPTION');
				objCmDoel.options.add(oOption);
				oOption.value = objBron[i].value;
				//oOption.innerText = objBron[i].text;
				oOption.text = objBron[i].text;
				
				if (i != 0)
				{
					objHfDoel.value += ','
				}
				
				objHfDoel.value += objBron[i].value;
			}
		}
		
		//handmatige click om de eventuele attachEvent aan te roepen, de onchange werkt namelijk niet lekker
	
		objHfDoel.click();
		
		window.close();
	}
}


function fnDisplayError(error)
{
	switch(error)
	{
		case 1:
			alert('De pagina die dit venster heeft geopend is niet meer actief,\ndit scherm wordt nu automatisch afgesloten.');
		    window.close();
		break;
	}
}

/*
function verwijder_file(fotoID)
{
	document.verwijderen.fotoID.value = fotoID;
	document.verwijderen.submit();
}
*/
function startupload(progressID)
{
	winstyle = "height=500,width=500,status=no,toolbar=yes,menubar=no,location=no";
	window.open("progress.asp?progressid=" + progressID,null,winstyle);
	document.theForm.action="formresp.asp"; //?progressid=" + progressID;
		
}


/*
 ***************************************************************************************************
 * function initProces()
 *  
 * Omschrijving:
 *	Initialiseren van procesactiviteit
 *	1. de eventueel gevulde array arrProces (bij wijzigen) stuurt de function addProces aan
 *
 *	Wijzigingen
 *		[PH:20041012] Created
 *
 ***************************************************************************************************
 */
function initProces()
{
	if (arrProces)
	{
		for (var i=0; i<arrProces.length; i++)
		{
			addRow(arrProces[i][3], i);
		}
	}
}

/*
 ***************************************************************************************************
 * function addRow(type, arrRowID)
 *  
 * Omschrijving:
 *		Toevoegen van een row aan de tabel 'tblMultiple'
 *	
 * Parameters:
 *		type:     het type rij wat wordt toegevoegd
 *		arrRowID: de ID van het de rij uit de array waarin de waarden (bij wijzigen) uit gelezen
 *				  worden				
 *
 *	Wijzigingen
 *		[PH:20041012] Created
 *
 ***************************************************************************************************
 */
function addRow(type, arrRowID)
{
	//selecteer de tabel waarin de nieuwe rij komt
	var objTable, objRow, objCell, objInput, objOption;
	var rowID;
	
	rowID = cnt;
	
	objTable = document.getElementById('tblMultiple');
	
	if (objTable)
	{
		switch(type)
		{
			case 'kopregel':
				objRow              = objTable.insertRow(cnt);
				objCell             = document.createElement('td');
				objCell.className   = 'multiple';
				objCell.setAttribute('colspan', '6', 0);
				objInput            = document.createElement('input');
				objInput.name       = 'tf_' + '.[procedurestap].[procesactiviteit].[kopregel].[' + rowID + ']';
				objInput.maxLength  = 100;
				if (arrRowID != null)
				{
					objInput.value  = arrProces[arrRowID][10];
				}
				objCell.appendChild(objInput);
				objRow.appendChild(objCell);

				objCell             = document.createElement('td');
				objCell.className   = 'multiple';
				objInput            = document.createElement('input');
				objInput.name       = 'tf_' + '.[procedurestap].[procesactiviteit].[volgorde].[' + rowID + ']';
				objInput.maxLength  = 3;
				objInput.value      = cnt * 2;
				objCell.appendChild(objInput);

				objInput            = document.createElement('input');
				objInput.name       = 'hf_' + '.[procedurestap].[procesactiviteit].[procestype].[' + rowID + ']';
				objInput.type       = 'hidden';
				objInput.value      = "kopregel";
				objCell.appendChild(objInput);
				objRow.appendChild(objCell);
/*								
				objCell             = document.createElement('td');
				objCell.className   = 'multiple';
				objInput            = document.createElement('img');
				objInput.src        = '../images/icons/icon-question.gif';
				objInput.title      = 'Kop regel';
				objCell.appendChild(objInput);
				objRow.appendChild(objCell);
*/
				objCell             = document.createElement('td');
				objCell.className   = 'multiple';
				objInput            = document.createElement('a');
				objInput.innerText  = 'x';
				objInput.href       = 'javascript:delRow(' + cnt + ');';
				objCell.appendChild(objInput);
				objRow.appendChild(objCell);
				break;
			
			case 'legeregel':
				objRow              = objTable.insertRow(cnt);
				objCell             = document.createElement('td');
				objCell.className   = 'multiple';
				objCell.setAttribute('colspan', '6', 0);
				objInput            = document.createElement('br');
				objCell.appendChild(objInput);
				objRow.appendChild(objCell);
				
				objCell             = document.createElement('td');
				objCell.className   = 'multiple';
				objInput            = document.createElement('input');
				objInput.name       = 'tf_' + '.[procedurestap].[procesactiviteit].[volgorde].[' + rowID + ']';
				objInput.maxLength  = 3;
				objInput.value      = cnt * 2;
				objCell.appendChild(objInput);
				
				objCell.className   = 'multiple';
				objInput            = document.createElement('input');
				objInput.name       = 'hf_' + '.[procedurestap].[procesactiviteit].[procestype].[' + rowID + ']';
				objInput.type       = 'hidden';
				objInput.value      = "legeregel";
				objCell.appendChild(objInput);
				objRow.appendChild(objCell);
/*
				objCell             = document.createElement('td');
				objCell.className   = 'multiple';
				objInput            = document.createElement('img');
				objInput.src        = '../images/icons/icon-question.gif';
				objInput.title      = 'Lege regel';
				objCell.appendChild(objInput);
				objRow.appendChild(objCell);
*/
				objCell             = document.createElement('td');
				objCell.className   = 'multiple';
				objInput            = document.createElement('a');
				objInput.innerText  = 'x';
				objInput.href       = 'javascript:delRow(' + cnt + ');';
				objCell.appendChild(objInput);
				objRow.appendChild(objCell);
				break;

			case 'processtap':
				objRow              = objTable.insertRow(cnt);
				objCell             = document.createElement('td');
				objCell.className   = 'multiple';
				objInput            = document.createElement('input');
				objInput.name       = 'tf_' + '.[procedurestap].[procesactiviteit].[stap].[' + rowID + ']';
				objInput.maxLength  = 4;
				if (arrRowID != null)
				{
					objInput.value  = arrProces[arrRowID][4];
				}
				objCell.appendChild(objInput);
				objRow.appendChild(objCell);

				objCell             = document.createElement('td');
				objCell.className   = 'multiple';
				objInput            = document.createElement('textarea');
				objInput.name       = 'ta_' + '.[procedurestap].[procesactiviteit].[activiteit].[' + rowID + ']';
				if (arrRowID != null)
				{
					objInput.value  = arrProces[arrRowID][5];
				}
				objCell.appendChild(objInput);
				objRow.appendChild(objCell);

				objCell             = document.createElement('td');
				objCell.className   = 'multiple';
				objInput            = document.createElement('select');
				objInput.id         = 'ks_[procedurestap].[procesactiviteit].[verantwoordelijke].[' + rowID + ']';		
				if (arrRowID != null)
				{
					objOption       = document.createElement('option');
					objInput.options.add(objOption);
					objOption.text  = arrProces[arrRowID][7];
					objInput.selectedIndex = -1;
				}
				objInput.size       = 3;
				objCell.appendChild(objInput);

				objInput            = document.createElement('input');
				objInput.id         = '[procedurestap].[procesactiviteit].[verantwoordelijke].[' + rowID + ']'
				objInput.name       = 'hf_' + '.[procedurestap].[procesactiviteit].[verantwoordelijke].[' + rowID + ']';
				objInput.type       = 'hidden';
				if (arrRowID != null)
				{
					objInput.value  = arrProces[arrRowID][6];
				}				
				objCell.appendChild(objInput);
					
				objInput            = document.createElement('a');
				objInput.innerText  = 'bewerken';
				objInput.href       = 'javascript:popup(\'pop_koppeling_new.asp\', null, \'?caseID=43&veldID=[procedurestap].[procesactiviteit].[verantwoordelijke].[' + rowID + ']&maximum=1\', \'selected=[procedurestap].[procesactiviteit].[verantwoordelijke].[' + rowID + ']\');'
				objCell.appendChild(objInput);
				objRow.appendChild(objCell);

				objCell             = document.createElement('td');
				objCell.className   = 'multiple';
				objInput            = document.createElement('select');
				objInput.id         = 'ks_[procedurestap].[multiplekoppelsrt].[45].[' + rowID + ']';
				if (arrRowID != null)
				{
					for (j=0; j<arrProces[arrRowID][9].length; j++)
					{
						objOption = document.createElement('option');
						objInput.options.add(objOption);
						objOption.text = arrProces[arrRowID][9][j];
					}
					objInput.selectedIndex = -1;
				}												
				objInput.size       = 3;
				objCell.appendChild(objInput);

				objInput            = document.createElement('input');
				objInput.id         = '[procedurestap].[multiplekoppelsrt].[45].[' + rowID + ']'
				objInput.name       = 'hf_' + '.[procedurestap].[multiplekoppelsrt].[45].[' + rowID + ']';
				objInput.type       = 'hidden';
				if (arrRowID != null)
				{
					objInput.value  = arrProces[arrRowID][8];
				}				
				objCell.appendChild(objInput);
					
				objInput            = document.createElement('a');
				objInput.innerText  = 'bewerken';
				objInput.href       = 'javascript:popup(\'koppeling.asp\', null, \'?atoomsrtid=2,3,6,24&doel=[procedurestap].[multiplekoppelsrt].[45].[' + rowID + ']&veldID=[procedurestap].[multiplekoppelsrt].[45]\', \'selected=[procedurestap].[multiplekoppelsrt].[45].[' + rowID + ']\', \'multiple=[procedurestap].[multiplekoppelsrt].[45].[' + rowID + ']\');'
				objCell.appendChild(objInput);
				objRow.appendChild(objCell);

				objCell             = document.createElement('td');
				objCell.className   = 'multiple';
				objInput            = document.createElement('select');
				objInput.id         = 'ks_[procedurestap].[procesactiviteit].[formulier].[' + rowID + ']';		
				if (arrRowID != null)
				{
					objOption       = document.createElement('option');
					objInput.options.add(objOption);
					objOption.text  = arrProces[arrRowID][14];
					objInput.selectedIndex = -1;
				}
				objInput.size       = 3;
				objCell.appendChild(objInput);

				objInput            = document.createElement('input');
				objInput.id         = '[procedurestap].[procesactiviteit].[formulier].[' + rowID + ']'
				objInput.name       = 'hf_' + '.[procedurestap].[procesactiviteit].[formulier].[' + rowID + ']';
				objInput.type       = 'hidden';
				if (arrRowID != null)
				{
					objInput.value  = arrProces[arrRowID][13];
				}				
				objCell.appendChild(objInput);
					
				objInput            = document.createElement('a');
				objInput.innerText  = 'bewerken';
				objInput.href       = 'javascript:popup(\'pop_koppeling_new.asp\', null, \'?caseID=33&veldID=[procedurestap].[procesactiviteit].[formulier].[' + rowID + ']\', \'selected=[procedurestap].[procesactiviteit].[formulier].[' + rowID + ']\');'
				objCell.appendChild(objInput);
				objRow.appendChild(objCell);
				
				objCell             = document.createElement('td');
				objCell.className   = 'multiple';
				objInput            = document.createElement('input');
				objInput.name       = 'tf_' + '.[procedurestap].[procesactiviteit].[anker].[' + rowID + ']';
				objInput.maxLength  = 4;
				if (arrRowID != null)
				{
					objInput.value  = arrProces[arrRowID][12];
				}
				objCell.appendChild(objInput);
				objRow.appendChild(objCell);
				
				objCell             = document.createElement('td');
				objCell.className   = 'multiple';
				objInput            = document.createElement('input');
				objInput.name       = 'tf_' + '.[procedurestap].[procesactiviteit].[volgorde].[' + rowID + ']';
				objInput.maxLength  = 3;
				objInput.value      = cnt * 2;
				objCell.appendChild(objInput);
				
				objCell.className   = 'multiple';
				objInput            = document.createElement('input');
				objInput.name       = 'hf_' + '.[procedurestap].[procesactiviteit].[procestype].[' + rowID + ']';
				objInput.type       = 'hidden';
				objInput.value      = "processtap";
				objCell.appendChild(objInput);
				objRow.appendChild(objCell);
/*				
				objCell             = document.createElement('td');
				objCell.className   = 'multiple';
				objInput            = document.createElement('img');
				objInput.src        = '../images/icons/icon-question.gif';
				objInput.title      = 'Proces stap';
				objCell.appendChild(objInput);
				objRow.appendChild(objCell);
*/
				objCell             = document.createElement('td');
				objCell.className   = 'multiple';
				objInput            = document.createElement('a');
				objInput.innerText  = 'x';
				objInput.href       = 'javascript:delRow(' + cnt + ');';
				objCell.appendChild(objInput);
				objRow.appendChild(objCell);
				break;

			case 'werkinstructie':
				objRow              = objTable.insertRow(cnt);
				objCell             = document.createElement('td');
				objCell.className   = 'multiple';
				objInput            = document.createElement('input');
				objInput.name       = 'tf_' + '.[procedurestap].[procesactiviteit].[stap].[' + rowID + ']';
				objInput.maxLength  = 4;
				if (arrRowID != null)
				{
					objInput.value  = arrProces[arrRowID][4];
				}
				objCell.appendChild(objInput);
				objRow.appendChild(objCell);

				objCell             = document.createElement('td');
				objCell.className   = 'multiple';
				objCell.setAttribute('colspan', '5', 0);
				objInput            = document.createElement('textarea');
				objInput.name       = 'ta_' + '.[procedurestap].[procesactiviteit].[werkinstructie].[' + rowID + ']';
				if (arrRowID != null)
				{
					objInput.value  = arrProces[arrRowID][11];
				}
				objCell.appendChild(objInput);
				objRow.appendChild(objCell);
				
				objCell             = document.createElement('td');
				objCell.className   = 'multiple';
				objInput            = document.createElement('input');
				objInput.name       = 'tf_' + '.[procedurestap].[procesactiviteit].[volgorde].[' + rowID + ']';
				objInput.maxLength  = 3;
				objInput.value      = cnt * 2;
				objCell.appendChild(objInput);
				
				objCell.className   = 'multiple';
				objInput            = document.createElement('input');
				objInput.name       = 'hf_' + '.[procedurestap].[procesactiviteit].[procestype].[' + rowID + ']';
				objInput.type       = 'hidden';
				objInput.value      = "werkinstructie";
				objCell.appendChild(objInput);
				objRow.appendChild(objCell);
/*				
				objCell = document.createElement('td');
				objCell.className   = 'multiple';
				objInput            = document.createElement('img');
				objInput.src        = '../images/icons/icon-question.gif';
				objInput.title      = 'Werkinstructie';
				objCell.appendChild(objInput);
				objRow.appendChild(objCell);
*/
				objCell             = document.createElement('td');
				objCell.className   = 'multiple';
				objInput            = document.createElement('a');
				objInput.innerText  = 'x';
				objInput.href       = 'javascript:delRow(' + cnt + ');';
				objCell.appendChild(objInput);
				objRow.appendChild(objCell);
				break;
		}
		cnt++;
	}
}

/*
 ***************************************************************************************************
 * function delRow(rownr)
 *  
 * Omschrijving:
 *		Het verwijderen van een rij
 *		1. de rij wordt verwijderd
 *		2. op de plaats van de oude rij wordt een nieuwe rij ingevoegd om de telling van rijen
 *		   netjes te houden
 *	
 * Parameters:
 *		rownr: het nummer van de rij
 *
 *	Wijzigingen
 *		[PH:20041012] Created
 *
 ***************************************************************************************************
 */
function delRow(rownr)
{
	var objTable, objRow, objCell;
	objTable = document.getElementById('tblMultiple');
	if (objTable)
	{
		objTable.deleteRow(rownr);
		
		/*
		 * voeg een lege regel in op de plaats van de verwijderde regel
		 */
		objRow  = objTable.insertRow(rownr);
		objCell = document.createElement('td');
		objCell.className = 'multiple';
		objRow.appendChild(objCell);
	}
}

function fnDisplay(objectID, elemSelected, arrElementen)
{
	var obj = document.getElementById(objectID);
	if (obj)
	{
		switch(obj.style.display)
		{
			case 'inline':
				obj.style.display = 'none';
				break;
				
			case 'none':
				obj.style.display = 'inline';
				break;
		}
	}
	
	var element = document.getElementById(elemSelected);
	
	if (element)
	{
		if (element.checked == false)
		{
			for (var i=0; i<arrElementen.length; i++)
			{
				obj = document.getElementById(arrElementen[i]);
				
				if (obj)
				{
					if (obj.checked)
					{
						obj.checked = false;
					}
				}	
			}
		}
	}
}


function fnCheckElement(objectID)
{
	var obj = document.getElementById(objectID);
	
	if (obj)
	{
		obj.checked = true; 
	}
}


/*
 * indien de checkbox wordt aangevinkt dan wordt de hidden optie ingevuld met het label
 */
function fnOneToManyAnders(bron, doel, label)
{
	var bronObj = document.getElementById(bron);
	var doelObj = document.getElementById(doel);	
	
	if ((bronObj) && (doelObj))
	{
		if (bronObj.checked == true)
		{
			doelObj.value = label;
		}
		else
		{
			doelObj.value = '';
		}
	}	
}

function showDateControl(url, element)
{
	var obj, datum;
	obj = document.getElementById('ctldate_' + element);
	if (obj)
	{
		obj.style.display = 'inline';
	}
	
	obj = document.getElementById('datum_' + element);
	if (obj)
	{
		if (obj.value != '')
		{
			datum = obj.value;
		}
	}
	
	obj = document.getElementById('iframe_' + element);
	if (obj)
	{
		obj.src = url + '?returnelement=' + element;
		
		if (datum != '')
		{
			obj.src += '&selecteddatum=' + datum;
		}
	}
}


function updatedatetime(element)
{
	var obj, datum, tijd;
	
	datum	= '';
	tijd	= '';
	
	obj = document.getElementById('datum_' + element);
	if (obj)
	{
		if (obj.value != '')
		{
			datum = obj.value;
			
			var arrdatum = datum.split("-");
			var dag = -1;
			var maand = -1;
			var jaar = -1;

			for (var i=0; i<arrdatum.length; i++)
			{
				switch(i)
				{
					case 0:
						dag = vulaan(arrdatum[0], 2);
						break;
						
					case 1:
						maand = vulaan(arrdatum[1], 2);
						break;
						
					case 2:
						jaar = vulaan(arrdatum[2], 4);
						break;
				}				
			}			
			datum = dag + "-" + maand + "-" + jaar;
			
			obj.value = datum;		
		}
	}
	
	
	obj = document.getElementById('tijd_' + element);
	if (obj)
	{
		if (obj.value != '')
		{
			tijd = obj.value;
		}
	}
	
	
	obj = document.getElementById(element);
	if (obj)
	{
		obj.value = datum;
		
		if ((tijd) && (tijd != ''))
		{
			obj.value += ' ' + tijd;
		}
	}
}


function vulaan(waarde, length)
{
	var result = waarde;
	
	for (var i=(length - waarde.length); i>0; i--)
	{
		result = "0" + result;
	}
	
	return result;
}			


function executeSluitCode(actie)
{
	var objActie = document.getElementById('actie');
	objActie.value = actie;
	
	var objHfFileName	= document.getElementById('hf_filename');
	var objHfFileID		= document.getElementById('hf_fileID');
	
	var objHfFileNamePost	= document.getElementById('hf_filename_inPost');
	var objHfFileIDPost 	= document.getElementById('hf_fileid_inPost');
	
	objHfFileIDPost.value = objHfFileID.value;
	objHfFileNamePost.value = objHfFileName.value;
	
	var objForm = document.getElementById('afbeeldingForm');
	objForm.Action = 'verwerkObjectstatus.asp';
	objForm.submit();
}


// Functie strDateToDate zet een string datum omzet in een datum variable
function strDateToDate(objDate) {
	var dDate	=new Date();
	var strSeparatorArray = new Array("-"," ","/");
	var intElementNr;
	var sDate, sYear, sMonth, sDay, sHour, sMinute;
	var arrDate, arrTime;
	
	sDate = objDate.value;
	
	for (intElementNr = 0; intElementNr < strSeparatorArray.length; intElementNr++) {
		if (sDate.indexOf(strSeparatorArray[intElementNr]) != -1) {
			
			// datum
			if (strSeparatorArray[intElementNr] == '-') {
				arrDate = sDate.split(strSeparatorArray[intElementNr]);
				if (arrDate.length != 3) {
					return false;
				}
			}
			else
			{
				sDay	= arrDate[0].substring(0,2);
				sMonth	= arrDate[1].substring(0,2);
				sYear	= arrDate[2].substring(0,4);
				
				dDate.setFullYear(sYear,sMonth,sDay);
				return dDate
			}
		}
	}
}


//Functie dateCompare vergelijkt 2 datum variable. De einddatum mag niet kleiner zijn dan de begindatum
function dateCompare(startd, eindd) {
	var beginDay, beginMonth, beginYear;
	var endDay, endMonth, endYear;
	var beginDate, eindDate, sBeginDate, sEindDate, arrBeginDate, arrEindDate;
	var beginDate	= new Date();
	var eindDate	= new Date();

	beginDate = strDateToDate(startd);
	eindDate = strDateToDate(eindd);
	
	if (Date.parse(eindDate) < Date.parse(beginDate)) {
		return false; //De einddatum moet groter zijn dan de begindatum
	}
	else
	{
		// start en einddatum zijn gelijk, dan kijken naar de tijd. De eindtijd mag niet kleiner zijn dan de starttijd.
		if (Date.parse(eindDate) == Date.parse(beginDate)) {
			return timeCompare(startd, eindd);
		}
		else {
			return true;
		}
	}
}



//Functie timeCompare vergelijkt 2 tijd variable. Geeft een false als de eindtijd groter is dan de begintijd
function timeCompare(startt, eindt) {
	var beginDay, beginMonth, beginYear;
	var endDay, endMonth, endYear;
	var beginDate, eindDate, sBeginDate, sEindDate, arrBeginTijd, arrEindTijd;
	var sbHour, sbMinute, seHour, seMinute
	
	beginDate = startt.value;
	eindDate = eindt.value;

	arrBeginTijd = beginDate.split(' ');
	arrEindTijd  = eindDate.split(' ');

	if ((arrBeginTijd.length != 2) || (arrEindTijd.length != 2)) {
		return false;
	}
	else {
	
		sBeginDate = arrBeginTijd[1].split(':');
		sEindDate  = arrEindTijd[1].split(':');
		
		if ((sBeginDate.length != 2) || (sEindDate.length != 2)) {
			return false;
		}
		else {
			sbHour	= sBeginDate[0];
			sbMinute= sBeginDate[1];
			
			seHour	= sEindDate[0];
			seMinute= sEindDate[1];

			if (seHour < sbHour) {
				return false;
			}
			else {
				if (sbHour==sbHour) {
					if (seMinute < sbMinute) {
						return false;
					}
					else {
						return true;
					}
				}
				else {
					return true;
				}
			}
		}
	}
}