function trim(str) {
    return str.replace(/(^[\s\xA0]+|[\s\xA0]+$)/g, '');
}

function checkFieldsCF () {
	var requiredFields = {"firstname":"First name","lastname":"Last name","qtype":"Question type","comment":"Comments"};

	var errorMsg = "Please fill in these required fields:";
	var valFlag = true;
	validRegExp = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/;
	validPhone = /^[1-9]+[0-9]{9}$/;
        strEmail = document.getElementById("email").value ;
        strPhone = document.getElementById("phone").value ;

	for (var fieldName in requiredFields) {
		var field = document.getElementById(fieldName);
		if (trim(field.value) == '') {

			errorMsg += '\n' + requiredFields[fieldName];
			valFlag = false;
		}
	}

        if (strEmail.search(validRegExp) == -1)  {
         errorMsg += '\n' + 'A valid e-mail address is required' ;
         valFlag = false;
         }

         if (strPhone.search(validPhone) == -1) {
           errorMsg += '\n' + 'A valid phone number is required' ;
           valFlag = false;
         }

	if (valFlag == false) {
		alert(errorMsg);
		return false;
	}
        return true;

}

function limitText(limitField, limitCount, limitNum) {
	if (limitField.value.length > limitNum) {
		limitField.value = limitField.value.substring(0, limitNum);
	} else {
		limitCount.value = limitNum - limitField.value.length;
	}
}
