function hide(cat)
{
	document.getElementById("cat|"+cat).style.display="none";
}

function collapse(id_bloc)
{
	/*alert ("bloc : "+id_bloc);*/
	if(document.getElementById('bloc'+id_bloc).style.display=='none')
	{
		document.getElementById('bloc'+id_bloc).style.display='';
		document.getElementById('collapse'+id_bloc).src='images/collapse.png';
	}
	else
	{
		document.getElementById('bloc'+id_bloc).style.display='none';
		document.getElementById('collapse'+id_bloc).src='images/expand.png';
	}
}

function expand(category_links)
{
	/*alert ("bloc : "+category_links);*/
	if(document.getElementById('cat_'+category_links).style.display=='none')
	{
		document.getElementById('cat_'+category_links).style.display='';
		document.getElementById('expand'+category_links).src='images/collapse.png';
	}
	else
	{
		document.getElementById('cat_'+category_links).style.display='none';
		document.getElementById('expand'+category_links).src='images/expand.png';
	}
}

function SwitchSize(id_img, normal_w, normal_h, low_w, low_h)
{
	var curr_width = document.getElementById(id_img).width;
	var curr_height = document.getElementById(id_img).height;
	/*alert("WIDTH : " + curr_width + " HEIGHT : " + curr_height);*/
	if ((curr_width == low_w) && (curr_height == low_h)) // this is a "small" picture : upgrade size
	{
		document.getElementById(id_img).width = normal_w;
		document.getElementById(id_img).height = normal_h;
	}
	else // downgrade size
	{
		document.getElementById(id_img).width = low_w;
		document.getElementById(id_img).height = low_h;
	}
	
}

function popUp(URL)
{
	day = new Date();
	id = day.getTime();
	eval("page" + id + " = window.open(URL, '" + id + "', 'toolbar=0,scrollbars=1,location=0,statusbar=0,menubar=0,resizable=1,width=750,height=700');");
}

function SelectCode(bloc_id)
{
	document.getElementById(bloc_id).select();
}

function ajax(pseudo)
{
	if (pseudo != '')
	{
		var xhr;
		if (window.XMLHttpRequest)
		{
			xhr = new XMLHttpRequest();
		}
		else if (window.ActiveXObject)
		{
			xhr = new ActiveXObject("Microsoft.XMLHTTP");
		}

		//on appelle la fonction alert_bonjour(xhr) après l'appel du requete.php
		xhr.onreadystatechange = function() { alert_bonjour(xhr); };

		//on appelle le fichier requete.php 
		xhr.open("GET", "../lib/verif_pseudo.php?pseudo="+pseudo, true);
		xhr.send(null);
	}
}
    
function alert_bonjour(xhr)
{
    if (xhr.readyState==4)
    {
		//alert("REP : "+xhr.responseText);
		if (xhr.responseText==1)
		{
			//document.getElementById('blockdaffichage').innerHTML = "ce pseudo est deja pris"
			document.getElementById('form_login').className='cellerror';
			alert('Les initiales sont deja prises !');
		}
		else if(xhr.responseText==0)
		{
			document.getElementById('form_login').className='';		
			//document.getElementById('blockdaffichage').innerHTML = "ce pseudo est libre"
			//alert('Le pseudo est libre :)');			
		}
    }
}

function vote(fact_id, type_vote)
{
	//alert('FACT : ' + fact_id + ' TYPE VOTE : ' + type_vote);
	var url = 'ajax.php?act=vote';
	var httpRequest = false;

	if (window.XMLHttpRequest)
	{ // Mozilla, Safari,...
		httpRequest = new XMLHttpRequest();
		if (httpRequest.overrideMimeType)
		{
			httpRequest.overrideMimeType('text/xml');
			// Voir la note ci-dessous à propos de cette ligne
		}
	}
	else if (window.ActiveXObject)
	{ // IE
		try
		{
			httpRequest = new ActiveXObject("Msxml2.XMLHTTP");
		}
		catch (e)
		{
			try
			{
				httpRequest = new ActiveXObject("Microsoft.XMLHTTP");
			}
			catch (e) {}
		}
	}

	if (!httpRequest)
	{
		alert('Abandon :( Impossible de créer une instance XMLHTTP');
		return false;
	}

	httpRequest.onreadystatechange = function() { alertContents(httpRequest, fact_id); };
	httpRequest.open('GET', url + '&f=' + fact_id + '&' + type_vote, true);
	httpRequest.send(null);
	return true;
}

