	var DivObject4HTTP;
	var Ajaxhttp;
	var ch;

	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 SendHTTPRequest(url,DivObject){
		Ajaxhttp = new getHTTPObject();
		DivObject4HTTP = new Object();
		DivObject4HTTP = DivObject;
		DivObject4HTTP.innerHTML = "<img src=\"http://imgs.indiaproperty.com/loading.gif\" alt=\"\" class=\"AlignM\" hspace=\"3\" />Loading...";
		try{
			Ajaxhttp.open("GET", url, true);
			Ajaxhttp.send(null);
			Ajaxhttp.onreadystatechange = handleHTTPRequest;
		}catch(e){}
	}
	function handleHTTPRequest(){
		if (Ajaxhttp.readyState == 4) {
			DivObject4HTTP.innerHTML=Ajaxhttp.responseText;
			Ajaxhttp.abort();
		}
	}
	function OpenPopUp(url,left,top,width,height,title){
		if(!left) left=100;
		if(!top) left=100;
		if(!width) width=450;
		if(!height) height=400;
		title = (title=="") ? "LoanWala" : title;
		var scroll=(height>=700)?"yes":"no";
		newWindow = window.open(url,title,'height='+height+',width='+width+',left='+left+',top='+top+',taskbar=no,linkbar=no,scrollbars='+scroll);
		newWindow.focus();
	}
	function OpenPage(url){window.location=url;}
	function Replace(Expression, Find, Replace){
		var temp = Expression;
		var a = 0;
		for (var i = 0; i < Expression.length; i++) {
			a = temp.indexOf(Find);
			if (a == -1) break;
			else temp = temp.substring(0, a) + Replace + temp.substring((a + Find.length));
		}
		return temp;
	}
	var lw = {
		loadingStr : "<img src=\"http://imgs.indiaproperty.com/loading.gif\" alt=\"\" width=\"16\" height=\"16\" class=\"AlignM\" hspace=\"3\" /><b>Loading... Please wait...</b>",
		url:"",
		str:"",
		strLen : 0,
		errId:"",
		IsMandatory : function(obj, obj_type,	Msg,	ErrType,	DivId){
			if (obj_type == "text" || obj_type == "password" || obj_type == "textarea" || obj_type == "file"){
				var objValue;
				objValue = obj.value.replace(/\s+$/,"");
				if (objValue.length == 0){return this.throwErr(obj,Msg,ErrType,DivId);}else{return true;}
			}else if (obj_type == "select"){
				if(obj.selectedIndex==-1 || obj.options[obj.selectedIndex].value=="0" ||
						obj.options[obj.selectedIndex].value=="00" || obj.options[obj.selectedIndex].value=="" ||
							(obj.options[obj.selectedIndex].value=="any" && obj.name=="state") )
							return this.throwErr(obj,Msg,ErrType,DivId);
				else return true;
			}else if (obj_type == "radio" || obj_type == "checkbox"){
				if (!obj[0] && obj){
					if (obj.checked) {return this.throwErr(obj,Msg,ErrType,DivId);}
					else {return true;}
				}else{
					for (i=0; i < obj.length; i++) if(obj[i].checked) return true;
					return this.throwErr(obj[0],Msg,ErrType,DivId);
				}
			}else{return this.throwErr(obj,Msg,ErrType,DivId);}
		},
		OpenPopUp : function(url,left,top,width,height,title,scroll,resize){
			if(!left) left=100;
			if(!top) top=100;
			if(!width) width=450;
			if(!height) height=400;
			scroll=(height>=700 || scroll)?"yes":"no";
			if(!resize) resize="no";
			title = (title=="" || !title) ? "Loanwala" : title;
			try{
				if(newWindow.window.focus()){
					newWindow = null;
				}
			}
			catch(e){}
			newWindow = window.open(url,title,'height='+height+',width='+width+',left='+left+',top='+top+',taskbar=no,linkbar=no,resizable='+resize+',scrollbars='+scroll);
			newWindow.focus();
		},
		emi_calc : function(){
			lw.OpenPopUp("",100,100,450,600);
		},
		OpenPage:function(url){window.location=url;},
		Ask:function(str){return confirm(str) ? true : false;},
		showtcpopup : function(){
			this.url = "http://www.indiaproperty.com/index.php?option=site&page=termsandcondition&notemplate=yes";
			this.OpenPopUp(this.url,0,0,615,600,"Terms & Condition","yes");
		},
		showiconpopup : function(){
			this.url = "http://www.indiaproperty.com/index.php?option=site&page=icondetails&notemplate=yes";
			this.OpenPopUp(this.url,100,100,495,420,"Icon Details","yes");
		},
		closeWindow:function(){
			/*window.open('','_parent','');*/
			window.close();
		},
		resizeWindow:function(x,y,left,top){
			window.resizeTo(x,y);
			if(!left) left=100;if(!top) top=100;
			window.moveTo(left,top);
		},
		IsValidEmail : function(Str){
			var filter=/^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i ;
			return (filter.test(Str)) ? true : false;
		},
		IsValidURL : function(Obj){
			var j = new RegExp();
			/*j.compile("^[A-Za-z]+://[A-Za-z0-9-]+\.[A-Za-z0-9]+");*/
			j.compile("^[A-Za-z0-9-]+\.[A-Za-z0-9]+");
			return (j.test(Obj.value)) ? true : false;
		},
		IsValidFile : function(Obj,extension){
			Arr = extension.split("|");
			var ext = Obj.value.substr(Obj.value.length-4,Obj.value.length);
			for(var i=0;i<Arr.length;i++){
				if(ext==Arr[i] || Obj.value.indexOf(Arr[i])!=-1) return true;
			}
			return false;
		},
		charFound : function(string,char1){
			arr = string.split(char1);
			return parseInt(arr.length) - 1;
		},
		infiniteCharInString : function(string,Allchar){
			for(var i=0; i<Allchar.length; i++) {
				arr = string.split(Allchar.charAt(i));
				if( (parseInt(arr.length) - 1)>1) return false;
			}
			return true;
		},
		throwErr :function(Obj,Msg,ErrType,DivId){
			if(!ErrType) error_txt[error_txt.length]=Msg;
			/*
			else{
				var DivObj = (document.getElementById(DivId)) ? document.getElementById(DivId) : new Object;
				DivObj.innerHTML = Msg;
				DivObj.style.display="";
			}
			try{Obj.focus();}
			catch(e){
				try{Obj[0].focus();}catch(e1){}
			} */
			//return false;
		},
		host : function(){
			var startDotCom = location.href.indexOf(".com");
			startDotCom = startDotCom + 4;
			return (location.href.substring(0,startDotCom).indexOf("indiaproperty.com")) ? location.href.substring(0,startDotCom) : "http://www.indiaproperty.com";
		},
		strLen:function(Str){return new String(Str).length;}
	};
	var Preloader = {
		callbacks: [],
		images: [],
		loadedImages: [],
		imagesLoaded: 0,
		add: function(image){
			if (typeof image == 'string') this.images.push(image);
			if (typeof image == 'array' || typeof image == 'object'){for (var i=0; i< image.length; i++){this.images.push(image[i]);}}
		},
		onFinish: function(func){
			if (typeof func == 'function') this.callbacks.push(func);
			if (typeof func == 'array' || typeof func == 'object'){for (var i=0; i< func.length; i++){this.callbacks.push(func[i]);}}
		},
		load: function(){
			for(var i=0; i<this.images.length; i++){
				this.loadedImages[i]= new Image();
				this.loadedImages[i].onload = function(){Preloader.checkFinished.apply(Preloader);};
				this.loadedImages[i].src = this.images[i];
			}
		},
		checkFinished: function(){
			this.imagesLoaded++;
			if(this.imagesLoaded == this.images.length){this.fireFinish();}
		},
		fireFinish: function(){
			for (var i=0; i<this.callbacks.length; i++){this.callbacks[i]();}
			this.images = [];
			this.loadedImages = [];
			this.imagesLoaded = 0;
			this.callbacks = [];
		}
	};
	function StartPreLoader(ImageSrc,ImageId,LoadingDivId){		
		Preloader.add(ImageSrc);
		var finishFunc = function(){
			if(document.getElementById(LoadingDivId)){document.getElementById(LoadingDivId).style.display = 'none';}
			if(document.getElementById(ImageId)){document.getElementById(ImageId).src =ImageSrc;}
		};
		Preloader.onFinish(finishFunc);
		Preloader.load();
	}
	
	
	/* For Error Message Display Div - Start */
	
	var error_html_start='<table width="93%" cellpadding="0" cellspacing="0" align="center"><tr><td height="15"></td></tr><tr><td class="menudarkbg" style="padding:1px;">&nbsp;&nbsp;<font class="whitebldtxt" style="font-size:11px;">There was a problem with your submission.</font></td></tr><tr><td class="outerbrdr" style="padding: 5px; padding-left: 1px; padding-bottom: 0px;" align="left"><ul class="listarrow" style="margin-bottom: 7px;"><li>Please make sure you have filled in the required fields with appropriate values. They are marked and have bold labels.</li>';
	var error_html_end='</ul></td></tr></table>';
	var error_txt=new Array();
	
	/* End */

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 {
				return true;	
			}
		} else {
			for (i=0; i < obj.length-1; i++) {
				if (obj[i].checked) {
					return false;
				}
			}
			return true;
		}
	} else {
		return false;
	}
}

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;
	}

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;
}

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(len==1 || len>4){return false;}
if(len==2)
	{	
		var domname1=domArr[domArr.length-1]
		if (domname1.length<2 || domname1.length>3){return false} //The address must end with 2 or 3 characters.
		if(!ValidateNo(domname1,'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ')){return false;}
	}
