
function Validation() {

	var fname =  document.subscribeform.fname.value;
	var lname =  document.subscribeform.lname.value;
	var email =  document.subscribeform.email.value;
	if(fname=='First Name') {
		alert("Enter valid first name");
		document.subscribeform.fname.value="";
		document.subscribeform.fname.focus();
		return false;
	}
	if(fname=='First Email') {
		email="";
	}
	if(!checkAlphaChar(fname)) {
		alert("Enter valid first name");
		document.subscribeform.fname.focus();
		return false;
	}

	if(lname=='Last Name') {
		alert("Enter valid last name");
		document.subscribeform.lname.value="";
		document.subscribeform.lname.focus();
		return false;
	}
	if(lname=='Last Email') {
		email="";
	}
	if(!checkAlphaChar(lname)) {
		alert("Enter valid last name");
		document.subscribeform.lname.focus();
		return false;
	}
	
	if(!checkemail(email) || !checkBlanks(email)) {
		alert("Enter valid email");
		document.subscribeform.email.focus();
		return false;
	}

	return true;
}


function checkAlphaChar(strval) {
	var retVal = true;
	var strval = strval;
	myRegExp = new RegExp("^[A-Za-z]+://[A-Za-z0-9-_]+\\.[A-Za-z0-9-_%&\?\/.=]+$", "i"); 
	if(myRegExp.test(strval)) {
		retVal = false;
	} else {
		myRegExp = new RegExp("^[A-Za-z0-9-_]+\\.[A-Za-z0-9-_%&\?\/.=]+$", "i"); 
		if(myRegExp.test(strval)) {
			retVal = false;
		}
	}
	/*Here checking the field contains only alpha characters*/
   if (!strval) return false;
   var iChars = "*|,\":<>[]{}.`\;()@&$#%1234567890";

   for (var i = 0; i < strval.length; i++) {
	  if (iChars.indexOf(strval.charAt(i)) != -1)
		 return false;
   }
	/*Checking the value is blank*/
	var len = strval.length ;
	var foundBlank = 1;
	while(foundBlank == 1 && len > 0) 
	{
		var indx = strval.indexOf(" ");
		if(indx == -1) 
			foundBlank = 0 ;
		else
			strval = strval.substring(0,indx) + strval.substring(indx+1,len);
		len = strval.length;
	}
	retVal = len;
	return retVal;
}


function checkBlanks(entry)
{
	var len = entry.length ;
	var foundBlank = 1;
	while(foundBlank == 1 && len > 0) 
	{
		var indx = entry.indexOf(" ");
		if(indx == -1) 
			foundBlank = 0 ;
		else
			entry = entry.substring(0,indx) + entry.substring(indx+1,len);
		len = entry.length;
	}
	return entry;
}