function alertContents(httpRequest, fact_id)
{
	//alert('RDY : ' + httpRequest.readyState + ' STATUS : ' +httpRequest.status);
	if (httpRequest.readyState == 4)
	{
		if (httpRequest.status == 200)
		{
			//alert(httpRequest.responseText);
			// Edit page content
			str = httpRequest.responseText;
			var tab = str.split('|');

			document.getElementById('vote_plus_' + fact_id).innerHTML = '';
			document.getElementById('vote_moins_' + fact_id).innerHTML = '';
			document.getElementById('votes_' + fact_id).innerHTML = tab[0];
			document.getElementById('points_' + fact_id).innerHTML = tab[1];
		}
		else
		{
			alert('Un problème est survenu avec la requête.');
		}
	}
}


function ajax_ts(timestamp)
{
	var ts = parseInt(timestamp);
	//alert('FACT : ' + ts);
	var url = 'ajax.php?act=ts';
	var httpRequest = false;

	if (window.XMLHttpRequest)
	{ // Mozilla, Safari,...
		httpRequest = new XMLHttpRequest();
		if (httpRequest.overrideMimeType)
		{
			httpRequest.overrideMimeType('text/xml');
			// Voir la note ci-dessous à propos de cette ligne
		}
	}
	else if (window.ActiveXObject)
	{ // IE
		try
		{
			httpRequest = new ActiveXObject("Msxml2.XMLHTTP");
		}
		catch (e)
		{
			try
			{
				httpRequest = new ActiveXObject("Microsoft.XMLHTTP");
			}
			catch (e) {}
		}
	}

	if (!httpRequest)
	{
		alert('Abandon :( Impossible de créer une instance XMLHTTP');
		return false;
	}

	httpRequest.onreadystatechange = function() { alertAjax_ts(httpRequest, ts); };
	httpRequest.open('GET', url + '&ts=' + ts, true);
	httpRequest.send(null);
	return true;
}

function alertAjax_ts(httpRequest, timestamp)
{
	//alert('RDY : ' + httpRequest.readyState + ' STATUS : ' +httpRequest.status);
	if (httpRequest.readyState == 4)
	{
		if (httpRequest.status == 200)
		{
			//alert(httpRequest.responseText);
			// Edit page content
			str = httpRequest.responseText;
			var dateheure = str.split('|');

			document.getElementById('ajax_code_err').innerHTML = timestamp;
			document.getElementById('ajax_timestampreverse').innerHTML = str;
			//document.getElementById('votes_' + fact_id).innerHTML = tab[0];
			//document.getElementById('points_' + fact_id).innerHTML = tab[1];
		}
		else
		{
			alert('Un problème est survenu avec la requête.');
		}
	}
}


function ajax_md5(hash)
{
	//alert('FACT : ' + ts);
	var url = 'ajax.php?act=md5';
	var httpRequest = false;

	if (window.XMLHttpRequest)
	{ // Mozilla, Safari,...
		httpRequest = new XMLHttpRequest();
		if (httpRequest.overrideMimeType)
		{
			httpRequest.overrideMimeType('text/xml');
			// Voir la note ci-dessous à propos de cette ligne
		}
	}
	else if (window.ActiveXObject)
	{ // IE
		try
		{
			httpRequest = new ActiveXObject("Msxml2.XMLHTTP");
		}
		catch (e)
		{
			try
			{
				httpRequest = new ActiveXObject("Microsoft.XMLHTTP");
			}
			catch (e) {}
		}
	}

	if (!httpRequest)
	{
		alert('Abandon :( Impossible de créer une instance XMLHTTP');
		return false;
	}

	httpRequest.onreadystatechange = function() { alertAjax_md5(httpRequest, hash); };
	httpRequest.open('GET', url + '&hash=' + hash, true);
	httpRequest.send(null);
	return true;
}

function alertAjax_md5(httpRequest, hash)
{
	//alert('RDY : ' + httpRequest.readyState + ' STATUS : ' +httpRequest.status);
	if (httpRequest.readyState == 4)
	{
		if (httpRequest.status == 200)
		{
			//alert(httpRequest.responseText);
			// Edit page content
			str = httpRequest.responseText;
			var mdp = str.split('--|--');

			document.getElementById('ajax_md5_ini').innerHTML = mdp[0];
			document.getElementById('ajax_md5_fin').innerHTML = mdp[1];
			//document.getElementById('votes_' + fact_id).innerHTML = tab[0];
			//document.getElementById('points_' + fact_id).innerHTML = tab[1];
		}
		else
		{
			alert('Un problème est survenu avec la requête.');
		}
	}
}
