var bustcachevar=0 //bust potential caching of external pages after initial request? (1=yes, 0=no)
//var loadstatustext="<img src=\"http://www.rtmlwise.net/shophalebob/loading.gif\" /> &nbsp;Loading..."
var canCelbtn="";//"<input type=\"button\" value=\"Cancel\" class=\"canbut\"  onclick=\"CancelPage();\" >";
var loadingGraphics="<img src=\"http://74.86.124.115/~rtmlwise/superherotoys/progress.gif\" />";
var loadstatustext=loadingGraphics + " &nbsp;Loading Items...&nbsp;&nbsp;"+canCelbtn;
//loadstatustext+= "Loading...</td></tr></table>" 
   


function getxmlObj(xhr)
{
//var xhr;
  try {
    	xhr = new XMLHttpRequest();
      } catch (e) {
		    var a = ['MSXML2.XMLHTTP.5.0', 'MSXML2.XMLHTTP.4.0','MSXML2.XMLHTTP.3.0', 'MSXML2.XMLHTTP', 'MICROSOFT.XMLHTTP.1.0','MICROSOFT.XMLHTTP.1', 'MICROSOFT.XMLHTTP'];
		    for (var i = 0; i < a.length; i++) 
			{
		      		try {
				        xhr = new ActiveXObject(a[i]);
					
				        break;
				      } catch (e) {
								  }
			}
		  }
return xhr

}


function getxmlObj2(pagquest)
{

	if (window.XMLHttpRequest) // if Mozilla, Safari etc		
		pagquest = new XMLHttpRequest();		
	else if (window.ActiveXObject)
		{ // if IE
			//alert("window.actvx");
			try {
				pagquest = new ActiveXObject("Microsoft.XMLHTTP")
			    } 
			     catch (e){
					 //alert("microsoft.xml");
							try{	
								pagquest = new ActiveXObject("Msxml2.XMLHTTP")
							   }
							   catch (e){alert("Ajax Not Supported");}
				      }
		}
		else{		
			document.getElementById(containerid).innerHTML="False";
			//return( null);
		    }
return pagquest

}  


////NO NEED TO EDIT BELOW////////////////////////
var loadedobjects=""
var defaultcontentarray=new Object()
var bustcacheparameter=""
//Remember ural should have the site address same as that of opened site
// else you recieve Permission denied error and AJAX won't work
var st_sec=0;
var et_sec=0;
var st_min=0;
var et_min=0;
var page_cancel = false;
var glb_StatusObj="";
function CancelPage()
{
	if(glb_StatusObj!='')
		document.getElementById(glb_StatusObj).innerHTML=loadingGraphics + " &nbsp; Cancelling...";
		
	page_cancel = true;
}
function ajaxpage(ural, containerid, StatusObj)
{
	var page_request = null;
	page_cancel = false;
	glb_StatusObj=StatusObj;
//alert(ural);
//var tim=);
var d_tim = new Date();
st_sec = d_tim;  //d_tim.getSeconds();    // Returns seocnds
//alert(tim);
document.getElementById(StatusObj).innerHTML=loadstatustext;
	page_request=getxmlObj2(page_request);	
		
			//alert("entering Bustchar...");
			//	alert(page_request);
			if (bustcachevar) //if bust caching of external page
			bustcacheparameter=(ural.indexOf("?")!=-1)? "&"+new Date().getTime() : "?"+new Date().getTime()
	
	
	try{
	//alert(ural+bustcacheparameter);
	
	document.getElementById(StatusObj).innerHTML=loadstatustext;//"Requesting..";
	//bustcacheparameter="";
	//alert("Opening Connection...");
		page_request.open("GET",ural+bustcacheparameter,true)  // false means wait for response ; true means donot wait for response
		
		/* var MAXIMUM_WAITING_TIME=180000;
		var requestTimer = setTimeout(function() {
	   page_cancel=true;
       page_request.abort();
	   clearTimeout(requestTimer);
       // Handle timeout situation, e.g. Retry or inform user.
     }, MAXIMUM_WAITING_TIME); 
		clearTimeout(requestTimer);*/
		page_request.onreadystatechange=function(){		
		
				//	alert("Loading page...");	
				loadpage(page_request, containerid,StatusObj);
				
				//clearTimeout(requestTimer); 
				
				//if(StatusObj!='' && containerid!=StatusObj){
				//document.getElementById(StatusObj).innerHTML="&nbsp;";}//loadstatustext;}
			}//function ends

		page_request.send(null)
	
	   }catch(e){
		   //alert(e);
				//alert("Server is busy.Please try again.");
				return false;
				//location.replace(document.getElementById("execret").value);
	       }

} // function ends

