var Ajax = new Object();
Ajax.showLoading = true;
Ajax.Request = function(url,id, callbackMethod)
{
	if ( id == 0 )
	{
		return;
	}
	Page.getPageCenterX();
	Ajax.request = Ajax.createRequestObject();
	Ajax.request.onreadystatechange = callbackMethod;
	Ajax.request.open("POST", url+id, true);
	Ajax.request.send(url);
}

Ajax.GenericRequest = function(url, callbackMethod)
{
//	Page.getPageCenterX();
	Ajax.request = Ajax.createRequestObject();
	Ajax.request.onreadystatechange = callbackMethod;
	Ajax.request.open("GET", url, true);
	Ajax.request.send(url);
}
Ajax.GroupRequest = function(url, callbackMethod)
{
	Page.getPageCenterX();
	Ajax.request = Ajax.createRequestObject();
	Ajax.request.onreadystatechange = callbackMethod;
	url = url + "&timestamp="+ new Date().getTime();
	Ajax.request.open("GET", url, true);
	Ajax.request.send(url);
}

Ajax.usernameResponse = function ()
{
	if(Ajax.CheckReadyState(Ajax.request))
	{		
		var	response = Ajax.request.responseText;
		if ( trim(response) == 1 )
			document.getElementById("usernameStatus").innerHTML = "Username is not available";
		else
			document.getElementById("usernameStatus").innerHTML = "Username is available";
			
	}
}

Ajax.createRequestObject = function()
{
	var obj;
	if(window.XMLHttpRequest)
	{
		obj = new XMLHttpRequest();
	}
	else if(window.ActiveXObject)
	{
		obj = new ActiveXObject("MSXML2.XMLHTTP");
	}
	return obj;
}

Ajax.CheckReadyStateFLEXPage = function(obj)
{
	//alert(obj.readyState);
	if(obj.readyState < 4) {		
		if ( Ajax.showLoading ) 
		{
		document.getElementById('loading').style.top = (Page.top + Page.height/2)-100;
		document.getElementById('loading').style.left = Page.width/2-75;
		document.getElementById('loading').style.position = "absolute";
		document.getElementById('loading').innerHTML = "";  
		}
	}
	if(obj.readyState == 4)
	{
		//alert('hi');
		document.getElementById('loading').innerHTML = "";
		/*if(obj.status == 200)
		{
			if ( Ajax.showLoading ) 
			{
			document.getElementById('loading').innerHTML = "";
			}
			return true;
		}
		else
		{
			document.getElementById('loading').innerHTML = "" + obj.status;
		}*/
	}
}

Ajax.CheckReadyState = function(obj)
{
	if(obj.readyState < 4) {		
		if ( Ajax.showLoading ) 
		{
	///	document.getElementById('loading').style.top = (Page.top + Page.height/2)-100;
		//document.getElementById('loading').style.left = Page.width/2-75;
	//	document.getElementById('loading').style.position = "absolute";
	//	document.getElementById('loading').innerHTML = "";  
		}
	}
	if(obj.readyState == 4)
	{
		if(obj.status == 200)
		{
			if ( Ajax.showLoading ) 
			{
			//document.getElementById('loading').innerHTML = "";
			}
			//setTimeout('Page.loadOut()',2000);
			return true;
		}
		else
		{
			document.getElementById('loading').innerHTML = "" + obj.status;
		}
	}
}

var Page = new Object();
Page.width;
Page.height;
Page.top;

Page.loadOut = function ()
{
	document.getElementById('loading').innerHTML ='';	
}
Page.getPageCenterX = function ()
{
		var fWidth;
		var fHeight;		
		//For old IE browsers 
		if(document.all) 
		{ 
		fWidth = document.body.clientWidth; 
		fHeight = document.body.clientHeight; 
		} 
		//For DOM1 browsers 
		else if(document.getElementById &&!document.all)
		{ 
		fWidth = innerWidth; 
		fHeight = innerHeight; 
		} 
		else if(document.getElementById) 
		{ 
		fWidth = innerWidth; 
		fHeight = innerHeight; 		
		} 
		//For Opera 
		else if (is.op) 
		{ 
		fWidth = innerWidth; 
		fHeight = innerHeight; 		
		} 
		//For old Netscape 
		else if (document.layers) 
		{ 
		fWidth = window.innerWidth; 
		fHeight = window.innerHeight; 		
		}
	Page.width = fWidth;
	Page.height = fHeight;
//	Page.top = window.document.body.scrollTop;
}

function AjaxPostNew(strURL, pFlag) 
{
	var xmlHttpReq = false;
	var self = this;
	// Mozilla/Safari
	if (window.XMLHttpRequest) 
	{
		self.xmlHttpReq = new XMLHttpRequest();
	}
	// IE
	else if (window.ActiveXObject) 
	{
		self.xmlHttpReq = new ActiveXObject("Microsoft.XMLHTTP");
	}

	self.xmlHttpReq.open('get', strURL, true);
	self.xmlHttpReq.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
	self.xmlHttpReq.onreadystatechange = function() 
	{
			
			if(self.xmlHttpReq.readyState<4)
			{
				document.getElementById('loadingbox').style.display='';
				document.getElementById('loadingbox').style.top = 200;
				document.getElementById('loadingbox').style.left =400 ;
				document.getElementById('loadingbox').style.position = "absolute";
				document.getElementById('loadingbox').innerHTML = "<table border=0 cellpadding=0 cellspacing=1 width=160 bgcolor=black><tr><td align=center class=loading height=45 bgcolor=#EEEEEE><img src='"+WWWROOT+"/front/images/loading.gif'/>&nbsp;&nbsp;Loading..</td></tr></table>";  
			}
			else
			{
				document.getElementById('loadingbox').style.display='none';
			}
			
			if(self.xmlHttpReq.readyState == 4) 
			{
				pList = self.xmlHttpReq.responseText;

				switch(pFlag)			
				{
					case 1:
						AfterStateInfo(pList);
					break;
					case 2:
						AfterValidateEmail(pList);
					break;	
					case 3:
						ShowVerifytext(pList);
					break;	
					case 4:
						AfterSelectGroup(pList); 	/* Group*/
					break;	
					case 5:
						AfterMove(pList); 	/* Group*/
					break;
					case 6:
						AfterCheckLevel(pList); 	/* Level*/
					break;
					case 7:
						AfterCheckCampaignName(pList); 	/* Compaign*/
					break;
					case 8:
						ShowPreview(pList); 	/* Campaign preview image*/
					break;
					default:
						break;
				}
			}
	}
	self.xmlHttpReq.send(null);
}
