function Trim(value)
{
	value = value.replace(/^\s+/g, "" );
	value = value.replace( /\s+$/g, "" );
	return value;
}
String.prototype.trim = function() { return this.replace(/^\s+|\s+$/g, ""); };
function validate()
	{
	 var Quesform = document.frm_ques;
	 if((Trim(Quesform.ques_name.value)=="") || (Trim(Quesform.ques_name.value)=="Enter your name"))
	 {
		alert("Please enter your name");
		Quesform.ques_name.focus();
		return false;
	 }
	if ((!isValidName(Quesform.ques_name.value))) 
	{
		alert('Please enter a valid name');
		Quesform.ques_name.focus();
		return false;
	}
	
	 if((Trim(Quesform.ques_email.value)=="") || (Trim(Quesform.ques_email.value)=="Enter your email id"))
	  {
		alert("Please enter your email");
		Quesform.ques_email.focus();
		return false;
	  }
	 var quesemail =Trim(Quesform.ques_email.value);
	if (quesemail == ' ' )
	{
		alert("Email Address should not have whitespaces.");
		frm.mailto.value = "";
		frm.mailto.focus();
		return false;
	}
	var part1=quesemail.substr(0,quesemail.indexOf('@'));
	var part2=quesemail.substr(quesemail.indexOf('@')+1,quesemail.lenth-quesemail.lastIndexOf('@'));
	var part3 =quesemail.substr(quesemail.lastIndexOf('.')+1);
	var email1=new RegExp('[^a-zA-Z0-9.\_]');
	var email2=new RegExp('[^a-zA-Z0-9.]');
	var email3=new RegExp('[^a-zA-Z.]');
    var emailFilter=/^.+@.+\..{2,3}$/;
	  if(part1.length<3)
	  {
		alert('Please enter a valid Email Address');
		Quesform.ques_email.focus();
		return false;
	  }
	  if(email2.test(part2))
	  {
		alert('Please enter a valid Email Address');
		Quesform.ques_email.focus();
		return false;
	  }
	  if(email1.test(part1))
	  {
		alert('Please enter a valid Email Address');
		Quesform.ques_email.focus();
		return false;
	  }
	  if(email3.test(part3))
		{
			 alert('Please enter a valid Email Address');
			 Quesform.ques_email.focus();
			 return false;
		}
	  if (!(emailFilter.test(Quesform.ques_email.value))) 
	  {
		alert('Please enter a valid Email Address');
		Quesform.ques_email.focus();
		return false;
	  }
	if(Quesform.ques_topic.value=="select")
	  {
		alert("Please choose your topic");
		Quesform.ques_topic.focus();
		return false;
	  }
	if(Trim(Quesform.ques_advice.value)=="")
	  {
		alert("Please enter your Question");
		Quesform.ques_advice.focus();
		return false;
	  }
	 if(Quesform.ques_advice.value!="")
	  {
		var length=Quesform.ques_advice.value.length;
		if(length>=200)
		  {
			alert("The maximum charactes allowed is 200");
			Quesform.ques_advice.focus();
			return false;
		  }
		  else
		   	Quesform.submit();
	  }
	}
    function formreset()
	{
		document.frm_ques.reset();
		return false;
	}
	function questions()
	{
	   alert(document.frm_ques.ques_topic.value);
	}
	function Trim(value)
	{
	value = value.replace(/^\s+/g, "");
	value = value.replace(/\s+$/g, "");
	return value;
	}

function Validate_Abusemsg(frm_id)
{
	frm="document.frm_contents"+frm_id;
	frm = eval(frm);
	var abuse_email =Trim(frm.email.value);
	var firstpart=abuse_email.substr(0,abuse_email.indexOf('@'));
	var secondpart=abuse_email.substr(abuse_email.indexOf('@')+1,abuse_email.length-abuse_email.lastIndexOf('@'));
	var thirdpart =abuse_email.substr(abuse_email.lastIndexOf('.')+1);
	var email1=new RegExp('[^a-zA-Z0-9.\_]');
	var email2=new RegExp('[^a-zA-Z0-9.]');
	var email3=new RegExp('[^a-zA-Z.]');
    var emailFilter=/^.+@.+\..{2,3}$/;
	var name1=new RegExp('[0-9]');
	if ((Trim(frm.name.value) == "") || (Trim(frm.name.value) == "Enter your Name"))
	{
		alert ("Enter your Name");
		frm.name.focus();
		return false;
	}
	if ((!isValidName(frm.name.value))) 
	{
		alert('Please enter a valid name');
		frm.name.focus();
		return false;
	}
	if ((Trim(frm.email.value) == "") || (Trim(frm.email.value) == "Enter your Email ID"))
	{
		alert ("Enter your Email Id");
		frm.email.focus();
		return false;
	}
     if(firstpart.length<3)
	{
		alert('Please enter valid email id');
		frm.email.focus();
		return false;
	}
	if((email2.test(secondpart)))
	{
		 alert('Please enter a valid email address');
		 frm.email.focus();
		 return false;
	}
	if((email1.test(firstpart)))
	{
		 alert('Please enter a valid email address');
		 frm.email.focus();
		 return false;
	}
	if(email3.test(thirdpart))
	{
		 alert('Please enter a valid Email Address');
		 frm.email.focus();
		 return false;
	}
	if ((!(emailFilter.test(frm.email.value))))
	{
		 alert('Please enter a valid email address');
		 frm.email.focus();
		 return false;
	}
	if (Trim(frm.reason.value)== "")
	{
		alert ("Please enter reason for abuse");
		frm.reason.focus();
		return false;
	}
	if(!inString(frm.reason.value))
	{
		alert("Please enter valid reason for abuse"); 
		frm.reason.focus(); 
		return false;
	}
	if (frm.reason.value.length >2000)
	{
		alert(" Maximum characters allowed - 2000 ");
		frm.reason.focus();
		frm.reason.select();
		return false;
	}
	querystr = "ques_id="+Trim(frm.ques_id.value)+"&name="+Trim(frm.name.value)+"&email="+Trim(frm.email.value)+"&reason="+Trim(frm.reason.value);
	getResponse ("td_"+frm.ques_id.value, "report_submit.php", querystr);
}

