//---------------------------------------------------	
function add_reg(parent, child, title) {
//---------------------------------------------------		
	var count = parseInt(document.getElementById('total').value);
	var o = document.getElementById(child+ '_1');
	count++;
	var d = o.cloneNode(true);
	d.id = child + '_' + count;
	var content = d.innerHTML.replace(/_1/gi, '_' + count);
	content = content.replace(/ 1/gi, ' ' + count);
	d.innerHTML = content;
	
	//Remove values after cloning
	a = d.getElementsByTagName('input');
	for(i=0; i<a.length; i++) {
		a[i].value = '';
	}
	
	document.getElementById(parent).appendChild(d);
	
	//copy total fieldsets to hidden field
	document.getElementById('total').value = count; 
}
//---------------------------------------------------	
function openwindow(str) {
//---------------------------------------------------		
	window.open(str,'Beroepen','scrollbars=no,resizable=yes,width=480,height=480,status=no,location=no,toolbar=no');
}
//---------------------------------------------------	
function copyValue() {
//---------------------------------------------------	
	var s = location.search.substring(1);

	if(s.indexOf('&') != -1) {
		s = location.search.substring(location.search.lastIndexOf('&')+1);		
	}
	var a = s.split('=');
	var o = document.getElementById(a[0]);

	if(o.selectedIndex != -1) {
		window.opener.document.getElementById(a[1]).value = o.options[o.selectedIndex].text;
		self.close();
	}
	else {
		alert('U moet een ' + a[0] +' selecteren!');
	}
}
//---------------------------------------------------
function checkForm(form) {
//---------------------------------------------------	
	var error_msg = '';
	var items = form.elements;
	for(var i=0; i<items.length; i++) {
		if(items[i].className.indexOf('R|') > -1) {
			//alert(items[i].id);
			switch(items[i].type) {
			
			case 'text':
				if(items[i].value.length == 0) {
					label = items[i].previousSibling;
					error_msg += label.innerHTML + ' is verplicht.\n';	
				}
				else {
					if(items[i].className.indexOf('|numeric') > -1) {
						RE = /^\d+$/;
						if(!RE.test(items[i].value)) {
							label = items[i].previousSibling;
							error_msg += label.innerHTML + ' moet een getal zijn.\n';
						}
					}
					if(items[i].className.indexOf('|Email') > -1) { //not used at this moment
						RE = /^.+@[^\.].*\.[a-z]{2,}$/i;
						if(!RE.test(items[i].value)) {
							label = items[i].previousSibling;
							error_msg += label.innerHTML + ' is geen geldig e-mailadres.\n';	
						}
					}
					
					if(items[i].className.indexOf('|zipcode') > -1) {
						RE = /^([1-9][0-9]{3})\s?([a-z]{2})$/gi
						if(!RE.test(items[i].value)) {
							label = items[i].previousSibling;
							error_msg += label.innerHTML + ' is geen geldige postcode.\n';
						}
						else {
							items[i].value = RegExp.$1 + ' '  + RegExp.$2.toUpperCase();
						}
					}
					if(items[i].className.indexOf('|date') > -1) {
						RE = /^\d{1,2}-\d{1,2}-\d{4}$/;
						if(!RE.test(items[i].value)) {
							label = items[i].previousSibling;
							error_msg += label.innerHTML + ' is geen geldige datum.\n';
						}
					}
					if(items[i].className.indexOf('|bankaccount') > -1) { //Needs works 01.03.2007
						items[i].value = items[i].value.replace(/[\s+\.+]/g, '');
						RE = /^\d{1, 10}$/;
						if(!RE.test(items[i].value)) {
							label = items[i].previousSibling;
							error_msg += label.innerHTML + ' is geen geldig rekeningnummer.\n';
						}
					}
				}
			break;
			
			case 'select-one' || 'select-multiple': 
				if(parseInt(items[i].value) == 0) {
					label = items[i].previousSibling;
					error_msg += label.innerHTML + ' is verplicht.\n';		
				}
			break;
			
			case 'textarea':
				if((items[i].value == '') || (items[i].value.length == 0)) {
					label = items[i].previousSibling;
					error_msg += label.innerHTML + ' is verplicht.\n';
				}	
			break;
			
			case 'checkbox':
				var boxes = form.elements[items[i].name];
				var checked = false;
				for(var j=0;j<boxes.length;j++) {
					if(boxes[j].checked) {
						checked = true;
						break;
					}			
				}
				if(!checked) {
					first = items[i].name.charAt(0).toUpperCase();
					first += items[i].name.substring(1, items[i].name.length-2)
					error_msg += first + ': er moet minstens één checkbox geselecteerd zijn.\n';
				}

			break;
						
			case 'radio':
				if(!items[i].checked) {
					error_msg += items[i].name + ' is verplicht.\n';
				}
			break;
			
			case 'file' || 'image' || 'button' || 'submit' || 'reset' || 'hidden' || 'password' || 'textarea' :
				if(items[i].value.length == 0) {
					error_msg += 'Geen ondersteuning voor deze veldtypen.\n'
				}	
			break;

			default:
				error_msg += '-----------------------------\nEris iets ernstig mis!';
				return;
			}
		}
	}
	if (error_msg) {
		arr = error_msg.split('\n');
		cArr = new Array();
		tmp_line  = '';
		for(var k=0; k<arr.length-1; k++) {
			if(arr[k] != tmp_line) {
				cArr.push(arr[k]);
			}
			tmp_line = arr[k].toString();
		}
		error_msg = cArr.join('\n');
		alert('De volgende fouten zijn gemaakt:\n'+error_msg.replace(/<em>\*<\/em>/g, ''));
	}	
	return document.returnValue = (error_msg == '');
}