//*****************************************************************
//*** Calculadora para la evaluación de WebQuest. Versión 1.3	***
//*** Por Francisco J. Calzado sobre una idea compartida		***
//*** con Miguel Lorenzo.										***
//*** --------------------------------------------------------- ***
//*** Puede utilizar gratuitamente este programa manteniendo	***
//*** intactos estos comentarios del principio, y bajo las		***
//*** condiciones enumeradas en la licencia Creative Commons	***
//*** http://creativecommons.org/licenses/by-nc-sa/2.1/es/		***
//*** --------------------------------------------------------- ***
//*** La versión 1.1 añade una alerta si el usuario deja		***
//*** en blanco alguna evaluación o introduce valores fuera		***
//*** del rango permitido										***
//*** --------------------------------------------------------- ***
//*** La versión 1.2 añade:										***
//*** 	a) Especificación de la variable que se ha dejado en 	***
//***		blanco o con valores fuera de rango.				***
//*** 	b) Botón que genera un informe de evaluación en una		***
//*** 		ventana nueva: el botón permancece inhabilitado 	***
//***		hasta que no hay valores en blanco/fuera de rango,	***
//***		asegurando que las variables de evaluación tienen	***
//***		un valor real.										***
//***	c) No se muestra la puntuación total de la evaluación,	***
//***		ni tampoco la valoración cualitativa (escasa		***
//***		consolidación, aprendizaje medio, etc.) hasta que	***
//***		deja de haber valores en blanco/fuera de rango.		***
//*** --------------------------------------------------------- ***
//*** La version 1.2.1 añade accesibilidad al informe de 		***
//***		evaluación generado dinámicamente:					***
//***	a) Teclas de acceso a los botones para imprimir y para	***
//***		cerrar la ventana.									***
//***	b) Atributo "title" a los botones para imprimir y para	***
//***		cerrar la ventana.									***
//***	c) Posibilidad de que la página generada dinámicamente	***
//***		con el informe de evaluación pueda leer la cookie	***
//***		con la información sobre el tamaño de texto (normal ***
//***		o grande) elegido por el usuario.					***
//*** --------------------------------------------------------- ***
//*** La version 1.3 añade las siguientes características:		***
//***	a) Introduce botones de tipo 'radio' para introducir	***
//***		los valores de evaluación, manteniendo la posibili-	***
//***		dad de introducir directamente los valores de eva-	***
//***		luacion en las cajas de texto. Ofreciendo la posi-	***
//***		bilidad de usar estos botones de tipo 'radio' se	***
//***		minimiza la probabilidad de que el usuario deje		***
//***		algun aspecto sin evaluar, y se anula la posibili-	***
//***		dad de que se introduzcan valores fuera de rango.	***
//***		Al mantenerse la opción de introducir los valores	***
//***		de evaluación escribiéndolos directamente en la		***
//***		caja de texto se facilita la tarea a las personas	***
//***		con discapacidad (utilizando las teclas de acceso). ***
//***	b) Se ha enriquecido presentación de los resultados del	***
//***		informe de evaluación con tres nuevas reglas en su	***
//***		hoja de estilos.									***
//*****************************************************************
//*****************************************//***	CONFIGURACIÓN DE VARIABLES		***
//*****************************************

//*************************************************
//***	PASO 1 DE 3: ASIGNACIÓN DE PESO A LOS	***
//***	DISTINTOS ASPECTOS DE LA EVALUACIÓN;	***
//***	INTRODUZCA SÓLO NÚMEROS ENTEROS QUE		***
//***	SUMEN 100 (CIEN)						***
//*************************************************
var pesodimension1="25" //*** Porcentaje de la puntuación total que representa el primer apartado ***
var pesodimension2="25" //*** Porcentaje de la puntuación total que representa el segundo apartado ***
var pesodimension3="25" //*** Porcentaje de la puntuación total que representa el tercer apartado ***
var pesodimension4="25" //*** Porcentaje de la puntuación total que representa el cuarto apartado ***

