try 
{
	http = new XMLHttpRequest(); /* e.g. Firefox */
} 
catch(e) 
{
	try 
	{
    	http = new ActiveXObject("Msxml2.XMLHTTP"); 
  	}
	catch (e) 
	{
    	try 
		{
    		http = new ActiveXObject("Microsoft.XMLHTTP");  /* some versions IE */
    	} 
		catch (E) 
		{
			http = false;
		} 
	} 
}

function ChangeStatus(url, status, id) // url = xyz.php?mode=
{
	var url_str = url+"&";
	var myRandom=parseInt(Math.random()*99999999);  // cache buster

	http.open("GET", url_str +"status="+status+"&id="+id+"&rand=" + myRandom, true);
	//alert(url_str +"status="+status+"&id="+id);
	http.onreadystatechange = handleHttpStatusResponse;
	http.send(null);
}

function handleHttpStatusResponse()	// return type flag~id~display string
{
	if (http.readyState == 4)
	{
		 //alert(':'+http.responseText);
		if(http.responseText!='false') // only if successful...
		{
			results = http.responseText.split("~");
			result_len = results.length;

			var id = results[1];
			var img_str = results[2];
			var result_str = results[3];
			var mode = (result_len >= 5)? results[4]+"_": "";
			document.getElementById(mode+"status_"+id).innerHTML=img_str;
			JQueryNotify(result_str,'warning',false);
		}
  	}
}

function ChangeImgStat(url, status, pc_id, a_id) // url = xyz.php?mode=
{
	var url_str = url+"&";
	var myRandom=parseInt(Math.random()*99999999);  // cache buster

	http.open("GET", url_str+"status="+status+"&pc_id="+pc_id+"&a_id="+a_id+"&rand=" + myRandom, true);
	// alert(url_str +"status="+status+"&id="+id);
	http.onreadystatechange = handleHttpImgStatResponse;
	http.send(null);
}

function handleHttpImgStatResponse()	// return type flag~id~display string
{
	if (http.readyState == 4)
	{
		if(http.responseText!='false') // only if successful...
		{
			results = http.responseText.split("~");
			result_len = results.length;

			var pc_id = results[1];
			var a_id = results[2];
			var img_str = results[3];
			
			document.getElementById("stat_"+a_id).innerHTML=img_str;
			//JQueryNotify(result_str,'warning',false);
		}
  	}
}

function handleHttpPostResponse() 
{
	if (http.readyState == 4) 
	{
		//alert(http.responseText);
		results = http.responseText.split("~");

		str = results[1];
		div_nm = results[2];
		
		if(results[0] && document.getElementById(div_nm))	//SUCCESFULL IN UPDATING
			document.getElementById(div_nm).innerHTML=str;
  	}
}

function handleHttpEditResponse()
{
	if (http.readyState == 4) 
	{
		//alert(http.responseText);
		results = http.responseText.split("~");
		
		ctrl_str = results[1];
		frm_nm = results[2];

		var frm = eval("document."+frm_nm);

		if(results[0] && frm)	//SUCCESFULL IN RETRIEVING DATA
		{
			ctrl_arr = ctrl_str.split(';;');

			for(var i=0; i < ctrl_arr.length; i++)
			{
				ctrl = ctrl_arr[i].split('==');
				
				if(ctrl.length == 3)
				{
					var ctrl_name = eval("frm."+ctrl[0]);
					var ctrl_val = ctrl[1];
					var ctrl_type = ctrl[2];

					//alert(ctrl[0]+ " >> " + ctrl_name + " " +ctrl_name.name + " " + ctrl_name.type + " : " + ctrl_val + " : " + ctrl_name.value);

					switch (ctrl_type) 
					{						
						case 'txt':
							ctrl_name.value = ctrl_val;
							break;
						case 'cmb':
							for(var r=0; r < ctrl_name.length; r++)
								if(ctrl_name[r].value == ctrl_val)
								{
									ctrl_name.selectedIndex = r;
									break;
								}
							
							break;
						case 'chk':
							ctrl_name.checked = (ctrl_name.value == ctrl_val)? true: false;
							break;
						case 'rd':
							for(var r=0; r < ctrl_name.length; r++)
								if(ctrl_name[r].value == ctrl_val)
								{
									ctrl_name[r].checked = true;
									break;
								}

							break;
					}
				}
				else
					alert("Invalid or Corrupted Data Retrieved!\nPlease Refresh the Page and Retry.");
			}
		}
  	}
}