else if(len==3)
	{
		var domname1=domArr[domArr.length-1]
		var domname2=domArr[domArr.length-2]
		if (domname1.length<2 || domname1.length>3){return false} //The address must end with 2 or 3 characters.
		if (domname2.length<2 || domname2.length>3){return false}
		if(!ValidateNo(domname1,'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ')){return false;}
		if(!ValidateNo(domname2,'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ')){return false;}
	}
else if(len==4)
	{
		var domname1=domArr[domArr.length-1]
		var domname2=domArr[domArr.length-2]
		var domname3=domArr[domArr.length-3]
		if (domname1.length<2 || domname1.length>3){return false} //The address must end with 2 or 3 characters.
		if (domname2.length<2 || domname2.length>3){return false}
		if (domname3.length<2){return false}
		if(!ValidateNo(domname1,'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ')){return false;}
		if(!ValidateNo(domname2,'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ')){return false;}
		if(!ValidateNo(domname3,'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890')){return false;}
	}

 if(ValidateNo(emailStr,'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789.-_@'))
{
		var elen=emailStr.length;
		var temp=new Array();
		temp[0]='_@';
		temp[1]='@_';
		temp[2]='-@';
		temp[3]='@-';
		temp[4]='_.';
		temp[5]='._';
		temp[6]='-.';
		temp[7]='.-';
		temp[8]='..';
		temp[9]='--';
		temp[10]='__';
		temp[11]='-_';
		temp[12]='_-';
		temp[13]='.@';
		temp[14]='@.';
		temp[15]='@@';

		var temp1=new Array();
		temp1[0]='.';
		temp1[1]='-';
		temp1[2]='_';
		temp1[3]='@';
			
			for(j=0,i=0;j<4;j++)
			{
			if(emailStr.substr(i,1)== temp1[j])
				{return false;}
			}
	
			for(j=0;j<16;j++)
			{
			if(emailStr.indexOf(temp[j])>0)
				{return false;}
			}
}
else
	{return false;}