//*****************************************************
//***	PASO 2 DE 3: ESTABLECIMIENTO DE LÍMITES		*** 
//***	ENTRE LAS CUATRO CATEGORÍAS DE VALORACIÓN	***
//***	CUALITATIVA DEL NIVEL DE APRENDIZAJE		***
//***	EL TOTAL VARIA EN UNA ESCALA DE 0 A 10		***
//***	Ponga sólo valores entre 0 y 10 teniendo	***
//***	en cuenta que el valor que usted elija		***
//***	estará incluído en la valoración 			***
//***	cualitativa corrrespondiente. Por ejemplo	***
//***	un valor de "8" para la variable			***
//***	"limiteexcelencia" incluirá dentro de la	***
//***	categoría "EXCELENCIA EN EL APRENDIZAJE"	***
//***	las puntuaciones totales 8, 9 y 10			***
//*** ---------------------------------------------	***
//***			VALORES POR DEFECTO:				***
//***	4-7.999 	=> Escasa consolidación			***
//***	8-11.999 	=> Aprendizaje medio			***
//***	12-15.999	=> Buen aprendizaje				***
//***	16	    	=> Excelencia en el aprendizaje	***
//*****************************************************

var limiteexcelencia="16"	//*** Nota total a partir de la cual se considera que hay EXCELENCIA EN EL APRENDIZAJE ***
var limitebuenaprendizaje="12" //*** Nota total a partir de la cual se considera que hay BUEN APRENDIZAJE
var limiteaprendizajemedio="8" //*** Nota total a partir de la cual se considera que hay APRENDIZAJE MEDIO ***

//*****************************************************
//***	PASO 3 DE 3: Establecimiento de valores		*** 
//***	para cada uno de los posibles resultados	***
//***	de la evaluación para generar el informe	***
//*****************************************************

