var objid = new Array();
var isv = new Array();

function RateIt(oid,t)
{
	document.getElementById("rateit-"+oid).innerHTML = loading;
	objid[oid] = new ajaxObject('hiddenl', rate_url);
	objid[oid].callback = function() { rated(oid); }  
	objid[oid].update('id='+oid+'&t='+t);
} 

function rated(oid)
{
	var res = document.getElementById('hiddenl').innerHTML;
	if (res != "-1")
	{
		document.getElementById("ratespan-"+oid).innerHTML = res;
		document.getElementById("rateit-"+oid).innerHTML = rated_t;
	}else{
		document.getElementById("rateit-"+oid).innerHTML = error_t;
	}
}


function reload_captcha()
{
	document.getElementById('captcha').src = "include/CaptchaSecurityImages.php?r="+Math.random()*9999999;
	document.getElementById('no_security_code').value="";
	document.getElementById('no_security_code_comment').innerHTML = "&nbsp;";
	document.getElementById('user_signup_submit').disabled = "disabled";
}

function Ajax(url,parameters,oid)
{
	objid[oid] = new ajaxObject(oid, url);
	objid[oid].update(parameters);
} 

function Ajax2(url,parameters,oid)
{
	objid[oid] = new ajaxObject('hiddenl', url);
	objid[oid].callback = function() { pageChanged(oid); }  
	objid[oid].update(parameters);
} 

function pageChanged(oid)
{
	var acts = new Array();
	var data = new Array();
	var res = "";
	res = document.getElementById('hiddenl').innerHTML;
	acts = res.split("##",5);
	for (var i = 0; i <= acts.length - 1; i++)
	{
		data = acts[i].split("@",2);
		switch (data[1].substr(0,1))
		{
			case "!" :
			document.getElementById(data[0]).innerHTML = data[1].substr(1);
			break;
			case "$" :
			Ajax(data[1].substr(1),"",data[0]);
			break;
			default :
			//
		}
	}
}

function stateChanged(oid,fid) 
{
	var res = document.getElementById('hiddenl').innerHTML;
	if (res != "")
	{
		document.getElementById(oid+"_tr").className="notValid";
		document.getElementById(oid+"_comment").innerHTML = res;
		//isvalid[LayerID]=0;
	}else{
		//alert(document.getElementById('hiddenl').innerHTML);
		document.getElementById(oid+"_tr").className="";
		document.getElementById(oid+"_comment").innerHTML = "";
	}
	var completed = true;
	var x = document.getElementById(fid);
	for (var i=0; i < x.length; i++)
	{
		if (document.getElementById(x[i].id + "_comment").innerHTML != "")
			completed = false;
	}
	
	if (completed == true)
	{
		document.getElementById(fid + "_submit").disabled = "";
		document.getElementById(fid + "_submit").focus();
	}else{
		document.getElementById(fid + "_submit").disabled = "disabled";
	}
}


function ajaxObject(layer, url) {
	var that=this;
	var updating = false;
	this.callback = function() {}
	
	this.update = function(passData) {
	if (updating==true) { return false; }
	updating=true;
	var AJAX = null;
	try
	{
		// Firefox, Opera 8.0+, Safari
		AJAX=new XMLHttpRequest();
	}
	catch (e)
	{
		// Internet Explorer
		try
		{
			AJAX=new ActiveXObject("Msxml2.XMLHTTP");
		}
		catch (e)
		{
			AJAX=new ActiveXObject("Microsoft.XMLHTTP");
		}
	}

	if (AJAX==null) {
		alert("Your browser doesn't support AJAX.");
		return false
	} else {
		AJAX.onreadystatechange = function() {
		if (AJAX.readyState==4 || AJAX.readyState=="complete") {
			document.getElementById(LayerID).innerHTML=AJAX.responseText;
			delete AJAX;
			updating=false;
			that.callback();
		}
	}
	AJAX.open("POST",urlCall,true);
	AJAX.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	AJAX.setRequestHeader("Content-length", passData.length);
	AJAX.setRequestHeader("Connection", "close");
	AJAX.send(passData);
	return true;
	}
	}

	var LayerID = layer;
	var urlCall = url;
}