// JavaScript Document


var xmlHttp

function ajaxListAction(process, id)
{
	xmlHttp=ajaxListGetXmlHttpObject();
	if (xmlHttp==null)
  {
  	alert ("Your browser does not support AJAX!");
  	return;
  } 
	var url="includes/ajaxList.ajax.php";
	url=url+"?process=" + process;
	url=url+"&id="+id;
	url=url+"&sid="+Math.random();
	xmlHttp.onreadystatechange=ajaxListStateChanged;
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);
}

function ajaxListGetFormValues(fobj,valFunc)
{
	var str = "";
	var valueArr = null;
  var val = "";
  var cmd = "";
  for(var i = 0;i < fobj.elements.length;i++)
  {
		//alert(fobj.elements[i].type);
		switch(fobj.elements[i].type)
    {
			case "text":
				if(valFunc)
				{
					//use single quotes for argument so that the value of
					//fobj.elements[i].value is treated as a string not a literal
					cmd = valFunc + "(" + 'fobj.elements[i].value' + ")";
					val = eval(cmd)
				}
				str += fobj.elements[i].name + "=" + escape(fobj.elements[i].value) + "&";
				break;
			case "hidden":
				if(valFunc)
				{
					//use single quotes for argument so that the value of
					//fobj.elements[i].value is treated as a string not a literal
					cmd = valFunc + "(" + 'fobj.elements[i].value' + ")";
					val = eval(cmd)
				}
				str += fobj.elements[i].name + "=" + escape(fobj.elements[i].value) + "&";
				break;
			case "textarea":
				if(valFunc)
				{
					//use single quotes for argument so that the value of
					//fobj.elements[i].value is treated as a string not a literal
					cmd = valFunc + "(" + 'fobj.elements[i].value' + ")";
					val = eval(cmd)
				}
				str += fobj.elements[i].name + "=" + escape(fobj.elements[i].value) + "&";
				break;
			case "select-one":
        str += fobj.elements[i].name + "=" + fobj.elements[i].options[fobj.elements[i].selectedIndex].value + "&";
				break;
			case "radio":
				if(fobj.elements[i].checked)
				{
					str += fobj.elements[i].name + "=" + escape(fobj.elements[i].value) + "&";
				}
				break;
		}
	}
  str = str.substr(0,(str.length - 1));
	return str;
}

function ajaxListGetXmlHttpObject()
{
	var xmlHttp=null;
	try
  {
  	// Firefox, Opera 8.0+, Safari
  	xmlHttp=new XMLHttpRequest();
  }
	catch (e)
  {
  	// Internet Explorer
  	try
    {
    	xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
    }
  	catch (e)
    {
    	xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
    }
  }
	return xmlHttp;
}

function ajaxListPaging(page)
{
	xmlHttp=ajaxListGetXmlHttpObject();
	if (xmlHttp==null)
  {
  	alert ("Your browser does not support AJAX!");
  	return;
  } 
	var url="includes/ajaxList.ajax.php";
	url=url+"?process=paging";
	url=url+"&page="+page;
	url=url+"&sid="+Math.random();
	xmlHttp.onreadystatechange=ajaxListStateChanged;
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);
}


function sub(f)
{
	var file = 'includes/ajaxList.ajax.php';
	var str = getFormValues(f,"");
	xmlReq = getXML(file,str);
}

function getXML(file,str)
{
	var doc = null
  if (typeof window.ActiveXObject != 'undefined' )
	{
		doc = new ActiveXObject("Microsoft.XMLHTTP");
    doc.onreadystatechange = displayState;
	}
	else
	{
		doc = new XMLHttpRequest();
		doc.onload = displayState;
	}
	doc.open("POST",file,true);
	doc.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=UTF-8");
  doc.send(str);
  return doc;
}
function ajaxListPOST(f, action)
{
	xmlHttp=ajaxListGetXmlHttpObject();
	if (xmlHttp==null)
  {
  	alert ("Your browser does not support AJAX!");
  	return;
  } 
	var url="includes/ajaxList.ajax.php";
	url=url+"?sid="+Math.random();
	var str='pet=dog';
	var str = ajaxListGetFormValues(f,"");
	str=str + "&ajaxListAction=" + action;
	xmlHttp.onreadystatechange=ajaxListStateChanged;
	xmlHttp.open("POST",url,true);
	xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=UTF-8"); 
	xmlHttp.send(str);
}

function ajaxPOST(a,b)
{
	xmlHttp=ajaxListGetXmlHttpObject();
	if (xmlHttp==null)
  {
  	alert ("Your browser does not support AJAX!");
  	return;
  } 
	var url="includes/ajaxList.ajax.php";
	url=url+"?sid="+Math.random();
	var str='pet=dog';
	var str = ajaxListGetFormValues(a,"");
	str=str + "&b=" + b;
	xmlHttp.onreadystatechange=ajaxPostStateChanged;
	xmlHttp.open("POST",url,true);
	xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=UTF-8"); 
	xmlHttp.send(str);
}

function ajaxPostStateChanged(div_id) 
{
	if (xmlHttp.readyState<4)
	{ 
		document.getElementById('ajaxResponse').innerHTML="Loading...";
	}
	if (xmlHttp.readyState==4)
	{ 
		document.getElementById('ajaxResponse').innerHTML=xmlHttp.responseText;
	}
}


function ajaxListSort(col)
{
	xmlHttp=ajaxListGetXmlHttpObject();
	if (xmlHttp==null)
  {
  	alert ("Your browser does not support AJAX!");
  	return;
  } 
	var url="includes/ajaxList.ajax.php";
	url=url+"?column="+col;
	url=url+"&process=sort";
	url=url+"&sid="+Math.random();
	xmlHttp.onreadystatechange=ajaxListStateChanged;
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);
}


function ajaxListStateChanged(div_id) 
{
	if (xmlHttp.readyState==4)
	{ 
		document.getElementById('ajaxListBody').innerHTML=xmlHttp.responseText;
	}
}


function ajaxSaveField(value, table, table_field, cond_field, cond_value, key, site_root, option)
{
	if(!empty(value))
	{
		value=base64_encode(value);
	}
	xmlHttp=ajaxListGetXmlHttpObject();
	if (xmlHttp==null)
  {
  	alert ("Your browser does not support AJAX!");
  	return;
  }
	var url=site_root + "includes/ajaxList.ajax.php";
	url=url+"?v="+value;
	url=url+"&t="+table;
	url=url+"&tf="+table_field;
	url=url+"&cf="+cond_field;
	url=url+"&process=saveField";
	url=url+"&cv="+cond_value;
	url=url+"&k="+key;
	url=url+"&o="+option;
	url=url+"&sid="+Math.random();
	xmlHttp.onreadystatechange=ajaxSaveStateChanged;
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);
}

function ajaxSaveStateChanged() 
{ 
	if (xmlHttp.readyState==0)
	{ 
		document.getElementById("ajaxSaveResponse").innerHTML="Saving";
	}
	if (xmlHttp.readyState==1)
	{ 
		document.getElementById("ajaxSaveResponse").innerHTML="Saving.";
	}
	if (xmlHttp.readyState==2)
	{ 
		document.getElementById("ajaxSaveResponse").innerHTML="Saving..";
	}
	if (xmlHttp.readyState==3)
	{ 
		document.getElementById("ajaxSaveResponse").innerHTML="Saving...";
	}
	if (xmlHttp.readyState==4)
	{ 
		document.getElementById("ajaxSaveResponse").innerHTML=xmlHttp.responseText;
		runCustomScripts();
	}
}


