//Global XMLHTTP Request object

var AjaxServerPageName;


AjaxServerPageName = "AjaxServer.aspx";

//Creating and setting the instance of appropriate XMLHTTP Request object to a “XmlHttp” variable  
function CreateXmlHttp()
{
	var XmlHttp;
	
	//Creating object of XMLHTTP in IE
	try
	{
		XmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
	}
	catch(e)
	{
		try
		{
			XmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
		} 
		catch(oc)
		{
			XmlHttp = null;
		}
	}
	//Creating object of XMLHTTP in Mozilla and Safari 
	if(!XmlHttp && typeof XMLHttpRequest != "undefined") 
	{
		XmlHttp = new XMLHttpRequest();
	}
	
	return XmlHttp;
}

//Gets called when country combo box selection changes
function SendQuery() 
{
	var lenArgs = arguments.length
	var displayName;
	if(lenArgs < 3)
		alert(" Request should be 3 or more parameters. ");
	else
	{
		displayName		= arguments[lenArgs-3];
		
		//Getting Class Name and Method name.
		var className	= arguments[lenArgs-2];
		var methodName	= arguments[lenArgs-1];
		var parameters = "";
		
		//Getting method parameters.
		for(var i=0; i<lenArgs-3; i++)
		{
			if(parameters.length > 0)
				parameters = parameters + ',' + encodeURIComponent(arguments[i])
			else
				parameters = encodeURIComponent(arguments[i])
		}
		
		// URL to get states for a given country
		var requestUrl = AjaxServerPageName + "?className=" + encodeURIComponent(className);
		requestUrl += "&methodName=" + encodeURIComponent(methodName) + "&parameters=" + encodeURIComponent(parameters);
				
		var XmlHttp = CreateXmlHttp();
		
		// If browser supports XMLHTTPRequest object
		if(XmlHttp)
		{
			//Setting the event handler for the response
			//XmlHttp.onreadystatechange = HandleResponse;
			XmlHttp.onreadystatechange = function HandleResponse()
											{
												// To make sure receiving response data from server is completed
												if(XmlHttp.readyState == 4)
												{
													// To make sure valid response is received from the server, 200 means response received is OK
													if(XmlHttp.status == 200)
													{			
														try
														{
															var displayControl = document.getElementById(displayName);
														  
															//Clears the content of the control.
															displayControl.innerHTML = "";
															displayControl.innertext = "";
															
															if(displayControl.style.visibility == 'hidden')
																displayControl.style.visibility = 'visible';
															  
															//Assigning reponse object Content
															displayControl.innerHTML = XmlHttp.responseText;
															
															if(XmlHttp.responseText.length == 0)
																alert(" Response is null. " );
														}
														catch(err)
														{
															
														}

													}
													else
													{
														
													}
												}
											}
			
			//Initializes the request object with GET (METHOD of posting), 
			//Request URL and sets the request as asynchronous.
			XmlHttp.open("GET", requestUrl,  true);
			
			//Sends the request to server
			XmlHttp.send(null);		
		}
	}
}//end of send Query


//*******************Method Information ********************************************//
//Method Name		:	UploadOrSavesCustomHeader
//Method Description:	It uploads the image in the bg_images folder and saves the 
//						path in the bg_Categories table
//*******************Method Information ********************************************//
function UploadOrSavesCustomHeader()
{
	var lenArgs = arguments.length
	var displayName;
	
	if(lenArgs < 3)
		alert(" Request should be 3 or more parameters. ");
	else
	{
		displayName		= arguments[lenArgs-3];
		
		//Getting Class Name and Method name.
		var className	= arguments[lenArgs-2];
		var methodName	= arguments[lenArgs-1];
		var parameters = "";
	
		//Getting method parameters.
		for(var i=0; i<lenArgs-3; i++)
		{
			if(parameters.length > 0)
			{
				parameters = parameters + ',' + arguments[i]
			}
			else
				parameters =parameters + arguments[i]
				
		}
		
		// URL to get states for a given country
		var requestUrl = AjaxServerPageName + "?className=" + encodeURIComponent(className);
		requestUrl += "&methodName=" + encodeURIComponent(methodName) + "&parameters=" + encodeURIComponent(parameters);
		var XmlHttp = CreateXmlHttp();
		 
		// If browser supports XMLHTTPRequest object
		if(XmlHttp)
		{
			//Setting the event handler for the response
			//XmlHttp.onreadystatechange = HandleResponse;
			XmlHttp.onreadystatechange = function HandleResponse()
											{
																					
												// To make sure receiving response data from server is completed
												if(XmlHttp.readyState == 4)
												{
													
												
													// To make sure valid response is received from the server, 200 means response received is OK
													if(XmlHttp.status == 200)
													{			
													
														try
														{
															
															var displayControl = document.getElementById(displayName);
														    if (document.getElementById(displayName).src == null)
														    {
																//Clears the content of the control.
																displayControl.innerHTML = "";
																displayControl.innertext = "";
																
																if(displayControl.style.visibility == 'hidden')
																	displayControl.style.visibility = 'visible';
																
																
																//Assigning reponse object Content
																displayControl.innerHTML = XmlHttp.responseText;
																
																/*if (displayName == 'spnMessage')
																{
																	Effect.Appear('spnMessage');
																	setTimeout('HideDiv1()',5000);
																}*/
															}
															else		
															{
																displayControl.src =XmlHttp.responseText;
															}
														
															if(XmlHttp.responseText.length == 0)
																alert(" Response is null. " );
														}
														catch(err)
														{

														}

													}
													else
													{
														
													}
												}
											}
			
			//Initializes the request object with GET (METHOD of posting), 
			//Request URL and sets the request as asynchronous.
			XmlHttp.open("GET", requestUrl,  true);
			
			//Sends the request to server
			XmlHttp.send(null);		
		}
	}

}//end of UploadCustomHeader


