
function sDecode(sParams) {
	
	if (sParams != "") {
		var url = "/exorbyte/sdecode.php?convert=from&" + sParams;
		var loader1 = new net.ContentLoader(url,xmlhttpCallback,null,"GET",null);
	} 
	return false;
}

function flexformActivate(params) {
	var qpos = location.href.search(/[\\?]/);
	if(qpos >= 0) {
		var url = location.href.substr(0, qpos);
	} else {
		var url = "/de/search.ltml";
	}

	if (params.length > 0) {
		var pStr = "";
		for(var i = 0; i < params.length; i++) {
			var pair = params[i];
			pStr += "&" + escape(pair[0]) + "=" + escape(pair[1]);
		}
		location.href = url + "?omnin=DE-FSEARCH&sa=PA&flexsearch=yes" + pStr;
	}
}

function flexformRefill(params) {
	flex_known_params = params;
	
	// update the general view
	flex_cursor_pos = flex_known_params.length;		
	flexFillTabs();
}


function xmlhttpCallback () {
	try {
		eval(this.req.responseText);
		return 0;
	} catch (e) { }
	// try to fix possible quotation mistakes
	var txt = input.xmlhttp.responseText.replace(/\'/g, "\\\\'");
	try {
		eval(txt);
	} catch (e) { }
}


/*
url-loading object and a request queue built on top of it
*/

/* namespacing object */
var net=new Object();

net.READY_STATE_UNINITIALIZED= 0;
net.READY_STATE_LOADING      = 1;
net.READY_STATE_LOADED       = 2;
net.READY_STATE_INTERACTIVE  = 3;
net.READY_STATE_COMPLETE     = 4;


/*--- content loader object for cross-browser requests ---*/
net.ContentLoader=function(url,onload,onerror,method,params,contentType) {
  this.req=null;
  net.currentLoader=this;
  this.onload=onload;
  this.onerror=(onerror) ? onerror : this.defaultError;
  this.loadXMLDoc(url,method,params,contentType);
}

net.ContentLoader.prototype.loadXMLDoc=function(url,method,params,contentType) {
  if (!method) {
    method="GET";
  }
  if (!contentType && method == "POST") {
    contentType='application/x-www-form-urlencoded';
  }
  if ( window.XMLHttpRequest )
     this.req = new XMLHttpRequest();
  else if ( window.ActiveXObject ) {
     try {
        this.req = new ActiveXObject('Msxml2.XMLHTTP');
     }
     catch(err) {
        this.req = new ActiveXObject('Microsoft.XMLHTTP');
     }
  }

  if (this.req) {
    try{
      var loader=this;

      this.req.open(method,url,true);

      this.req.onreadystatechange=function() {
        net.ContentLoader.onReadyState.call(loader);
      }
      if (contentType) {
        this.req.setRequestHeader('Content-Type', contentType);
      }
      this.req.send(params);
    }catch (err) {
      this.onerror.call(this);
    }
  }
}

net.ContentLoader.onReadyState=function() {
  var req=this.req;
  var ready=req.readyState;
  try {
     if (ready==net.READY_STATE_COMPLETE) {
        var httpStatus=req.status;
        if (httpStatus==200 || httpStatus==0){
           this.onload.call(this);
        } else {
           this.onerror.call(this);
        }
     }
  }
  catch(e) { } //alert("MMSuggest Comm Error:\n" + e.message); }
}

net.ContentLoader.prototype.defaultError=function(){
  alert("error fetching data!"
    +"\n\nreadyState:"+this.req.readyState
    +"\nstatus: "+this.req.status
    +"\nheaders: "+this.req.getAllResponseHeaders());
}


