var demo_mode = false;
var error1 = "<font color=red>Please enter company name</font>";
var error2 = "<font color=red>Please enter valid company name</font>";
var error3 = "<font color=red>Please enter name.</font>";
var error4 = "<font color=red>Please enter valid name.</font>";
var error5 = "<font color=red>Please enter phone number.</font>";
var error6 = "<font color=red>Please enter valid phone number.</font>";
var error7 = "<font color=red>Please enter email.</font>";
var error8 = "<font color=red>Please enter valid email.</font>";
var error9 = "<font color=red>Please select budget.</font>";
var error10 = "<font color=red>Please select possession.</font>";
var error11 = "<font color=red>Please select projects.</font>";
var error12 = "<font color=red>Please select valid country.</font>";
var error13 = "<font color=red>Please select city.</font>";
var error14 = "<font color=red>Please specify other city.</font>";
var error15 = "<font color=red>Please select valid city.</font>";

function checkFieldTask (aFieldName,notCheck)
{
	var alphaExp = /^[a-zA-Z .\,\-\'\ ]+$/;
	var numericExpression = /^[+]?[0-9\-]+$/;
	var emailExp = /^[._a-zA-Z0-9-]+(\.[._a-zA-Z0-9-]+)*@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*(\.[a-zA-Z]{2,3})$/;
	var bool = true; 
	switch (aFieldName)
	{
		case "COMPANY":
			if ($.trim($("#"+aFieldName).val())=="")
			{
				failField(aFieldName,error1);
				bool = false;
			}
			else if((!alphaExp.test($("#"+aFieldName).val())))
			{
				failField(aFieldName,error2);
				bool = false;
			}
			else if($("#"+aFieldName).val().length < 3)
			{
				failField(aFieldName,error2);
				bool = false;
			}
			else
			{
				passField(aFieldName);
			}
		break;
		case "NAME": case "NAME1": 
			if ($.trim($("#"+aFieldName).val())=="")
			{
				failField(aFieldName,error3);
				bool = false;
			}
			else if((!alphaExp.test($("#"+aFieldName).val())))
			{
				failField(aFieldName,error4);
				bool = false;
			}
			else if ($("#"+aFieldName).val().length < 3)
			{
				failField(aFieldName,error4);
				bool = false;
			}
			else
			{
				passField(aFieldName);
			}
		break;
		case "NAME2": case "NAME3": case "NAME4": case "NAME5":
			resp_email = aFieldName.replace('NAME','EMAIL');
		if($("#"+aFieldName).val()!="" || $("#"+resp_email).val() != "")
		{
			if ($.trim($("#"+aFieldName).val())=="")
			{
				failField(aFieldName,error3);
				bool = false;
			}
			else if((!alphaExp.test($("#"+aFieldName).val())))
			{
				failField(aFieldName,error4);
				bool = false;
			}
			else if ($("#"+aFieldName).val().length < 3)
			{
				failField(aFieldName,error4);
				bool = false;
			}
			else
			{
				passField(aFieldName);
			}
		}
		else
			passField(aFieldName);

		break;
		case "NUMBER": case "NUMBER1": case "NUMBER2": case "NUMBER3": case "NUMBER4": case "NUMBER5":
			if(!notCheck)
			{
				if ($.trim($("#"+aFieldName).val())=="")
				{
					failField(aFieldName,error5);
					bool = false;
				}
				else if((!numericExpression.test($("#"+aFieldName).val())))
				{
					failField(aFieldName,error6);
					bool = false;
				}
				else if ($("#"+aFieldName).val().length < 6 || $("#"+aFieldName).val().length > 20 )
				{
					failField(aFieldName,error6);
					bool = false;
				}
				else
				{
					passField(aFieldName);
				}
			}
			else
			{
				if ($("#"+aFieldName).val()!="")
				{
					if((!numericExpression.test($("#"+aFieldName).val())))
					{
						failField(aFieldName,error6);
						bool = false;
					}
					else if (($("#"+aFieldName).val().length < 6 && $("#"+aFieldName).val().length >= 0) ||$("#"+aFieldName).val().length > 20)
					{
						failField(aFieldName,error6);
						bool = false;
					}
					else
					{
						passField(aFieldName);
					}
				}
				else
				{
					passField(aFieldName);
				}
			}
		break;
		case "EMAIL": case "EMAIL1": 
			if ($.trim($("#"+aFieldName).val())=="")
			{
				failField(aFieldName,error7);
				bool = false;
			}
			else if(!emailExp.test($("#"+aFieldName).val()))
			{
				failField(aFieldName,error8);
				bool = false;
			}
			else
			{
				passField(aFieldName);
			}
		break;
		case "EMAIL2": case "EMAIL3": case "EMAIL4": case "EMAIL5":
			var resp_name = aFieldName.replace('EMAIL','NAME');
		if($("#"+aFieldName).val()!="" || $("#"+resp_name).val() != "")
		{
			if ($.trim($("#"+aFieldName).val())=="")
			{
				failField(aFieldName,error7);
				bool = false;
			}
			else if(!emailExp.test($("#"+aFieldName).val()))
			{
				failField(aFieldName,error8);
				bool = false;
			}
			else
			{
				passField(aFieldName);
			}
		}
		else
			passField(aFieldName);

		break;
		case "budget":
			if ($("#"+aFieldName).val()=="0")
			{
				failField(aFieldName,error9);
				bool = false;
			}
			else
			{
				passField(aFieldName);
			}
		break;
		case "possession":
			if ($("#"+aFieldName).val()=="0")
			{
				failField(aFieldName,error10);
				bool = false;
			}
			else
			{
				passField(aFieldName);
			}
		break;
                case "country":case "country1":
                if($("#"+aFieldName).val()=='----------')
                {
                         failField(aFieldName,error12);
                        bool = false;
                }
                else
                {
                        passField(aFieldName);
		}
		break;
		case 'CITY':
		if ($("#"+aFieldName).val()=="0")
		{
			failField(aFieldName,error13);
			bool = false;
		}
		else if($("#"+aFieldName).val()=='----------')
		{
			failField(aFieldName,error15);
			bool = false;
		}

		else
		{
			passField(aFieldName);
			passField('OTHER_CITY');
		}

		break;
		case 'OTHER_CITY':
		if($("#"+aFieldName).val()!="" && $("#CITY").val() != 'other')
		 {
			 failField(aFieldName,error14);
			 bool = false;

		 }

		 else if($("#"+aFieldName).val()=="" && $("#CITY").val() == 'other')
		 {
			 failField(aFieldName,error14);
			 bool = false;

		 }
		 else
		 {
			 passField('CITY');
			 passField(aFieldName);

		 }

	}
	return bool;
}
function checkFieldById(aFieldId)
{
	var bool = true;
	switch(aFieldId)
	{
		case 'interested_in':
			if ($("#"+aFieldId).val()==null)
			{
				failField(aFieldId,error11);
				bool = false;
			}
			else
			{
				passField(aFieldId);
			}
			break;
	}
	return bool;
}
function checkField (aField,notCheck) {
	return checkFieldTask(aField.name,notCheck);
}
function checkForm (aForm,notCheck) {
	var bool = true;
	for (var i=0; i < aForm.elements.length; i++) {
		if (!checkFieldTask(aForm.elements[i].name,notCheck) || !checkFieldById(aForm.elements[i].id)) {
			bool = false;
		}
	}
	return bool;
}
function passField (aFieldName) {
	$("#form_alert_"+aFieldName+"_msg").remove();
}
function failField (aFieldName,msg) {
	$("#form_alert_"+aFieldName+"_msg").remove(); // in case there are any from last time
	$("#"+aFieldName).after(alertMsgHTML(aFieldName,msg));
}
function alertMsgHTML (aFieldName, msg) {
	return '<div id="form_alert_'+aFieldName+'_msg" >'+msg+'</div>';
}

