
/*
 *	Javascript AJAX Functions
 * *************************************************************************
 *  1. showListAjax(strUrl,strArg, strResultDiv)
 *	2. stateChanged() 
 *	3. GetXmlHttpObjectList()
 *
 * *************************************************************************
 */

var objXmlHttp;
var strDivElem;

/*
 * *************************************************************************
 * Name			: showSelectAjax()
 * Description	: to show response using AJAX
 * Parameter	: strUrl       - name of the page to be called
 *                strArg       - arguments to the page if any
 *                strResultDiv - name of the <div> where output should be displayed
 *
 * Return value : 
 * Example		: showSelectAjax("update.jsp","id=1212", "divOutput")
 * *************************************************************************
 */

function showListAjax(strUrl,strArg, strResultDiv)
{ 
	   
	objXmlHttp=GetXmlHttpObjectList();
	if (objXmlHttp==null)
	{
		alert ("Your browser does not support AJAX!");
		return;
	} 

	strDivElem=strResultDiv;
	
	var strUrl;
	//url = strUrl+"?int_bcatid="+catid;
	url = strUrl+"?";
	if (strArg != "") 
		{
			url=url + strArg + "&";
		}
		
	url=url+"ajx_sid="+Math.random();
	
	objXmlHttp.onreadystatechange=stateChangedForList;
	objXmlHttp.open("GET",url,true);
	objXmlHttp.send(null);
	
}

/*
 * *************************************************************************
 * Name			: stateChangedForList()
 * Description	: this function is automatically executed and display the content
 *                in the specified div.
 * Parameter	: 
 *
 * Return value : 
 * Example		: stateChangedForList()
 * *************************************************************************
 */

function stateChangedForList() 
{ 
	if (objXmlHttp.readyState==4 || objXmlHttp.readyState=="complete")
	 { 

		var objDiv;
		var objDiv2 = null;
		var objDiv3 = null;
		var arrDiv = new Array();
		
		arrDiv = strDivElem.split(",");
	
		objDiv = document.getElementById(arrDiv[0]);
		
		if (objDiv != null) {
		
			objDiv.length = 1;
			  
			if(objXmlHttp.responseText != ''){
							
				var arrsubmenu=new Array();
				var arrrec=new Array();
				var i;
				
				arrsubmenu = objXmlHttp.responseText.split("||");
			
				for(i=0;i<arrsubmenu.length;i++)
				{
				   arrrec=arrsubmenu[i].split("~~");
				   if(arrrec.length==2){
				   
					   var opt = document.createElement("OPTION");
					   opt.value = arrrec[0];
					   opt.text = arrrec[1]; 
					   objDiv.options.add(opt);
					   
					}
				}
			}   
		}
	}
}
/*
 * *************************************************************************
 * Name			: GetXmlHttpObjectList()
 * Description	: this function is to create XML Request object
 * Parameter	: 
 *
 * Return value : XMLHttp object
 * Example		: GetXmlHttpObjectList()
 * *************************************************************************
 */ 

function GetXmlHttpObjectList()
{ 
  var objXMLHttp=null;
  if (window.XMLHttpRequest)
	{
 	  objXMLHttp=new XMLHttpRequest();
	}
  else if (window.ActiveXObject)
	{
	  objXMLHttp=new ActiveXObject("Microsoft.XMLHTTP");
	}
  return objXMLHttp;
} 

