/**
 * @file javascript.js
 * @date 20090509
 * @author drjackzon@gmail.com
 *
 * @brief Funciones javascript para el frikitest.net
 *
 */

// SUB

 function sub (lang)
 {
 	// Texto en la barra de estado (status·bar)
 	window.status=" El FrikiTest ::: frikitest.net ";
 	
	// Enlaces de class=external >> abrirse en nueva pestaña[tab]/ventana
	var className 	= 'external';
	var vinculos 	= document.getElementsByTagName('a');
	
	for(i=0;i<vinculos.length;i++)
	{
		var a = vinculos[i];
		var r = new RegExp("(^| )"+className+"($| )");
		
		if(r.test(a.className)) 
		{
			a.onclick = function()
			{
				window.open(this.href);
				return false;
			 }
		}
	}
	
	document.getElementById('menu_form').reset(); 
 } 
 
/* AgregarFavorito (para IE) */
 function AgregarFavorito() 
 {
	var titulo 	= "FrikiTest.net";
	var url 		= "http://www.frikitest.net/";

	window.external.AddFavorite(url, titulo); 
 } 

 function AgregarMarcador()
 {
 	alert ("Para poder agregar este sitio a marcadores \n has de pulsar a la vez [Ctrl] + D \n\nLuego de hacer clic en \"Aceptar\", por supuesto... ");
 }

// VER
 function marcadas (formulario)
 {
	var puntos 		= 0;
	var resultado 	= 0;
	var decimales 	= 7;
	var porcentaje = 0;	
	// menos 1, por el button, que es elemento pero no pregunta.	
	var num 			= formulario.elements.length-1; 
	
	for (i=0; i<num ; i++)	
	{
		if (formulario.elements[i].checked == true)
		{
			puntos += 1;
		}
	}
	
	resultado = (puntos/num) * 100;	porcentaje = Math.round (resultado * Math.pow (10, decimales)) / Math.pow (10, decimales);

	document.forms.form_botonera.porcentaje.value 	= porcentaje + ' %'; 
	document.forms.form_botonera.resultado.value 	= EscribirResultado (porcentaje);
	
}

// RESULTADO

 function EscribirResultado (porcentaje)
 {
	var descriptor = 'Normal (pasable)';

	if (porcentaje < 0) 		{ return         'Maldito anti-frikis!' };
	if (porcentaje == 0)		{ descriptor =   'Responde alguna!'};
	if (porcentaje > 9)  	{ descriptor =   'Tendencias Frikis'};
	if (porcentaje > 15) 	{ descriptor =   'Friki'};
	if (porcentaje > 25) 	{ descriptor =   'Friki Total'};
	if (porcentaje > 35) 	{ descriptor =   'Gran Friki'};
	if (porcentaje > 45) 	{ descriptor =   'Sper Friki'};
	if (porcentaje > 55) 	{ descriptor =   'Extremadamente Friki'};
	if (porcentaje > 65) 	{ descriptor =   'El dios Friki'};
	if (porcentaje > 80) 	{ descriptor =   'Acude al psiquiatra'};
	if (porcentaje == 100) 	{ descriptor =   'TRAMPOSO!'};

	return descriptor;
}

// Activar/desactivar MENU

	function marcaCat(marcada, celda)
	{
		/*	"marcada" indica si esta o no seleccionada (para el caso de clic directo, recibe opuesto) */
		
		if (marcada) 
		/* si NO estaba seleccionada, la pinta de verde */
		{
			celda.style.border = '6px #009922 solid';
			celda.style.background = '#daead2';
		}
		else
		{
			celda.style.border = '6px #ffffff solid';
			celda.style.background = '#ffffff';
		}
	
	} 
	
	function marcarCategoria (opt, cat)
	{
		/* opt:
			 true  = se activa porque se hizo clic en el checkbox 
			 false = se activa por hacer clic en el dibujito
		*/ 
		
		var celda = document.getElementById(cat+'td');
		var chkbx = document.getElementById(cat+'cb');
	
		var marcada = chkbx.checked;
		

		/* DESMARCAR */
		if ((!marcada & opt) || (marcada & !opt))
		{
			if (!opt)
			{ 
				chkbx.checked = !marcada;
				marcaCat(!marcada, celda);
			}
			else
			{				 
				marcaCat(marcada, celda);
			}
			// alert ("desmarcada!");
		}
		/* SELECCIONAR */
		else
		{
			if (!opt)
			{
				chkbx.checked = !marcada;
				marcaCat(!marcada, celda);
			}
			else
			{
				marcaCat(marcada, celda);
			}	 
			// alert ("seleccionada!");			
		}
		
		
	}

	
	function marcarTodos (opt)
	{
		
	}
 
 