var strAlertMsg = ""; 
var focusField = "";
var selectedRadio = "";

function submitForm(formid) {

	if (validateForm(formid)) {
		xGetElementById(formid).submit()
	}
}

//Validate Text Box
function isEmpty(objForm, strFieldName, strLabel, strMessage){
	var objFormField = objForm.elements[strFieldName];
	if (!objFormField) { strAlertMsg += "* DEBUG MESSAGE --> " + strFieldName + " does not exist\n"; return false; }
	var strValue = objFormField.value;
	strValue = strValue.split(" ").join("")
	if(strValue.length < 1){
		strAlertMsg += "* " + strLabel + " --> " + strMessage + "\n";
		if(!focusField) focusField = "" + strFieldName;
		return false;
	}
	return true;
}

//Validate phone number
function isPhone(objForm, strFieldName, strLabel, strMessage)     {
	var objFormField = objForm.elements[strFieldName];
	var strValue = objFormField.value;
	// remove all letters from the value + update the form field value
	var objRegExp  = /[a-zA-Z]+/g;
	var strNewValue = strValue.replace(objRegExp, "");
	objFormField.value = strNewValue
	// remove all non-digits and test if the result has 10 digits
	var objRegExp  = /[\D]+/g;
	var strNewValue = strNewValue.replace(objRegExp, "");
	var objRegExp  = /^[0-9]{10}$/;
	if(!objRegExp.test(strNewValue)){
		strAlertMsg += "* "+ strLabel +" --> " + strMessage + "\n";
		if(!focusField) focusField= "" + strFieldName + "";

		return false;
	}
	return true;
}

function isEmail(objForm, strFieldName, strLabel, strMessage)     {
	var objFormField = objForm.elements[strFieldName];
	var strValue = objFormField.value;

	var objRegExp  = /^.+\@(\[?)[a-zA-Z0-9\-\.]+\.([a-zA-Z]{2,6}|[0-9]{1,3})(\]?)$/;
	if(!objRegExp.test(strValue)){
		strAlertMsg += "* "+ strLabel +" --> " + strMessage + "\n";
		if(!focusField) focusField= "" + strFieldName + "";
		return false;
	}
	return true;
}

function ValidateRegex(objForm, objRegExp, strFieldName, strLabel, strMessage)     {
	var objFormField = objForm.elements[strFieldName];
	var strValue = objFormField.value;
	if(!objRegExp.test(strValue)){
		strAlertMsg += "* "+ strLabel +" --> " + strMessage + "\n";
		if(!focusField) focusField= "" + strFieldName + "";
		return false;
	}
	return true;
}

function ValidateMinValue(objForm, intMinVal, strFieldName, strLabel, strMessage) { //ValidateMinValue(x, 35, 'aantalkaarten', 'Aantal:', 'het minimum aantal kaarten is 35');
	var objFormField = objForm.elements[strFieldName];
	var strValue = objFormField.value;
	var aantal = Math.abs(Math.round(ConvStrToNumber(strValue)));
	if(aantal < intMinVal){
		strAlertMsg += "* "+ strLabel +" --> " + strMessage + "\n";
		if(!focusField) focusField= "" + strFieldName + "";
		return false;
	}
	return true;
}

//Validate Radio Button
function checkRadioControl(objForm, strFieldName, strLabel, strMessage){
	var objFormField = objForm.elements[strFieldName];
	if (objFormField) {
		intControlLength = objFormField.length;
		bolSelected = false;
		for (i=0; i < intControlLength;i++){
			if(objFormField[i].checked){
				bolSelected = true;
				selectedRadio = objFormField[i].value;
				break;
			}
		}     
		if(! bolSelected){
			strAlertMsg += "* " + strLabel + " --> " + strMessage + "\n";
			return false;
		}
	}
	return true;
}

function checkCheckbox(objForm, strFieldName, strLabel, strMessage){
	var objFormField = objForm.elements[strFieldName];
	if (objFormField) {
		intControlLength = objFormField.length;
		bolSelected = false;
		for (i=0; i < intControlLength;i++){
			if(objFormField[i].checked){
				bolSelected = true;
				selectedRadio = objFormField[i].value;
				break;
			}
		}     
		if(! bolSelected){
			strAlertMsg += "* " + strLabel + " --> " + strMessage + "\n";
			return false;
		}
	}
	return true;
}
