var validMail = /^[ 	]*\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,})+[ 	]*$/
var query = new String(document.location.search);

function testParam(name) {
	var tst = new RegExp("^.*[&?](" + name + "=)[^\&]*.*$");
	nameTst = query.replace(tst,"ok");
	if (nameTst=="ok") {
		return "ok";
	} else {
		return "";
	}
}

function getParam(name) {
	if (testParam(name) != "ok") {
		return "";
	}
	var reg = new RegExp("^.*[&?]" + name + "=([^\&]*).*$","");
	var reg2 = /%20/g;
	name = query.replace(reg,"$1");
	name = name.replace(reg2," ");
	return name;
}

function isValidEmail(mn) {
	return validMail.test(mn);
}

function requiredStillEmpty(theForm) {
	if (!theForm.elements["required"]) {
		return false;	// no field with the name required
	}

	var fieldString = new String(theForm.elements["required"].value);
	fields = fieldString.split(',');

	for (i=0; i<fields.length; i++) {
		var element = theForm.elements[fields[i]];
	
		var val = new String(theForm.elements[fields[i]].value);
		
		val = val.replace(/^ *([^ ]*) *$/,"$1");
		if (val=="") {
			alert("Een van de verplichte velden is leeg!\n\n(" + theForm.elements[fields[i]].name + ")");
			theForm.elements[fields[i]].focus();
			return true;
		}
	}

	
	if (!isValidEmail(theForm.elements['email'].value)) {
		alert('Ongeldig emailadres');
		theForm.elements['email'].focus();
		return true;
	}

	return false;
}

Event.observe(window, 'load', function() {
	var question = getParam('question');
	if (question != '' && $('bericht').value == '') {
		$('bericht').value = question;
	}
});

/**
* Returns the value of the selected radio button in the radio group, null if
* none are selected, and false if the button group doesn't exist
*
* @param {radio Object} or {radio id} el
* OR
* @param {form Object} or {form id} el
* @param {radio group name} radioGroup
*/
function $RF(el, radioGroup) {
    if($(el).type && $(el).type.toLowerCase() == 'radio') {
        var radioGroup = $(el).name;
        var el = $(el).form;
    } else if ($(el).tagName.toLowerCase() != 'form') {
        return false;
    }

    var checked = $(el).getInputs('radio', radioGroup).find(
        function(re) {return re.checked;}
    );
    return (checked) ? $F(checked) : null;
}

function requiredStillEmptyOrderForm (theForm)
{
	if (requiredStillEmpty (theForm) == true)
	{
		return true;
	}
	
	if ($RF ('contactform', 'bezorging') == null)
	{
		alert ('De bezorgingsmethode is niet gespecificeerd');
		return true;
	}
	
	if ($RF ('contactform', 'betaling') == null)
	{
		alert ('De betaling is niet gespecificeerd');
		return true;
	}

	if ($RF ('contactform', 'kleur') == null)
	{
		alert ('De kleur is niet gespecificeerd');
		return true;
	}	
	
}

