var http_request_res = false;
// ---------------------------------------------
//  selections
// ---------------------------------------------
function makeRequestSelection(url, parameters) {
  http_request = false;
  if (window.XMLHttpRequest) { // Mozilla, Safari,...
     http_request = new XMLHttpRequest();
     if (http_request.overrideMimeType) {
     	// set type accordingly to anticipated content type
        //http_request.overrideMimeType('text/xml');
        http_request.overrideMimeType('text/html');
     }
  } else if (window.ActiveXObject) { // IE
     try {
        http_request = new ActiveXObject("Msxml2.XMLHTTP");
     } catch (e) {
        try {
           http_request = new ActiveXObject("Microsoft.XMLHTTP");
        } catch (e) {}
     }
  }
  if (!http_request) {
     alert('Cannot create XMLHTTP instance');
     return false;
  }
  
  http_request.open("POST", url, true);

  //Send the proper header information along with the request
  http_request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
  http_request.setRequestHeader("Content-length", parameters.length);
  http_request.setRequestHeader("Connection", "close");
  
  http_request.onreadystatechange = alertContentsSelection;
  http_request.send(parameters);
}

function alertContentsSelection() {
  if (http_request.readyState == 4) {
     if (http_request.status == 200) {
        //alert(http_request.responseText);
        result = http_request.responseText;
        $('selectionslist').innerHTML = result; 
        evalScripts(result);      
     } else {
        alert('There was a problem with the request.');
     }
  }
}
// ---------------------------------------------
//  results
// ---------------------------------------------
function makeRequestResult(url, parameters) {
  http_request_res = false;
  if (window.XMLHttpRequest) { // Mozilla, Safari,...
     http_request_res = new XMLHttpRequest();
     if (http_request_res.overrideMimeType) {
     	// set type accordingly to anticipated content type
        //http_request.overrideMimeType('text/xml');
        http_request_res.overrideMimeType('text/html');
     }
  } else if (window.ActiveXObject) { // IE
     try {
        http_request_res = new ActiveXObject("Msxml2.XMLHTTP");
     } catch (e) {
        try {
           http_request_res = new ActiveXObject("Microsoft.XMLHTTP");
        } catch (e) {}
     }
  }
  if (!http_request_res) {
     alert('Cannot create XMLHTTP instance');
     return false;
  }
  
  http_request_res.open("POST", url, true);

  //Send the proper header information along with the request
  http_request_res.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
  http_request_res.setRequestHeader("Content-length", parameters.length);
  http_request_res.setRequestHeader("Connection", "close");
  
  http_request_res.onreadystatechange = alertContentsResult;
  http_request_res.send(parameters);
}

function alertContentsResult() {
  if (http_request_res.readyState == 4) {
     if (http_request_res.status == 200) {
        //alert(http_request.responseText);
        result_res = http_request_res.responseText;
        $('selectbox-rightcontent').innerHTML = result_res;
     } else {
        alert('There was a problem with the request.');
     }
  }
}
// ---------------------------------------------
//  detail
// ---------------------------------------------
function makeRequestDetail(url, parameters) {
  http_request_detail = false;
  if (window.XMLHttpRequest) { // Mozilla, Safari,...
     http_request_detail = new XMLHttpRequest();
     if (http_request_detail.overrideMimeType) {
     	// set type accordingly to anticipated content type
        //http_request.overrideMimeType('text/xml');
        http_request_detail.overrideMimeType('text/html');
     }
  } else if (window.ActiveXObject) { // IE
     try {
        http_request_detail = new ActiveXObject("Msxml2.XMLHTTP");
     } catch (e) {
        try {
           http_request_detail = new ActiveXObject("Microsoft.XMLHTTP");
        } catch (e) {}
     }
  }
  if (!http_request_detail) {
     alert('Cannot create XMLHTTP instance');
     return false;
  }
  
  http_request_detail.open("POST", url, true);

  //Send the proper header information along with the request
  http_request_detail.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
  http_request_detail.setRequestHeader("Content-length", parameters.length);
  http_request_detail.setRequestHeader("Connection", "close");
  
  http_request_detail.onreadystatechange = alertContentsDetail;
  http_request_detail.send(parameters);
}

function alertContentsDetail() {
  if (http_request_detail.readyState == 4) {
     if (http_request_detail.status == 200) {
        //alert(http_request.responseText);
        result_detail = http_request_detail.responseText;
        $('leftcontent_default').innerHTML = result_detail;
        evalScripts(result_detail);  
     } else {
        alert('There was a problem with the request.');
     }
  }
}


function FillSelections(prop, value, object, page){
  var getstr = "?post=true&activeobject="+object+"&page="+page+"&";
  
  getstr += encodeURIComponent(prop) + "=" + encodeURIComponent(value);  
    
  makeRequestSelection('./objects/fillselections.php', getstr);
  makeRequestResult('./objects/fillresults.php', getstr);  
  }
function FillSelectionsContact(prop, value, object){
  var getstr = "?post=true&activeobject="+object+"&";  
  getstr += encodeURIComponent(prop) + "=" + encodeURIComponent(value);      
  makeRequestSelection('./objects/fillselectionscontact.php', getstr);
  }  
function GetDetail(prop, value, object, page, elem){
  var getstr = "?post=true&activeobject="+object+"&page="+page+"&elem="+elem+"&";  
  getstr += encodeURIComponent(prop) + "=" + encodeURIComponent(value);      
  makeRequestDetail('./objects/_detailpage.php', getstr);
  }

function evalScripts(scripts)
{	try
	{	if(scripts != '')	
		{	var script = "";
			scripts = scripts.replace(/<script[^>]*>([\s\S]*?)<\/script>/gi, function(){
	       	                         if (scripts !== null) script += arguments[1] + '\n';
 	        	                        return '';});
			if(script) (window.execScript) ? window.execScript(script) : window.setTimeout(script, 0);
		}
		return false;
	}
	catch(e)
	{	alert(e)
	}
}