// Form Validation related JavaScript Document
// vereist, 
/*
Functions Index
	w3isEmpty(fieldId,errDiv,errMsg) 		// Check Null values in Text Fields
	w3isSelected(fieldIds,errDiv,errMsg)	// Check a radio button/checbox is selected
	w3isEmail(fieldId,errDiv,errMsg)		// Validate Email Address, if Entered
	w3isAllEmpty(fieldIds,errDiv,errMsg)		// Validate Email Address, if Entered
	w3LTrim(str)							// Remove trailing spaces
	w3RTrim(str)							// Remove leading spaces
	w3Trim(str)								// Remove trailing and leading spaces
*/

var es ="";
var ee =""

// check for empty fieldvalues and set the globalErr value to 0
function w3isEmpty(fieldId,errDiv,errMsg)
{
	// check for empty
	var val1 = w3Trim(jQuery("#"+fieldId).attr("value"))
	if(val1=="")
	{	
		jQuery("#"+fieldId).addClass("errorRequired");
		if (errDiv!="" &&  errMsg!="") jQuery("#"+errDiv).html(es+errMsg+ee);
		globalErr = "0"; // udpate global error variable
	}
	// check for value is not populated from auto fill
	else if (val1 == jQuery("#"+fieldId).attr("name"))
	{
		jQuery("#"+fieldId).addClass("errorRequired");
		if (errDiv!="" &&  errMsg!="") jQuery("#"+errDiv).html(es+errMsg+ee);
		globalErr = "0"; // udpate global error variable	
	}
	else
	{
		jQuery("#"+fieldId).removeClass("errorRequired");
		if (errDiv!="" &&  errMsg!="") jQuery("#errDiv").html("");
	}
}

//Check from the textboxes, any one is filled or not
function w3isAllEmptyOnebyOne(fieldIds,errMsgs,errDiv,idEmail,errEmail)
{
	// count for empty
	var count = 0;var arrindex = 0;
	
	for(i=0;i<fieldIds.length;i++)
	{	
		val = w3Trim(jQuery("#"+fieldIds[i]).attr("value"))
		
		if(val)
		{
			if(fieldIds[i]==idEmail)
			{
				var regEmail = /^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}$/;
				
				if(val=="example@example.com" || !(val).toUpperCase().match(regEmail))
				{
					jQuery("#"+fieldIds[i]).addClass("errorRequired");
					if (errDiv!="" &&  errEmail!="") jQuery("#"+errDiv).html(es+errEmail+ee);
					globalErr = "0"; // udpate global error variable
					break;
				}
				else
				{
					jQuery("#"+fieldIds[i]).removeClass("errorRequired");
					if (errDiv!="" &&  errEmail!="") jQuery("#"+errDiv).text("");
				}	
			}
			else
			{				
				jQuery("#"+fieldIds[i]).removeClass("errorRequired");
				if (errDiv!="" &&  errMsgs.length!=0) jQuery("#"+errDiv).html("");
			}
		}
		else
		{
			jQuery("#"+fieldIds[i]).addClass("errorRequired");
			if (errDiv!="" &&  errMsgs.length!=0) jQuery("#"+errDiv).html(es+errMsgs[i]+ee);
			globalErr = "0"; // udpate global error variable
			break;
		}
		
	}

}

// ======================== Registration form check =======================

function showSuccessMsg(fieldId,msg)
{
	jQuery("#"+fieldId).html(msg);
}

function field_empty_check(fieldId,errDiv,errMsg,$fieldCount)
{
	// check for empty
	var val1 = w3Trim(jQuery("#"+fieldId).attr("value"))
	if(val1=="")
	{	
		jQuery("#"+fieldId).addClass("errorRequired");
		if (errDiv!="" &&  errMsg!="") jQuery("#"+errDiv).html(es+errMsg+ee);
		globalErr = "0"; // udpate global error variable
		$fieldCount++;
	}
	// check for value is not populated from auto fill
	else if (val1 == jQuery("#"+fieldId).attr("name"))
	{
		jQuery("#"+fieldId).addClass("errorRequired");
		if (errDiv!="" &&  errMsg!="") jQuery("#"+errDiv).html(es+errMsg+ee);
		globalErr = "0"; // udpate global error variable	
		$fieldCount++;
	}
	else
	{
		jQuery("#"+fieldId).removeClass("errorRequired");
		if (errDiv!="" &&  errMsg!="") jQuery("#errDiv").html("");
	}
	
	return $fieldCount;
}
function makeFieldRed(fieldId,errDiv,errMsg,$fieldCount)
{
	jQuery("#"+fieldId).addClass("errorRequired");
	if (errDiv!="" &&  errMsg!="") jQuery("#"+errDiv).html(es+errMsg+ee);
	$fieldCount++;
	
	return $fieldCount;
}