function checkemail(email){
	var re = /^(("[\w-\s]+")|([\w-]+(?:\.[\w-]+)*)|("[\w-\s]+")([\w-]+(?:\.[\w-]+)*))(@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$)|(@\[?((25[0-5]\.|2[0-4][0-9]\.|1[0-9]{2}\.|[0-9]{1,2}\.))((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\.){2}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\]?$)/i;
	if(trim_text(email) !="") {
		if (!re.test(email))
		{
			return false;
		}
	}	
	return true;
}

/*Delete blanks from the words
  onblur="trim_text(this.value,'fieldname','formname');"*/
function trim_text(str) {
	str = str.replace(/^\s+|\s+$/g, '');
	return str;
}

function clearText(thefield) {
  if (thefield.defaultValue==thefield.value) { thefield.value = "" }
} 
function replaceText(thefield) {
  if (thefield.value=="") { thefield.value = thefield.defaultValue }
}

function trim_input_text(str,controlname,frm)
{
	str = str.replace(/^\s+|\s+$/g,'').replace(/\s+/g,' ');
	cname = eval("document.forms[frm]."+controlname);
	cname.value=str; 
}
function onlyNum(str)
{
	var regexLetter = /^[0-9]+$/;
	str = regexLetter.test(str);
	if(!str)
	{ return false; }
	else
	{ return true; }
}
function checkurl(urlval) {
	var urlval = urlval;
	myRegExp = new RegExp("^(http)+://[A-Za-z0-9-_]+\\.[A-Za-z0-9-_%&\?\/=]+\.(com|org|net|mil|edu|ca|co.uk|com.au|gov)$", "i"); 
	if(myRegExp.test(urlval)) {
		return false;
	} else {
		myRegExp = new RegExp("^(http:)+\\.[A-Za-z0-9-_%&\?\/=]+\.(com|org|net|mil|edu|ca|co.uk|com.au|gov)$", "i"); 
		if(myRegExp.test(urlval)) {
			return false;
		}
	}
	return true;
}

function numbersonly(e, decimal) {
	var key;
	var keychar;
  
	 if (window.event) {
		key = window.event.keyCode;
	  }
	  else if (e) {
		 key = e.which;
	  }
	  else {
		 return true;
	  }
	  
	  keychar = String.fromCharCode(key);
  
	  if ((key==null) || (key==0) || (key==8) ||  (key==9) || (key==13) || (key==27) ) {
		 return true;
	  }
	  else if ((("0123456789").indexOf(keychar) > -1)) {
		 return true;
	  }
	  else if (decimal && (keychar == ".")) { 
		return true;
	  }
	  else
		 return false;
}

function checkSpecialChars(string) {

   if (!string) return false;
   var iChars = "*|\":<>[]{}`\;()@&$#%";

   for (var i = 0; i < string.length; i++) {
	  if (iChars.indexOf(string.charAt(i)) != -1)
		 return false;
   }
   return true;
} 


/*function checkurl(str)
{
	//var regexLetter = /^(http:\/\/([\-\w]+\.)+\w{2,3}(\/[%\-\w]+(\.\w{2,})?)*(([\w\-\.\?\\/+@&#;`~=%!]*)(\.\w{2,})?)*\/?)/i;
	var regexLetter = ^(http:\/\/)?(www\.)?[a-zA-Z0-9-\.]+\.(com|org|net|mil|edu|ca|co.uk|com.au|gov)$
	str = regexLetter.test(str);
	if(!str)
	{ return false; }
	else
	{ return true; }
	
}*/

function frm_validation()
{
	var frm = document.frm;
	if(frm.name.value==''){
		alert("Please provide name.");
		frm.name.focus();
		return false;
	}
	if(!checkemail(frm.email.value) || !checkBlanks(frm.email.value)) {
		alert("Please provide valid email");
		frm.email.focus();
		return false;
	}
	if(frm.address.value==''){
		alert("Please provide address.");
		frm.address.focus();
		return false;
	}
	if(!checkurl(frm.url.value)==''){
		alert("Please provide valid site url in the format http://www.sitename.com.");
		frm.url.focus();
		return false;
	}
	if(frm.phone.value=='' || frm.phone.value.length<10){
		alert("Please provide valid phone number.");
		frm.phone.focus();
		return false;
	}
	if(!onlyNum(frm.phone.value))
	{
		alert("Please provide valid phone number.");
		frm.phone.focus();
		return false;
	}
	
}

function contactus_validation()
{
	var frm = document.frm;
	if(frm.name.value==''){
		alert("Please provide valid name.");
		frm.name.focus();
		return false;
	}
	if(!checkAlphaChar(frm.name.value))
	{
		alert("Please provide valid name.");
		frm.name.focus();
		return false;
	}
	if(!checkemail(frm.email.value) || !checkBlanks(frm.email.value)) {
		alert("Please provide valid email");
		frm.email.focus();
		return false;
	}
	if(frm.phone.value=='' || frm.phone.value.length<10){
		alert("Please provide valid phone number.");
		frm.phone.focus();
		return false;
	}
	if(!onlyNum(frm.phone.value))
	{
		alert("Please provide valid phone number.");
		frm.phone.focus();
		return false;
	}
}



/*Validation for Prices form*/

function price_validation() {

	var fname =  document.priceform.fname.value;
	var lname =  document.priceform.lname.value;
	var companyname =  document.priceform.companyname.value;
	var companyurl =  document.priceform.companyurl.value;
	var phone =  document.priceform.phone.value;
	var email =  document.priceform.email.value;
	var projecttype =  document.priceform.projecttype.value;
	
	if(!checkAlphaChar(fname)) {
		alert('Please provide valid first name');
		document.priceform.fname.focus();
		return false;
	}
	if(!checkAlphaChar(lname)) {
		alert('Please provide valid last name');
		document.priceform.lname.focus();
		return false;
	}
	if(!checkBlanks(companyname) || !checkurl(companyname) || !checkSpecialChars(companyname)) {
		alert('Please provide valid company name');
		document.priceform.companyname.focus();
		return false;
	}
	if(checkBlanks(companyurl) && checkurl(companyurl)) {
		alert('Please provide valid company url');
		document.priceform.companyurl.focus();
		return false;
	}
	if(!checkBlanks(phone) || phone.length<10) {
		alert("Please provide valid phone");
		document.priceform.phone.focus();
		return false;	
	}
	if(!checkemail(email) || !checkBlanks(email)) {
		alert("Please provide valid email");
		document.priceform.email.focus();
		return false;
	}
	if(document.priceform.projecttype.value=="") {
		alert("Please select type of project");
		document.priceform.projecttype.focus();
		return false;
	}
	if(document.priceform.verification_code.value=='' || document.priceform.verification_code.value.length<6)
	{
		alert("Please provide verification code.");
		document.priceform.verification_code.focus();
		return false;
	}
}