function AJAXHandler()
{
	var target=null;
  var respVal=null;
    	
	this.setTarget=function(target)
	{
		this.target=target;
	}
	
	this.createRequestObject=function()
	{
		var httpRequest=false;
		if(window.XMLHttpRequest){
			httpRequest=new XMLHttpRequest();
		}
		else if(window.ActiveXObject){
			httpRequest=new ActiveXObject("Microsoft.XMLHTTP");
		}
		else{
			alert("This page will not work as desired, lack of support from browser");
		}
		return httpRequest;
	}

	var xmlhttp=this.createRequestObject();
	
	this.sendRequest=function(paramslist,method)
	{
		params=paramslist; 	
		 
		if(method=='POST')
		{
			xmlhttp.open("POST",this.target,true);
		 	xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	        xmlhttp.setRequestHeader("Content-length", params.length);
	        xmlhttp.setRequestHeader("Connection", "close");
	        xmlhttp.onreadystatechange=this.handleResponce;
	        xmlhttp.send(params);
		}
		else if(method=='GET')
		{
			
			xmlhttp.open("GET",this.target+params,true);
			xmlhttp.onreadystatechange=this.handleResponce;
		    xmlhttp.send(null);
		}
	}
	
	this.handleResponce=function()
	{
		if(xmlhttp.readyState==4){
		
				responce=xmlhttp.responseText;
				
				if(responce==0)
				{
					alert("Invalid Current Password.")
					obj=document.getElementById('oldpwd');
					obj.value="";
					document.getElementById('newpwd').value="";
					document.getElementById('confpwd').value="";
					obj.focus();
				}
				else if(responce!=1)
				{
					alert(responce);
					obj=document.getElementById('oldpwd');
					document.getElementById('newpwd').value="";
					document.getElementById('confpwd').value="";
					obj.value="";
					obj.focus();
				}
				onChTriggered = 0;
		}
	}
}

function validChars(e, goods) {
	var key, keychar;
	key = (window.event) ? window.event.keyCode : ((e) ? e.which : null);
	if (key == null) return true;

	keychar = String.fromCharCode(key);
	keychar = keychar.toLowerCase();
	goods = goods.toLowerCase();

	if (goods.indexOf(keychar) != -1)
		return true;

	if (key==null || key==0 || key==8 || key==9 || key==13 || key==27)
		return true;

	return false;
}