function loadpage(page_request, containerid,StatusObj){	
try{
var respV="";	
if(page_cancel==true)
{
		page_request.abort();
		page_request=null;
		if(glb_StatusObj!='')
			document.getElementById(glb_StatusObj).innerHTML="Cancelled by User";
			
		return 0;
}
	if (page_request.readyState == 4 && (page_request.status==200 || window.location.href.indexOf("http")==-1)){
			document.getElementById(containerid).innerHTML=page_request.responseText; // + "OK"			
		if(StatusObj!='' && containerid!=StatusObj){
			var d_tim = new Date();
			et_sec= d_tim; //.getSeconds();
			var f_sec1=et_sec-st_sec;
			var f_sec=f_sec1/1000;
				document.getElementById(StatusObj).innerHTML="Query Took Approx:  " + f_sec + " sec";}//loadstatustext;}	
				//document.getElementById(StatusObj).innerHTML="";}
			
	}
	}catch(e){}//alert(e);}//alert("Error! Loading Page \r\nServer is busy.Please try again.");}
}

//Ajax with post method
function ajaxpagepost(ural, containerid, StatusObj,frmname)
{
	var page_request = null;
	page_cancel = false;
//alert(ural);
var frm=document.getElementById(frmname);
var str = getFormValues(frm,"");
document.getElementById(StatusObj).innerHTML=loadstatustext;
	page_request=getxmlObj2(page_request);	
		
			//alert(page_request);

			if (bustcachevar) //if bust caching of external page
			bustcacheparameter=(ural.indexOf("?")!=-1)? "&"+new Date().getTime() : "?"+new Date().getTime()
	
	
	try{
	//alert(ural+bustcacheparameter);
	
	document.getElementById(StatusObj).innerHTML=loadstatustext;//"Requesting..";
	//bustcacheparameter="";
		page_request.open("POST",ural+bustcacheparameter,true)  // false means wait for response ; true means donot wait for response
		
		page_request.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=UTF-8");

   //page_request.send(str);
		
		page_request.onreadystatechange=function(){		
		
						
				loadpage(page_request, containerid,StatusObj);
				if(StatusObj!='' && containerid!=StatusObj){
				document.getElementById(StatusObj).innerHTML="done";}//loadstatustext;}//"Done";}
			}//function ends

		page_request.send(str)
	
	   }catch(e){	
				alert("Server is busy.Please try again Later.");
				return false;
				//location.replace(document.getElementById("execret").value);
	       }

} // function ends


    function getFormValues(fobj,valFunc)

    {

       var str = "";

       var valueArr = null;

       var val = "";

       var cmd = "";

       for(var i = 0;i < fobj.elements.length;i++)

       {

           switch(fobj.elements[i].type)

           {

               case "text":

                    if(valFunc)

                    {

                        //use single quotes for argument so that the value of

                        //fobj.elements[i].value is treated as a string not a literal

                        cmd = valFunc + "(" + 'fobj.elements[i].value' + ")";

                        val = eval(cmd)

                    }

                    str += fobj.elements[i].name +

                     "=" + escape(fobj.elements[i].value) + "&";

                     break;

               case "select-one":

                    str += fobj.elements[i].name +

                    "=" + fobj.elements[i].options[fobj.elements[i].selectedIndex].value + "&";

                    break;

           }

       }

       str = str.substr(0,(str.length - 1));

       return str;

    }