/*ajax.js*/

var xmlHttp;
var div;
function GetXmlHttpObject()
{
	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 AjaxRequest( id, page, target )
{
	//alert(id + " " + page + " " + target);
	div = target;
	if (id.length==0)
	{ 
		document.getElementById(div).innerHTML="";
		return;
	}
	document.getElementById(div).innerHTML="<div style='text-align: center'><img src='./images/loader.gif'><br />Ladataan...</div>";
	xmlHttp=GetXmlHttpObject();
	if (xmlHttp==null)
	{
		alert ("Browser does not support HTTP Request");
		return;
	} 
	var url= page + ".php";
	var parameters = "id="+id;
	parameters = parameters+"&sid="+Math.random();
	xmlHttp.onreadystatechange=stateChanged ;
	xmlHttp.open("POST",url,true);
	xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
    xmlHttp.setRequestHeader("Content-length", parameters.length);
    xmlHttp.setRequestHeader("Connection", "close");
	xmlHttp.send(parameters);	
}

// tämä on ihan minkä vaan formin lähettämiseen tarkoitettu
function PostForm(form, page, targetdiv)
{
	//alert(form + " " + page + " " +targetdiv);
	div = targetdiv;
	var parameters = get_parameters(form);
	//alert(parameters);
	document.getElementById(div).innerHTML = "<div style='text-align: center'><img src='./images/loader.gif'><br />Ladataan...</div>";
	xmlHttp=GetXmlHttpObject();
	if (xmlHttp==null)
	{
		alert ("Browser does not support HTTP Request");
		return;
	} 
	var url= page + ".php";
	//url=url+"&sid="+Math.random();		
	xmlHttp.onreadystatechange=stateChanged ;
	xmlHttp.open("POST",url,true);
	xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
    xmlHttp.setRequestHeader("Content-length", parameters.length);
    xmlHttp.setRequestHeader("Connection", "close");
	xmlHttp.send(parameters);	

}
// tämä on ihan minkä vaan formin lähettämiseen tarkoitettu
function PreviewForm(form, page, targetdiv)
{
	//alert(form + " " + page + " " +targetdiv);
	div = targetdiv;
	var parameters = get_parameters(form);
	parameters = parameters + "preview=1";
	document.getElementById(div).innerHTML = "<div style='text-align: center'><img src='./images/loader.gif'><br />Ladataan...</div>";
	xmlHttp=GetXmlHttpObject();
	if (xmlHttp==null)
	{
		alert ("Browser does not support HTTP Request");
		return;
	} 
	var url= page + ".php";
	//url=url+"&sid="+Math.random();		
	xmlHttp.onreadystatechange=stateChanged ;
	xmlHttp.open("POST",url,true);
	xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
    xmlHttp.setRequestHeader("Content-length", parameters.length);
    xmlHttp.setRequestHeader("Connection", "close");
	xmlHttp.send(parameters);	

}
function HakuRequest( hakusana, sivu, pid )
{
	//alert("hakusana " + hakusana + " sivu " + sivu + " pid " + pid);
	div = "hakutulos";
	if (sivu.length==0)
	{ 
		document.getElementById(div).innerHTML="";
		return;
	}
	document.getElementById(div).innerHTML="<div style='text-align: center'><img src='./images/loader.gif'><br />Ladataan...</div>";
	xmlHttp=GetXmlHttpObject();
	if (xmlHttp==null)
	{
		alert ("Browser does not support HTTP Request");
		return;
	} 
	var url= sivu + ".php";
	url=url+"?hakusana="+hakusana;
	url=url+"&pid="+pid;
	url=url+"&sid="+Math.random();
	xmlHttp.onreadystatechange=stateChanged ;
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);
}