function Validate_Sendmail(frm_id)
{
	var frm = "document.frm_contents"+frm_id;
	frm = eval(frm);
	if((Trim(frm.mailfrom.value) == "") || (Trim(frm.mailfrom.value) == "Enter your Email ID"))
	{
		alert ("Please enter your e-mail address");
		frm.mailfrom.focus();
		return false;
	}
	if (Trim(frm.mailfrom.value) == '' )
	{
		alert("Email Address should not be a whitespace");
		frm.mailfrom.value = "";
		frm.mailfrom.focus();
		return false;
	}
	if (!validateEmail(frm.mailfrom.value))
	{
		alert("From Email ID("+frm.mailfrom.value+") you have entered is incorrect. Please enter a valid Email ID");
		frm.mailfrom.focus();
		return false;
	}
	if((Trim(frm.mailto.value) == "") || (frm.mailto.value == "Enter the Recipients Email ID"))
	{
		alert ("Please enter the e-mail address of your friend");
		frm.mailto.focus();
		return false;
	}
	if (!validateEmail(frm.mailto.value))
	 {			
		alert("To Email ID("+frm.mailto.value+") you have entered is incorrect. Please enter a valid Email ID");
		frm.mailto.focus();
		return false;
	 }
	var temp=0;
	var pattern = /,/; 
	var mailList = new Array();
    mailList = frm.mailto.value.split(pattern);
    for (var i=0; i<mailList.length; i++){
        if (! validateEmail(mailList[i]))
		    temp=1;
	}    
	if (temp==1)
	{
		alert("Invalid Email Id.");
		frm.mailto.focus();
	 	return false;
 	}
	if (Trim(frm.mailto.value) == '' )
	{
		alert("Email Address should not have whitespaces");
		frm.mailto.value = "";
		frm.mailto.focus();
		return false;
	}
	if (Trim(frm.mailcc.value) != "Enter other Recipients Email ID")
	{
		var stEmailID = frm.mailcc.value;
		 if(stEmailID)
		 {
			 stEmailIDRes = stEmailID.split(",");
			 for(var counter = 0; counter < stEmailIDRes.length; counter++)
			 {
				 validEmail = new RegExp ("^[a-z]+[a-z0-9]*[\.|\-|_]?[a-z0-9]+@([a-z]+[a-z0-9]*[\.|\-]?[a-z]+[a-z0-9]*[a-z0-9]+){1,4}\.[a-z]{2,4}$", "g");
				 stEmailIDRes[counter] = Trim(stEmailIDRes[counter]);
				 if (!validateEmail(stEmailIDRes[counter]))
				 {
					 alert("The Email ID("+stEmailIDRes[counter]+") you have entered as (one of) your friend is incorrect. Please enter a valid Email ID");
					 frm.mailcc.focus();
					 return false;
				 }
			 }
		 }
	}
	if (frm.comments.value == "" )
	{
		alert("Please enter your comments");
		frm.comments.focus();
		return false;
	}	
	if (frm.comments.value.length >2000)
	{
		alert(" Maximum characters allowed - 2000 ");
		frm.comments.focus();
		frm.comments.select();
		return false;
	}
    frm.linkto.value = parent.location;
	querystr ="linkto="+window.location+"&ques_id="+Trim(frm.ques_id.value)+"&mailfrom="+Trim(frm.mailfrom.value)+"&mailto="+Trim(frm.mailto.value)+"&mailcc="+Trim(frm.mailcc.value)+"&comments="+Trim(frm.comments.value);
	getResponse("td_"+frm.ques_id.value, "sendmail_submit.php", querystr);
}
function inString(str)
{
	var pattern=/[A-Za-z0-9]/;
	if(str.match(pattern)!=null) { return true; } else { return false; }
}
function checksize(obj)
{  
  obj = eval(obj);
  if (obj)
  {
	  var str = obj.value;
  	  if (str.length >= 2000)
	  {
		obj.value = str.substr(0, 2000);
		return false;
	  }
	  else
	  {
		return true;
	  }
  }
}
function validateEmail(email)
{ 
    var splitted = email.match("^(.+)@(.+)$");
    if(splitted == null) 
	{
		return false;
	}
    if (splitted[1] != null)
    {
      var regexp_user=/^\"?[\w-_\.]*\"?$/;
      if(splitted[1].match(regexp_user) == null)
      {
		return false;
	  }
    }
    if(splitted[2] != null)
    {
      var regexp_domain=/^[\w-\.]*\.[A-Za-z]{2,4}$/;
      if(splitted[2].match(regexp_domain) == null)
      {
		var regexp_ip =/^\[\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\]$/;
		if(splitted[2].match(regexp_ip) == null)
		{
			return false;
		}
      }
      return true;
    } 
	return false;
}
function isValidName(val)
{
	if (val.match(/^[a-zA-Z ]+$/))
	{
		return true;
	}
	else
	{
		return false;
	} 
}