// JavaScript Document

//IsEmpty Check

function IsEmpty(obj, obj_type)
{
	if (obj_type == "text" || obj_type == "password" || obj_type == "textarea" || obj_type == "file")	{
		var objValue;
		
		objValue = obj.value.replace(/\s+$/,"");
		
		if (objValue.length == 0) {
			//obj.focus();
			return true;
		} else {
			return false;
		}
	} else if (obj_type == "select") {
		for (i=0; i < obj.length; i++) {
			if (obj.options[i].selected) {
				if(obj.options[i].value == "0") {
					//obj.focus();
					return true;
				} else {
					return false;
				}
			}
			
		}
		return true;	
	} else if (obj_type == "radio" || obj_type == "checkbox") {
		if (!obj[0] && obj) {
			if (obj.checked) {
				return false;
			} else {
				//obj.focus();
				return true;	
			}
		} else {
			for (i=0; i < obj.length-1; i++) {
				if (obj[i].checked) {
					return false;
				}
			}
			//obj[0].focus();
			return true;
		}
	} else {
		return false;
	}
}

//Validate the numbers

function ValidateNo( NumStr, String )
	{
 		for( var Idx = 0; Idx < NumStr.length; Idx ++ )
 		{
			 var Char = NumStr.charAt( Idx );
			 var Match = false;

				for( var Idx1 = 0; Idx1 < String.length; Idx1 ++)
				{
					 if( Char == String.charAt( Idx1 ) )
					 Match = true;
				}

				if ( !Match )
					return false;
 		}

        	return true;
	}
	
//Validate Email

function ValidateEmail( Email )
{
		var atCharPresent = false;
		var dotPresent = false;

		for ( var Idx = 0; Idx < Email.length; Idx++ )
		{
			if ( Email.charAt ( Idx ) == '@' )
				atCharPresent = true;
			if ( Email.charAt ( Idx ) == '.' )
				dotPresent = true;
		}

		if ( !atCharPresent || !dotPresent )
			return false;

		return true;
}

//Email Check

function emailCheck (emailStr) {
	var emailPat=/^(.+)@(.+)$/
	var specialChars="\\(\\)<>@,;:\\\\\\\"\\.\\[\\]"
	var validChars="\[^\\s" + specialChars + "\]"
	var quotedUser="(\"[^\"]*\")"
	var ipDomainPat=/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/
	var atom=validChars + '+'
	var word="(" + atom + "|" + quotedUser + ")"
	var userPat=new RegExp("^" + word + "(\\." + word + ")*$")
	var domainPat=new RegExp("^" + atom + "(\\." + atom +")*$")
	var matchArray=emailStr.match(emailPat)
	if (matchArray==null) {
		//alert("Email address seems incorrect (check @ and .'s)")
		return false
	}
	var user=matchArray[1]
	var domain=matchArray[2]
	if (user.match(userPat)==null) {
		//alert("The username doesn't seem to be valid.")
		return false
	}
	var IPArray=domain.match(ipDomainPat)
	if (IPArray!=null) {
		  for (var i=1;i<=4;i++) {
			if (IPArray[i]>255) {
				//alert("Destination IP address is invalid!")
			return false
			}
		}
		return true
	}
	
	// Domain is symbolic name
	var domainArray=domain.match(domainPat)
	if (domainArray==null) {
		//alert("The domain name doesn't seem to be valid.")
		return false
	}
	var atomPat=new RegExp(atom,"g")
	var domArr=domain.match(atomPat)
	var len=domArr.length
	if (domArr[domArr.length-1].length<2 || 
		domArr[domArr.length-1].length>3) {
	   // the address must end in a two letter or three letter word.
	   //alert("The address must end in a three-letter domain, or two letter country.")
	   return false
	}
	if (len<2) {
	   var errStr="This address is missing a hostname."
	   alert(errStr)
	   return false
	}
	return true;
}


//Form Validation