//*** Texto para la puntuación 1 (Escasa consolidación) de la primera dimensión a evaluar ***
var txtdimension11 = "<h2>1.&#8211; Primera dimensi&oacute;n a evaluar</h2> <p><strong>Escasa consolidaci&oacute;n:</strong> Descripci&oacute;n de un rendimiento identificable caracteristico de un nivel de aprendizaje insuficiente.</p>"
//*** Texto para la puntuación 2 (Aprendizaje medio) de la primera dimensión a evaluar ***
var txtdimension12 = "<h2>1.&#8211; Primera dimensi&oacute;n a evaluar</h2><p><strong>Aprendizaje medio:</strong> Descripci&oacute;n de un rendimiento identificable caracter&iacute;stico de un desarrollo y movimiento hacia la consecucion del aprendizaje.</p>"
//*** Texto para la puntuación 3 (Buen aprendizaje) de la primera dimensión a evaluar ***
var txtdimension13 = "<h2>1.&#8211; Primera dimensi&oacute;n a evaluar</h2><p><strong>Buen aprendizaje:</strong> Descripci&oacute;n de un rendimiento identificable caracter&iacute;stico de la consecuci&oacute;n del aprendizaje.</p>"
//*** Texto para la puntuación 4 (Excelencia en el aprendizaje) de la primera dimensión a evaluar ***
var txtdimension14 = "<h2>1.&#8211; Primera dimensi&oacute;n a evaluar</h2><p><strong>Excelencia en el aprendizaje:</strong> Descripci&oacute;n de un rendimiento identificable caracter&iacute;stico del mayor grado de consecucion del aprendizaje.</p>"
//*** Texto para la puntuación 1 (Escasa consolidación) de la segunda dimensión a evaluar ***
var txtdimension21 = "<h2>2. &#8211; Segunda dimensi&oacute;n a evaluar</h2><p><strong>Escasa consolidaci&oacute;n:</strong> Descripci&oacute;n de un rendimiento identificable caracteristico de un nivel de aprendizaje insuficiente.</p>"
//*** Texto para la puntuación 2 (Aprendizaje medio) de la segunda dimensión a evaluar ***
var txtdimension22 = "<h2>2. &#8211; Segunda dimensi&oacute;n a evaluar</h2><p><strong>Aprendizaje medio:</strong> Descripci&oacute;n de un rendimiento identificable caracter&iacute;stico de un desarrollo y movimiento hacia la consecucion del aprendizaje.</p>"
//*** Texto para la puntuación 3 (Buen aprendizaje) de la segunda dimensión a evaluar ***
var txtdimension23 = "<h2>2. &#8211; Segunda dimensi&oacute;n a evaluar</h2><p><strong>Buen aprendizaje:</strong> Descripci&oacute;n de un rendimiento identificable caracter&iacute;stico de la consecuci&oacute;n del aprendizaje.</p>"
//*** Texto para la puntuación 4 (Excelencia en el aprendizaje) de la segunda dimensión a evaluar ***
var txtdimension24 = "<h2>2. &#8211; Segunda dimensi&oacute;n a evaluar</h2><p><strong>Excelencia en el aprendizaje:</strong> Descripci&oacute;n de un rendimiento identificable caracter&iacute;stico del mayor grado de consecucion del aprendizaje.</p>"
//*** Texto para la puntuación 1 (Escasa consolidación) de la tercera dimensión a evaluar ***
var txtdimension31 = "<h2>3.- &#8211; Tercera dimensi&oacute;n a evaluar</h2><p><strong>Escasa consolidaci&oacute;n:</strong> Descripci&oacute;n de un rendimiento identificable caracteristico de un nivel de aprendizaje insuficiente.</p>"
//*** Texto para la puntuación 2 (Aprendizaje medio) de la tercera dimensión a evaluar ***
var txtdimension32 = "<h2>3.- &#8211; Tercera dimensi&oacute;n a evaluar</h2><p><strong>Aprendizaje medio:</strong> Descripci&oacute;n de un rendimiento identificable caracter&iacute;stico de un desarrollo y movimiento hacia la consecucion del aprendizaje.</p>"
//*** Texto para la puntuación 3 (Buen aprendizaje) de la tercera dimensión a evaluar ***
var txtdimension33 = "<h2>3.- &#8211; Tercera dimensi&oacute;n a evaluar</h2><p><strong>Buen aprendizaje:</strong> Descripci&oacute;n de un rendimiento identificable caracter&iacute;stico de la consecuci&oacute;n del aprendizaje.</p>"
//*** Texto para la puntuación 4 (Excelencia en el aprendizaje) de la tercera dimensión a evaluar ***
var txtdimension34 = "<h2>3.- &#8211; Tercera dimensi&oacute;n a evaluar</h2><p><strong>Excelencia en el aprendizaje:</strong> Descripci&oacute;n de un rendimiento identificable caracter&iacute;stico del mayor grado de consecucion del aprendizaje.</p>"
//*** Texto para la puntuación 1 (Escasa consolidación) de la cuarta dimensión a evaluar ***
var txtdimension41 = "<h2>4.- &#8211; Cuarta dimensi&oacute;n a evaluar</h2><p><strong>Escasa consolidaci&oacute;n:</strong> Descripci&oacute;n de un rendimiento identificable caracteristico de un nivel de aprendizaje insuficiente.</p>"
//*** Texto para la puntuación 2 (Aprendizaje medio) de la cuarta dimensión a evaluar ***
var txtdimension42 = "<h2>4.- &#8211; Cuarta dimensi&oacute;n a evaluar</h2><p><strong>Aprendizaje medio:</strong> Descripci&oacute;n de un rendimiento identificable caracter&iacute;stico de un desarrollo y movimiento hacia la consecucion del aprendizaje.</p>"
//*** Texto para la puntuación 3 (Buen aprendizaje) de la cuarta dimensión a evaluar ***
var txtdimension43 = "<h2>4.- &#8211; Cuarta dimensi&oacute;n a evaluar</h2><p><strong>Buen aprendizaje:</strong> Descripci&oacute;n de un rendimiento identificable caracter&iacute;stico de la consecuci&oacute;n del aprendizaje.</p>"
//*** Texto para la puntuación 4 (Excelencia en el aprendizaje) de la cuarta dimensión a evaluar ***
var txtdimension44 = "<h2>4.- &#8211; Cuarta dimensi&oacute;n a evaluar</h2><p><strong>Excelencia en el aprendizaje:</strong> Descripci&oacute;n de un rendimiento identificable caracter&iacute;stico del mayor grado de consecucion del aprendizaje.</p>"
//*****************************************************
//***	YA HA CONFIGURADO LAS VARIABLES EDITABLES	***
//***	NO MODIFIQUE NADA A PARTIR DE AQUÍ 			***
//*****************************************************
var dimension1="0"var dimension2="0"var dimension3="0"var dimension4="0"var puntuaciontotal="0"
//*** Declara las variables globales que recogerán,		 ***
//*** selectivamente, el valor del contenido del informe ***
var txtVarA="0"
var txtVarB="0"
var txtVarC="0"
var txtVarD="0"
//*** Función para calcular el resultado de la evaluación ***function calcular(){dimension1 = document.evaluacion.dimension1.valuedimension2 = document.evaluacion.dimension2.value
dimension3 = document.evaluacion.dimension3.value
dimension4 = document.evaluacion.dimension4.value
totdimension1 = ((pesodimension1/100)*(dimension1*4))
totdimension2 = ((pesodimension2/100)*(dimension2*4))
totdimension3 = ((pesodimension3/100)*(dimension3*4))
totdimension4 = ((pesodimension4/100)*(dimension4*4))
puntuaciontotal = (totdimension1 + totdimension2 + totdimension3 + totdimension4)
document.evaluacion.puntuaciontotal.value = puntuaciontotal;
if (puntuaciontotal >= limiteexcelencia) {document.evaluacion.valoracion.value = "Excelencia en el aprendizaje";}
   else if (puntuaciontotal >= limitebuenaprendizaje) {document.evaluacion.valoracion.value = "Buen aprendizaje";}
   else if (puntuaciontotal >= limiteaprendizajemedio) {document.evaluacion.valoracion.value = "Aprendizaje medio";}
   else {document.evaluacion.valoracion.value = "Escasa consolidación";}
