var $xml_http;
var $update_element;
var AJAX=true;

function ajax_init(){
if(window.XMLHttpRequest){
   $xml_http=new XMLHttpRequest();
   if(!$xml_http){ return false; }
	 return true;
} else if (window.ActiveXObject){
   $xml_http=new ActiveXObject("Microsoft.XMLHTTP");
   if(!$xml_http){ return false; }
	 return true;
}
return false;
}

function ajax_do($url,$handler,$method,$params){
if(!$method){ $method='GET' }
$xml_http.onreadystatechange=$handler;
$xml_http.open($method,$url,true);
if($method=='POST'){
   $xml_http.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
   $xml_http.setRequestHeader("Content-length",$params.length);
   $xml_http.setRequestHeader("Connection", "close");
   $xml_http.send($params);
	 return true;
}else{
   if(window.XMLHttpRequest){
      $xml_http.send(null);
			return true;
   }else if(window.ActiveXObject){
      $xml_http.send();
      return true;
	 }
}
return false;
}

function ajax_post($url,$handler,$qstr){
	 if(!ajax_init()){ return true; }
	 $res=ajax_do($url,$handler,'POST',$qstr);
	 if(!$res) { return true; }
   return false;
}

function ajax_get($url,$handler){
	 if(!ajax_init()){ return true; }
	 $res=ajax_do($url,$handler,'GET');
	 if(!$res) { return true; }
   return false;
}

function ajax_execute($elem_id,$to_id,$ajax_script){
   if(!AJAX) { return true; }

   $update_element=$to_id;
	 $elem=document.getElementById($elem_id);
	 $path='inc/ajax/'+$ajax_script+'.php';
   $qstr='';

	 if($elem.href){
			$href=$elem.href;
			$bits=$href.split('?');
			if($bits[1]){ $qstr='?'+$bits[1]; }
			$normal=ajax_get(ROOTURL+$path+$qstr,ajax_update);
			if($normal){ return true; }
			return false;
	 }else if($elem.elements){
	    var $num=0;
	    $elems=$elem.elements;
      var $fields=new Array();
	    for($i=0;$i<$elems.length;$i++){
			   $this_key=$elems[$i].id;
			   $this_value=$elems[$i].value;
				 if($elem_id){
				    $fields[$num]=$this_key+'='+encodeURI($this_value);
						$num++;
				 }
			}
			if($fields.length){ $qstr=$fields.join('&'); }
      $normal=ajax_post(ROOTURL+$path,ajax_update,$qstr);
			if($normal){ return true; }
			return false;
	 }
}

function ajax_update(){ 
if ($xml_http.readyState==4 || $xml_http.readyState==200){
   document.getElementById($update_element).innerHTML=$xml_http.responseText;
}
}