if (len<2) {
   var errStr="This address is missing a hostname."
   return false
}
return true;
}

function validatesearchfrm(frm)
{
	if(frm.keyword.value=="")
	{
		//alert("Please enter the word to search.");
		error_txt[(error_txt.length+1)]="Please enter the word to search.";
		frm.keyword.focus();
		return false;
	}
}

function namecheck(obj,strmsg)
{
	var index;
	if (IsEmpty(obj,'text')){error_txt[error_txt.length]=strmsg;	 return false;}
	return true;
}
function namecheck1(obj,strmsg)
{
	if(!ValidateNo(obj.value,"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ. "))
	{error_txt[error_txt.length]=strmsg;  return false;}
	return true;
}
function namecheck2(obj,strmsg)
{
	if(!ValidateNo(obj.value,"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ01234567890.,-()/ "))
	{error_txt[error_txt.length]=strmsg;  return false;}
	return true;
}
function unamecheck(obj,strmsg)
{
	if (IsEmpty(obj,'text')) { error_txt[error_txt.length]=strmsg; return false;	}
	if(!ValidateNo(obj.value,"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890_"))
	{ error_txt[error_txt.length]=strmsg;	return false;}
	return true;
}

function pwdcheck(obj,strmsg)
{
	if (IsEmpty(obj,'text'))
	{
		error_txt[error_txt.length]=strmsg;			return false;
	}

	if(!ValidateNo(obj.value,"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890"))
	{
		error_txt[error_txt.length]=strmsg;		return false;
	}
	return true;
}