function RegistrationFormValidation()
{
	$fieldCount = 0;
	// Check for Empty
	$fieldCount = field_empty_check("customer_ac_no","","",$fieldCount);
	$fieldCount = field_empty_check("customer_comp_name","","",$fieldCount);
	$fieldCount = field_empty_check("customer_contact_person","","",$fieldCount);
	$fieldCount = field_empty_check("customer_username","","",$fieldCount);
	
	
	fieldId = "customer_username";
	
	var val1 = w3Trim(jQuery("#"+fieldId).attr("value"));
	
	var regEmail = /^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}$/;
	
	if(val1!="")
	{	
		if (val1=="example@example.com")
		{
			$fieldCount = makeFieldRed(fieldId,"registrationErrorMessage","Uw email adres is niet ingev uld",$fieldCount);
		}
		
		if(!(val1).toUpperCase().match(regEmail))
		{
			$fieldCount = makeFieldRed(fieldId,"registrationErrorMessage","Uw email adres is niet ingev uld",$fieldCount);
		}
		else
		{
			jQuery.ajax(
			{    
				type: "post", 
				url: siteURL+"_cms/_emails/regEmailCheck.php", 
				data: {emailId: val1},
				success: function(msg)
				{ 		
					if(msg=="false")
					{
						if($fieldCount==0)
						{
								jQuery.ajax(
								{    
									type: "post", 
									url: siteURL+"_cms/_emails/contactSendMail.php", 
									data: jQuery("#registrationForm").serialize(),
									success: function(msg)
									{ 		
										hideform("contactFormLoader");
										showSuccessMsg("registrationErrorMessage","Uw reactie is succesvol verzonden!");
										//showform("contactFormMessage");
										// Clear the Form Values
										registrationFormReset();
						
									 } 
						
								 });// End of Request 
								
								jQuery("#registrationErrorMessage").text('Voer uw gegev ens en een bericht in en kilk op zend.');
						}
						
					}
					else
					{
						$fieldCount = makeFieldRed(fieldId,"registrationErrorMessage","mail id exists",$fieldCount);	
					}
	
				 } 
	
			 });// End of Request 	
		}	
	}	
}

//======================== End of Registration form check =======================

// check for empty radiobuttons to be selected atleast one and set the globalErr value to 0
function w3isSelected(fieldIds,errDiv,errMsg)
{
	// count for empty
	var count = 0;
	
	for(i=0;i<fieldIds.length;i++)
	{
		if( (jQuery("#"+fieldIds[i]).attr("checked"))) count++;
	}
	if (count==0)
	{
		if (errDiv!="" &&  errMsg!="") jQuery("#"+errDiv).html(es+errMsg+ee);
		globalErr = "0"; // udpate global error variable
	}
	else
	{
		if (errDiv!="" &&  errMsg!="") jQuery("#"+errDiv).text("");	
	}

}

// check for valid Email Address and set the globalErr value to 0
function w3isEmail(fieldId,errDiv,errMsg)
{
	var val1 = w3Trim(jQuery("#"+fieldId).attr("value"));
	
	var regEmail = /^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}$/;
	
	if(val1!="")
	{	
		if (val1=="example@example.com")
		{
			jQuery("#"+fieldId).addClass("errorRequired");
			globalErr = "0"; // udpate global error variable
		}
		
		if(!(val1).toUpperCase().match(regEmail))
		{
			jQuery("#"+fieldId).addClass("errorRequired");
			if (errDiv!="" &&  errMsg!="") jQuery("#"+errDiv).html(es+errMsg+ee);
			globalErr = "0"; // udpate global error variable
		}
		else
		{
			jQuery("#"+fieldId).removeClass("errorRequired");
			if (errDiv!="" &&  errMsg!="") jQuery("#"+errDiv).text("");
		}	
	
	}
	
}

// Check from the textboxes, any one is filled or not
function w3isAllEmpty(fieldIds,errDiv,errMsg)
{
	// count for empty
	var count = 0;
	
	for(i=0;i<fieldIds.length;i++)
	{	
		if(w3Trim(jQuery("#"+fieldIds[i]).attr("value"))) count++;
	}
	if (count==0)
	{
		if (errDiv!="" &&  errMsg!="") jQuery("#"+errDiv).html(es+errMsg+ee);
		globalErr = "0"; // udpate global error variable
	}
	else
	{
		if (errDiv!="" &&  errMsg!="") jQuery("#"+errDiv).text("");	
	}
}

// Remove Left blank spaces
function w3LTrim(str)
{
  var whitespace = new String(" \t\n\r");

  var s = new String(str);

  if (whitespace.indexOf(s.charAt(0)) != -1) {
    var j=0, i = s.length;

   while (j < i && whitespace.indexOf(s.charAt(j)) != -1)
    j++;

    s = s.substring(j, i);
  }

  return s;
}

// Remove Right blank spaces
function w3RTrim(str)
{
  var whitespace = new String(" \t\n\r");

  var s = new String(str);

  if (whitespace.indexOf(s.charAt(s.length-1)) != -1) {

    var i = s.length - 1;       

    while (i >= 0 && whitespace.indexOf(s.charAt(i)) != -1)
      i--;

    s = s.substring(0, i+1);
  }

  return s;
}

// Remove Left and Right blank spaces
function w3Trim(str)
{
  return w3RTrim(w3LTrim(str));
}