function KunnanSalit(pid, target)
{
	//alert('kunnansalit ' + ' pid ' + pid + ' target ' + target);
	div = "paikkakunnansalit" +target;
	if (pid.length==0)
	{ 
		document.getElementById(div).innerHTML="";
		return;
	}
	document.getElementById(div).innerHTML="<div style='text-align: center'><img src='./images/loader.gif'><br />Ladataan...</div>";
	xmlHttp=GetXmlHttpObject();
	if (xmlHttp==null)
	{
		alert ("Browser does not support HTTP Request");
		return;
	} 
	var url = "paikkakunnansalit.php";	
	url=url+"?pid="+pid;
	url=url+"&sid="+Math.random();
	xmlHttp.onreadystatechange=stateChanged ;
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);
}
function NaytaAlivalikko(kid)
{
	//alert('ohjelmat ' + ' kid ' + kid);
	div = "valikko";
	if (kid.length==0)
	{ 
		document.getElementById(div).innerHTML="";
		return;
	}
	document.getElementById(div).innerHTML="<div style='text-align: center'><img src='./images/loader.gif'><br />Ladataan...</div>";
	xmlHttp=GetXmlHttpObject();
	if (xmlHttp==null)
	{
		alert ("Browser does not support HTTP Request");
		return;
	} 
	var url = "ohjelmat_valikko.php";	
	url=url+"?kid="+kid;
	url=url+"&sid="+Math.random();
	xmlHttp.onreadystatechange=stateChanged ;
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);
}

function NaytaOhjelma(oid, target)
{
	//alert('ohjelmat ' + ' kid ' + oid + ' target ' + target);
	div = target;
	if (oid.length==0)
	{ 
		document.getElementById(div).innerHTML="";
		return;
	}
	document.getElementById(div).innerHTML="<div style='text-align: center'><img src='./images/loader.gif'><br />Ladataan...</div>";
	xmlHttp=GetXmlHttpObject();
	if (xmlHttp==null)
	{
		alert ("Browser does not support HTTP Request");
		return;
	} 
	var url = "ohjelma.php";	
	url=url+"?oid="+oid;
	url=url+"&sid="+Math.random();
	xmlHttp.onreadystatechange=stateChanged ;
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);
}
/*arvosteluformin käsittely */
function show_form(id)
{
	div = "arvostelut";
	document.getElementById(div).innerHTML = "<div style='text-align: center'><img src='./images/loader.gif'><br />Ladataan...</div>";
	//alert('id ' + id);
	if (id.length==0)
	{ 
		document.getElementById(div).innerHTML="";
		return;
	}
	xmlHttp=GetXmlHttpObject();
	if (xmlHttp==null)
	{
		alert ("Browser does not support HTTP Request");
		return;
	} 
	var url="sali_arvostelu_form.php";
	var parameters = "sali_id=" + id;
	//url=url+"&sid="+Math.random();		
	xmlHttp.onreadystatechange=stateChanged ;
	xmlHttp.open("POST",url,true);
	xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
    xmlHttp.setRequestHeader("Content-length", parameters.length);
    xmlHttp.setRequestHeader("Connection", "close");
	xmlHttp.send(parameters);	
} 

/* vastaus */
function stateChanged() 
{ 
	
	if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
	{ 
		document.getElementById(div).innerHTML=xmlHttp.responseText; 
	} 
}