function frmchk()
{
	
	
if (IsEmpty(document.frmenq.strname,'text'))
	{
		alert("Please enter a name.");
		document.frmenq.strname.focus();
		return false;
	}
	
	if(!IsEmpty(document.frmenq.strname,'text'))
	{
		var userlen=document.frmenq.strname.value
		if(userlen.length < 4 )
		{alert("Name must contain a minimum of 4 characters.");document.frmenq.strname.focus();return false;}
		if(userlen.length > 25)
		{alert("Name must contain a maximum of 25 characters.");document.frmenq.strname.focus();return false;}
		if(!ValidateNo(document.frmenq.strname.value,"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890-_ "))
		{alert("Special characters are not allowed in name field.");document.frmenq.strname.focus();return false;}
	}
	
	if (IsEmpty(document.frmenq.stremail,'text'))
	{
		alert("Please enter an e-mail ID.");document.frmenq.stremail.focus();return false;
	}
	
	if (!(IsEmpty(document.frmenq.stremail,'text')))
	{	
		//if (!ValidateEmail(document.frmenq.stremail.value))
		if(emailCheck(document.frmenq.stremail.value)==false)
		{
			alert ("Please enter a valid e-mail ID.");document.frmenq.stremail.focus();return false;
		}
	}
	
	if (IsEmpty(document.frmenq.strphone,'text'))
	{
		alert("Please enter a phone number.");document.frmenq.strphone.focus();return false;
	}	
	
	if (!(IsEmpty(document.frmenq.strphone,'text')))
	{
		if(!ValidateNo(document.frmenq.strphone.value,"1234567890-"))
		{alert("Special characters are not allowed.");document.frmenq.strphone.focus();return false;}
		// Added By Suresh Kannan on 09 Oct 06
		 //--for phone number length check
		  var phonelength = document.frmenq.strphone.value;
		  if(phonelength.length  < 8)
			  {
				   alert("Please check phone number");
				   return false;
			  }
		// << Added By Suresh Kannan
	}
		
	if(IsEmpty(document.frmenq.txteqmsg,'textarea'))
	{ 
		alert("Please enter your message");document.frmenq.txteqmsg.focus();return false;
	}
		
	if(!IsEmpty(document.frmenq.txteqmsg,'textarea')){
		
		var msglen=document.frmenq.txteqmsg.value;
		
		if(msglen.length > 1000)
		{
		   alert("Message cannot exceed 1000 characters.");
		   document.frmenq.txteqmsg.focus();
		   return false;
		}
	}
	
	
	return true;
}

//-- added the AJAX CODING FOR THE SEND MAIL ENQUIRY IN THE VIEW PAGE


	
			 
				  
function getHTTPObject() {

	  var xmlhttp;

		try {

		  xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");

		} catch (e) {

		  try {

			xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");

		  } catch (E) {

			xmlhttp = false;

		  }

		}

	  if (!xmlhttp && typeof XMLHttpRequest != 'undefined') {

		try {

		  xmlhttp = new XMLHttpRequest();

		} catch (e) {

		  xmlhttp = false;

		}

	  }

	  return xmlhttp;

	}
function ajaxnrienquirymail(frm)
{
	
		
		
		test = frmchk();
		if(test)
		{
				
		
		//document.getElementById("mailenquiry").innerHTML="&nbsp;&nbsp;<b>Sending mail.. </b>"; 
		//document.getElementById("mailenquiry").style.display="inline";
			

		name = document.frmenq.strname.value;
		
		email = document.frmenq.stremail.value;
		
		phone = document.frmenq.strphone.value;
		
		msg = document.frmenq.txteqmsg.value;
		
		//try{username = document.frmenq.username.value;}catch(e){}
		//try{listingid = document.frmenq.listingid.value;}catch(e){}
		//try{date = document.frmenq.posteddate.value;}catch(e){}
		//try{toemail  = document.frmenq.toemail.value;}catch(e){}
		url = "strname="+name+"&stremail="+email+"&strphone="+phone+"&txteqmsg="+msg;
		var urltoget = "index.php?option=propertyprivilege&page=inncmailenquiry&notemplate=yes&"+url;
		http = new getHTTPObject();
		  if (http)
		  {
			
			http.open("GET", urltoget, true);
			http.send(null);
			http.onreadystatechange = handleNriHttpResponse;
		  }
		
		}
		  return false;
		
}

function handleNriHttpResponse() {

  if (http.readyState == 4) {
	 
	 
	 //document.getElementById("mailenquiry").style.display ="none";
	document.getElementById("nrimailenquiry").innerHTML=http.responseText;
	//document.getElementById("mailenquiry").style.visibility = 'hidden';
	//document.getElementById("mailenquiry").style.display ="none";

	
	 }
}