//*** Esta parte sirve para comprobar que el valor de 	***
//*** las evaluaciones están entre 1 y 4, e impide		***
//*** que se habilite el botón que genera el informe	***
//*** de evaluacion										***
if (dimension1 > 4 || dimension1 < 1) {document.evaluacion.informe.disabled=true; document.evaluacion.puntuaciontotal.value=""; document.evaluacion.valoracion.value=""; alert("Has dejado la variable \"dimension1 del trabajo\" en blanco o la has evaluado con valores \nque no están entre 1 y 4")}
	else if (dimension2 > 4 || dimension2 < 1) {document.evaluacion.informe.disabled=true; document.evaluacion.puntuaciontotal.value="";  document.evaluacion.valoracion.value=""; alert("Has dejado la variable \"dimension2 del trabajo\" en blanco \no la has evaluado con valores \nque no están entre 1 y 4")}
	else if (dimension3 > 4 || dimension3 < 1) {document.evaluacion.informe.disabled=true; document.evaluacion.puntuaciontotal.value=""; document.evaluacion.valoracion.value=""; alert("Has dejado la variable \"dimension3 del trabajo\" en blanco \no la has evaluado con valores \nque no están entre 1 y 4")}
	else if (dimension4 > 4 || dimension4 < 1) {document.evaluacion.informe.disabled=true;  document.evaluacion.puntuaciontotal.value=""; document.evaluacion.valoracion.value=""; alert("Has dejado la variable \"dimension4 del trabajo\" en blanco \no la has evaluado con valores \nque no están entre 1 y 4")}
	else {document.evaluacion.informe.disabled=false;}