function submit_form(form)
{
	div = "arvostelut";
	var parameters = get_parameters(form);
	document.getElementById(div).innerHTML = "<div style='text-align: center'><img src='./images/loader.gif'><br />Ladataan...</div>";
	xmlHttp=GetXmlHttpObject();
	if (xmlHttp==null)
	{
		alert ("Browser does not support HTTP Request");
		return;
	} 
	var url="sali_arvostelu_form.php";
	//url=url+"&sid="+Math.random();		
	xmlHttp.onreadystatechange=stateChanged ;
	xmlHttp.open("POST",url,true);
	xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
    xmlHttp.setRequestHeader("Content-length", parameters.length);
    xmlHttp.setRequestHeader("Connection", "close");
	xmlHttp.send(parameters);	
	
	//AjaxRequest(id, "arvostelut", "salidiv");
}
function form_preview(form)
{
	div = "arvostelut";
	var parameters = "";
	parameters = get_parameters(form);
	parameters = parameters + "preview=1";
	//alert(parameters);
	xmlHttp=GetXmlHttpObject();
	if (xmlHttp==null)
	{
		alert ("Browser does not support HTTP Request");
		return;
	} 
	var url="sali_arvostelu_form.php";
	//url=url+"&sid="+Math.random();		
	xmlHttp.onreadystatechange=stateChanged ;
	xmlHttp.open("POST",url,true);
	xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
    xmlHttp.setRequestHeader("Content-length", parameters.length);
    xmlHttp.setRequestHeader("Connection", "close");
	xmlHttp.send(parameters);	
}
function pausecomp(millis)
{
	var date = new Date();
	var curDate = null;

	do { curDate = new Date(); }
	while(curDate-date < millis);
} 

function get_parameters(f)
{
	
	var form = document.getElementById(f);
	var parameters = "";
	for(var i = 0; i < form.elements.length; i++)
	{		
		if(form.elements[i].type == "radio")
		{
				if(form.elements[i].checked == true)
				{
					parameters += form.elements[i].name + "="
					parameters += encodeURIComponent(form.elements[i].value) + "&";
				}			
		}
		else
		{
			
			parameters += form.elements[i].name + "="
			if(form.elements[i].type == "text" || form.elements[i].type == "textarea" || form.elements[i].type == "button" || form.elements[i].type == "hidden")
			{
				parameters += encodeURIComponent(form.elements[i].value) + "&";
			}
			else if(form.elements[i].type == "checkbox")
			{
				parameters += encodeURIComponent(form.elements[i].checked) + "&";
			}
		
			else if(form.elements[i].type == "select-one")
			{
				parameters += encodeURIComponent(form.elements[i].options[form.elements[i].selectedIndex].value) + "&";
			}
		}
    }
	
	return parameters;
}

function LinkPost(parameterstring, page, target)
{
	var para_array = parameterstring.split("|");
	var parameters = "";
	for( var i = 0; i < para_array.length; i++)
	{
		parameters = parameters + para_array[i] + "&";
	}
	
	//alert(parameters);
	
	div = target;
	
	document.getElementById(div).innerHTML = "<div style='text-align: center'><img src='./images/loader.gif'><br />Ladataan...</div>";
	xmlHttp=GetXmlHttpObject();
	if (xmlHttp==null)
	{
		alert ("Browser does not support HTTP Request");
		return;
	} 
	var url= page + ".php";
	//url=url+"&sid="+Math.random();		
	xmlHttp.onreadystatechange=stateChanged ;
	xmlHttp.open("POST",url,true);
	xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
    xmlHttp.setRequestHeader("Content-length", parameters.length);
    xmlHttp.setRequestHeader("Connection", "close");
	xmlHttp.send(parameters);	
	
}

function asiaton_viesti(parameters)
{
	//alert(parameters);
	if(confirm('Haluatko ilmoittaa arvostelusta ylläpidolle?'))
	{
		xmlHttp=GetXmlHttpObject();
		if (xmlHttp==null)
		{
			alert ("Browser does not support HTTP Request");
			return;
		} 
		var url= "asiaton.php";
		//url=url+"&sid="+Math.random();		
		xmlHttp.onreadystatechange=stateChanged ;
		xmlHttp.open("POST",url,true);
		xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	    xmlHttp.setRequestHeader("Content-length", parameters.length);
	    xmlHttp.setRequestHeader("Connection", "close");
		xmlHttp.send(parameters);
		alert("Kiitos asiattoman viestin ilmoituksesta! Ylläpito tutkii viestin ja mahdollisesti poistaa sen palvelusta!");
	}
}

