jsmx=new jsmxConstructor();
function jsmxConstructor(){
this.async=true;
this.onError=onError;
this.onWait=popWait;
this.onWaitEnd=killWait;
}
function http(_1,_2,rm,_4){
var _5=rm;
var _6=(!_4)?"":toQueryString(_4);
var _7=false;
try{
var _8=(window.XMLHttpRequest)?new XMLHttpRequest():new ActiveXObject("Microsoft.XMLHTTP");
_8.onreadystatechange=function(){
switch(_8.readyState){
case 1:
if(!_7){
jsmx.onWait();
_7=true;
}
break;
case 2:
break;
case 3:
break;
case 4:
jsmx.onWaitEnd();
if(_8.status==200){
try{
rObj=parseResponse(_8);
success=true;
}
catch(e){
jsmx.onError("Parsing Error: The value returned could not be evaluated.");
success=false;
}
if(success){
_5(rObj);
}
}else{
jsmx.onError("There was a problem retrieving the data:\n"+_8.statusText);
}
break;
}
};
_8.open(_1,noCache(_2),jsmx.async);
if(_1.toLowerCase()=="post"){
_8.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
}
_8.send(_6);
}
catch(e){
}
}
function parseResponse(rO){
if(rO.getResponseHeader("Content-Type").split(";")[0]=="text/xml"){
return rO.responseXML;
}
var _a=rO.responseText;
var i=_a.indexOf("HTTP/1");
if(i>-1){
_a=_a.substring(i,_a.length);
i=_a.indexOf(String.fromCharCode(13,10,13,10));
if(i>-1){
_a=_a.substring(i+2,_a.length);
}
}
if(_a.indexOf("<wddxPacket")>-1){
return parseWDDX(_a);
}
try{
return parseJSON(_a);
}
catch(e){
return parseJS(_a);
}
}
function parseJS(_c){
eval(_c);
var r=eval(_c.split("=")[0].replace(/\s/g,""));
return r;
}
function parseJSON(_e){
return eval("("+_e+")");
}
function parseWDDX(_f){
var _10=xmlStr2Doc(_f);
var _11=_10.getElementsByTagName("data");
return __parseWDDXnode(_11[0].firstChild);
}
function xmlStr2Doc(str){
var xml;
if(typeof (DOMParser)=="undefined"){
xml=new ActiveXObject("Microsoft.XMLDOM");
xml.async="false";
xml.loadXML(str);
}else{
var _14=new DOMParser();
xml=_14.parseFromString(str,"application/xml");
}
return xml;
}
function __parseWDDXnode(n){
var val;
switch(n.tagName){
case "string":
val=__parseWDDXstring(n);
break;
case "number":
val=parseInt(n.firstChild.data);
break;
case "boolean":
val=n.getAttribute("value");
break;
case "dateTime":
val=Date(n.firstChild.data);
break;
case "array":
val=__parseWDDXarray(n);
break;
case "struct":
val=__parseWDDXstruct(n);
break;
case "recordset":
val=__parseWDDXrecordset(n);
break;
case "binary":
val=n.firstChild.data;
break;
case "char":
val=__parseWDDXchar(n);
break;
case "null":
val="";
break;
default:
val=n.tagName;
break;
}
return val;
}
function __parseWDDXstring(_17){
var _18=_17.childNodes;
var str="";
for(var x=0;x<_18.length;x++){
if(typeof (_18[x].data)!="undefined"){
str+=_18[x].data;
}else{
str+=__parseWDDXnode(_18[x]);
}
}
return str;
}
function __parseWDDXchar(_1b){
switch(_1b.getAttribute("code")){
case "0d":
return "\r";
case "0c":
return "\f";
case "0a":
return "\n";
case "09":
return "\t";
}
}
function __parseWDDXarray(_1c){
var _1d=_1c.childNodes;
var arr=new Array();
for(var i=0;i<_1d.length;i++){
arr[i]=__parseWDDXnode(_1d[i]);
}
return arr;
}
function __parseWDDXstruct(_20){
var _21=_20.childNodes;
var obj=new Object();
for(var i=0;i<_21.length;i++){
obj[_21[i].getAttribute("name").toLowerCase()]=__parseWDDXnode(_21[i].childNodes[0]);
}
return obj;
}
function __parseWDDXrecordset(_24){
var qry=new Object();
var _26=_24.getElementsByTagName("field");
var _27;
var _28;
var _29;
for(var x=0;x<_26.length;x++){
_27=_26[x].childNodes;
_29=new Array();
for(var i=0;i<_27.length;i++){
_29[_29.length]=__parseWDDXnode(_27[i]);
}
qry[_26[x].getAttribute("name").toLowerCase()]=_29;
}
return qry;
}
function toQueryString(obj){
if(typeof (obj)=="string"){
return obj;
}
if(typeof (obj)=="object"){
if(typeof (obj.elements)=="undefined"){
return object2queryString(obj);
}else{
return form2queryString(obj);
}
}
}
function object2queryString(obj){
var ar=new Array();
for(x in obj){
ar[ar.length]=x+"="+obj[x];
}
return ar.join("&");
}
function form2queryString(_2f){
var obj=new Object();
var ar=new Array();
for(var i=0;i<_2f.elements.length;i++){
try{
elm=_2f.elements[i];
nm=elm.name;
if(nm!=""){
switch(elm.type.split("-")[0]){
case "select":
for(var s=0;s<elm.options.length;s++){
if(elm.options[s].selected){
if(typeof (obj[nm])=="undefined"){
obj[nm]=new Array();
}
obj[nm][obj[nm].length]=escape(elm.options[s].value);
}
}
break;
case "radio":
if(elm.checked){
if(typeof (obj[nm])=="undefined"){
obj[nm]=new Array();
}
obj[nm][obj[nm].length]=escape(elm.value);
}
break;
case "checkbox":
if(elm.checked){
if(typeof (obj[nm])=="undefined"){
obj[nm]=new Array();
}
obj[nm][obj[nm].length]=escape(elm.value);
}
break;
default:
if(typeof (obj[nm])=="undefined"){
obj[nm]=new Array();
}
obj[nm][obj[nm].length]=escape(elm.value);
break;
}
}
}
catch(e){
}
}
for(x in obj){
ar[ar.length]=x+"="+obj[x].join(",");
}
return ar.join("&");
}
function noCache(url){
var qs=new Array();
var arr=url.split("?");
var scr=arr[0];
if(arr[1]){
qs=arr[1].split("&");
}
qs[qs.length]="nocache="+new Date().getTime();
return scr+"?"+qs.join("&");
}
function popWait(){
proc=document.getElementById("JSMX_loading");
if(proc==null){
var p=document.createElement("div");
p.id="JSMX_loading";
document.body.appendChild(p);
}
}
function killWait(){
proc=document.getElementById("JSMX_loading");
if(proc!=null){
document.body.removeChild(proc);
}
}
function onError(str){
alert(str);
}
function $(id){
return document.getElementById(id);
}