//*** Elije selectivamente las variables cuyo contenido se va a presentar en la nueva ventana ***
if(dimension1=="1"){txtVarA=txtdimension11;}
	else if (dimension1=="2"){txtVarA=txtdimension12;}
	else if (dimension1=="3"){txtVarA=txtdimension13;}
	else if (dimension1=="4"){txtVarA=txtdimension14;}
if(dimension2=="1"){txtVarB=txtdimension21;}
	else if (dimension2=="2"){txtVarB=txtdimension22;}
	else if (dimension2=="3"){txtVarB=txtdimension23;}
	else if (dimension2=="4"){txtVarB=txtdimension24;}
if(dimension3=="1"){txtVarC=txtdimension31;}
	else if (dimension3=="2"){txtVarC=txtdimension32;}
	else if (dimension3=="3"){txtVarC=txtdimension33;}
	else if (dimension3=="4"){txtVarC=txtdimension34;}
if(dimension4=="1"){txtVarD=txtdimension41;}
	else if (dimension4=="2"){txtVarD=txtdimension42;}
	else if (dimension4=="3"){txtVarD=txtdimension43;}
	else if (dimension4=="4"){txtVarD=txtdimension44;}	
}//*** Final de la función para calcular el resultado de la evaluación 	***

//*** Función para generar el informe de evaluación ***
function informe_Eval() {
//*** la siguiente línea inhabilita el botón que genera informes hasta que se hace un nuevo calculo ***
//*** se puede eliminar esta función cambiando "true" por "false", o eliminando la línea ***
	document.evaluacion.informe.disabled=true;
//*** especificación de los parámetros de la ventana	***
	informeEval = window.open( "", "informeeval", "width=600,height=450,status,scrollbars,resizable,screenX=20,screenY=20,left=20,top=40");
//*** esto escribe el código de la ventana ***
	informeEval.document.write("<html><head><title>Informe de evaluaci&oacute;n</title><link rel='stylesheet' type='text/css' href='css/estilo.css' /></head><body>");
	informeEval.document.write("<div id='titularinforme'>");
	informeEval.document.write("<h1>Informe de evaluaci&oacute;n</h1>");
	informeEval.document.write("</div>");
	informeEval.document.write("<div id='contenidoinforme'>");
	informeEval.document.write("<p>" + txtVarA + "</p>");
	informeEval.document.write("<p>" + txtVarB + "</p>");
	informeEval.document.write("<p>" + txtVarC + "</p>");
	informeEval.document.write("<p>" + txtVarD + "</p>");
	informeEval.document.write("</div>");
	informeEval.document.write("<div id='pieinforme'>");
	informeEval.document.write("<h2>Resumen</h2>");
	informeEval.document.write("<p>Tu <strong>puntuaci&oacute;n global</strong> del trabajo es: <strong>" + puntuaciontotal + "</strong>, a lo que corresponde</p><p>una <strong>valoraci&oacute;n cualitativa</strong> de: <strong>" + document.evaluacion.valoracion.value + "</strong>.</p>");
	informeEval.document.write('<p><form><input type="button" value="Imprimir" onClick="window.print()" accesskey="p" title="Pulsa este bot&oacute;n para imprimir la p&aacute;gina. Tecla de acceso = p"><input type="button" value="Cerrar" onclick="window.close()" accesskey="w" title="Pulsa este bot&oacute;n para cerrar la ventana. Tecla de acceso = w"></form></p>');
	informeEval.document.write("</div>");
	informeEval.document.write("</body></html>");
	informeEval.document.close();
}//*** final de la función 'informe_Eval()'	***
