
SkyServices.Requester=function()
{var reqObject=false,handlerFunction=null,returnType="text",GET="GET",UNDEFINED="undefined",OBJECT=0,TEXT=1,COMPLETE=4,OK=200,BO="(",BC=")",E="",MS_XML="Microsoft.XMLHTTP";function _download(url,handler)
{handlerFunction=handler;reqObject.open(GET,url);reqObject.onreadystatechange=_handle;reqObject.send(null);}
function _handle()
{if((typeof(handlerFunction)!=UNDEFINED)&&(reqObject.readyState==COMPLETE))
{if(reqObject.status==OK)
{switch(returnType)
{case OBJECT:handlerFunction(eval([BO,reqObject.responseText,BC].join(E)));break;case TEXT:default:handlerFunction(reqObject.responseText);}}
else if(reqObject.status!=0)
{alert("Error getting data!\n\nThere was an error retreive the requested data. Please try again.\n\nIf the problem persists, please contact the site webmaster.");}}}
var public={init:function()
{if(window.XMLHttpRequest)
{reqObject=new XMLHttpRequest();}
else if(window.ActiveXObject)
{try
{reqObject=new ActiveXObject(MS_XML);}
catch(e)
{reqObject=false;}}
if(reqObject===false)
{throw(new Error("Cannot initialise XHR"));}},getObject:function(url,handler)
{returnType=OBJECT;_download(url,handler);},getText:function(url,handler)
{returnType=TEXT;_download(url,handler);},cancel:function()
{handlerFunction=void
reqObject.abort();}}
return public;}();