function ChangeVis(url, status) // url = xyz.php?mode=
{
	var url_str = url+"?mode=V&";
	var myRandom=parseInt(Math.random()*99999999);  // cache buster

	//alert(url_str+"status="+status+"&id="+id+"&rand=" + myRandom);
	http.open("GET", url_str +"status="+status+"&rand=" + myRandom, true);
	http.onreadystatechange = handleChangeVisResponse;
	http.send(null);
}

function handleChangeVisResponse()	// return type flag~id~display string
{
	if (http.readyState == 4)
	{

  	}
}

function UpdateRank(str,rank, id)
{
	//var rank = obj.value;
	var url_str = '../includes/ajax.inc.php?response='+str+'_RANK&id='+id+'&rank='+rank;
	var myRandom=parseInt(Math.random()*99999999);  // cache buster

	//alert(url_str+"status="+status+"&id="+id+"&rand=" + myRandom);
	http.open("POST", url_str+"&rand=" + myRandom, true);
	http.onreadystatechange = handleHttpSilentResponse;
	http.send(null);	// */
}
function handleHttpSilentResponse() // success! now don't do nething!
{
	if (http.readyState == 4) 
	{
		 //alert(http.responseText);
  	}
}

function FormData2QueryString(docForm) 
{
	var strSubmit       = '';
	var formElem;
	var strLastElemName = '';

	for (i = 0; i < docForm.elements.length; i++) 
	{
		formElem = docForm.elements[i];
		switch (formElem.type) 
		{
			// Text, select, hidden, password, textarea elements
			case 'text':
			case 'select-one':
			case 'hidden':
			case 'password':
			case 'file':
			case 'textarea':
				strSubmit += formElem.name + '=' + escape(formElem.value) + '&';
				break;
			case 'checkbox':
				if(formElem.checked)
					strSubmit += formElem.name + '=' + escape(formElem.value) + '&';
				break;
			case 'radio':
				if(formElem.checked)
					strSubmit += formElem.name + '=' + escape(formElem.value) + '&';
				break;
		}
	}
	
	return strSubmit;
}
function ChangeStatusFeat(url, status, id) // url = xyz.php?mode=
{
	var url_str = url+"&";
	var myRandom=parseInt(Math.random()*99999999);  // cache buster

	//alert(url_str+"status="+status+"&id="+id+"&rand=" + myRandom);
	http.open("POST", url_str +"status="+status+"&id="+id+"&rand=" + myRandom, true);
	http.onreadystatechange = handleHttpStatusFeatResponse;
	http.send(null);
}

function handleHttpStatusFeatResponse()	// return type flag~id~display string
{	
	if (http.readyState == 4)
	{
		//alert(http.responseText);
		results = http.responseText.split("~");
		result_len = results.length;

		if(results[0]==1) // only if successful...
		{
			var id = results[1];
			var img_str = results[2];
			var mode = (result_len >= 4)? results[3]+"_": "";
	
			//if(results[0])	//SUCCESFULL IN UPDATING
			document.getElementById(mode+"status_"+id).innerHTML=img_str;
		}
  	}
}

function insertdetails(name,email)
{
	var myRandom=parseInt(Math.random()*99999999);  // cache buster
	var url_str = 'newsletter.php?subscribe=SUBSCRIBE&name='+name+'&mail='+email+"&rand=" + myRandom;
	
	//alert(url_str);
	http.open("GET", url_str, true);
	http.onreadystatechange = function() {
		if (http.readyState == 4)
		{
			//alert(http.responseText);
			document.getElementById('newserror').innerHTML = http.responseText;
			//document.getElementById('package_tr').style.display = '';
			//alert(http.responseText);
		}	
	};
	http.send(null);	// */
}