function mailidcheck(obj,strmsg)
{		
	if (IsEmpty(obj,'text'))
	{
		error_txt[error_txt.length]=strmsg;			return false;
	}
	return true;
}

function mailidcheck1(obj,strmsg)
{
	if (!(IsEmpty(obj,'text')))
	{	
		if(emailCheck(obj.value)==false)
		{
			error_txt[error_txt.length]=strmsg;		return false;
		}
	}
	return true;
}

function phonevalidate(obj1,obj2,obj3)
{
	var stcod=obj1.value;
	var lancod=obj2.value;
	var mobno=obj3.value;

	if(IsEmpty(obj1,'text') && IsEmpty(obj2,'text') && IsEmpty(obj3,'text'))
	{
		error_txt[error_txt.length]="Please enter any one of your contact numbers.";		return false;
	}
    if (!IsEmpty(obj1,'text') || !IsEmpty(obj2,'text'))
	     {
			if (!IsEmpty(obj1,'text'))
			{
				if (!ValidateNo(obj1.value,"1234567890"))
				{
					error_txt[error_txt.length]="This STD Code does not exist.";			return false;
				}
				if (stcod.length<2 || stcod<10)
				{
					error_txt[error_txt.length]="This STD Code does not exist.";			return false;
				}
			} 
		
			if (IsEmpty(obj1,'text'))
			{
					error_txt[error_txt.length]="Please enter your STD Code.";			return false;
			}
			if (!ValidateNo(obj2.value,"1234567890"))
			{
				error_txt[error_txt.length]="Invalid phone number.";							return false;
			}
			if((stcod.length+lancod.length) !=10 )
			{
				error_txt[error_txt.length]="The number you have typed is inappropriate for the STD Code entered.";			return false;
			}
		}
	
		if (!IsEmpty(obj3,'text'))
		{
			if (!ValidateNo(obj3.value,"1234567890"))
			{
				error_txt[error_txt.length]="The mobile number typed is incorrect.";			return false;
			}
			if (mobno<9000000000)
			{
				error_txt[error_txt.length]="The mobile number typed is incorrect.";			return false;
			}
			if (mobno.length<10)
			{
				error_txt[error_txt.length]="The mobile number typed is incorrect.";			return false;
			}
		}
		return true;
}

// Converting the first letter to caps
function capitalizeMe(obj) {
        val = obj;
        newVal = '';
        val = val.split(' ');
        for(var c=0; c < val.length; c++) {
                newVal += val[c].substring(0,1).toUpperCase() +
val[c].substring(1,val[c].length) + ' ';
        }
        return newVal;
}

function stCap(strObj){
var strvar=strObj.value;
s=strvar.charAt(0).toUpperCase()+strvar.substr(1).toLowerCase();
strObj.value=capitalizeMe(s);
//return(strObj.charAt(0).toUpperCase()+strObj.substr(1).toLowerCase());
}

// Trimming zeroes 
function trimnumber(s) {
	var num=s.value;
	while (num.substr(0,1) == '0' && num.length>1) { num = num.substr(1,9999); }
	s.value = num;
	}

// Trimming commas
function trimchars(s)
{
	var com=s.value;
	com=com.replace(/,/g,"");
	com=parseInt(com);
	s.value=com;
}

//Clearing std text
function stdclear(s)
{
	var std=s.value;
	if(std == 'STD'){s.value=''};
}

//Displaying std text
function stddisp(s)
{
	var std=s.value;
	if(std == '' || std == 0){s.value='STD'};
}