/*--
      Modulo: "FuncionesDesempColectEjer.js" Funciones para el modulo de Desempeño Colectivo de los sistemas educativos(EJERCITADOR)
      Dia de Comienzo: 20 - agosto - 2008
      Dias de trabajo: 20,21 - agosto - 2008
                       3,5,8,9,11,19 - septiembre - 2008
                       15 - diciembre - 2008
                       27 -noviembre - 2010
--*/

var PantallaActivaEj = -1;  /*  Variable Global que identifica la Pantalla Activa
                                 valores -1: Nunca ha entrado
                                          0: Pantalla donde se Defininen los Reportes
                                          1: Pantallas de Reporte                     */

 /* Variables para manipular el PouUp

 -- Paneles de la Tabla de Alumnos --   -- Paneles de la Tabla de Temas --             -- Paneles de las  Barras --
 ------------------------------------  ------------------------------------  ------------------------------------------   */
   var panelEj0;   var panelEj4;         var panelEj_tema0;   var panelEj_tema4;            var panel_BarraEjProp;
   var panelEj1;   var panelEj5=0;       var panelEj_tema1;   var panelEj_tema5;
   var panelEj2;   var panelEj6=0;       var panelEj_tema2;   var panelEj_tema6;
   var panelEj3;                         var panelEj_tema3;   var panelEj_tema7=0;

   var panelesEj_act_g1 = 0; /*  =0 Paneles del grupo 1 NO activos  =1 Paneles del grupo 1 activos  [ TABLA RESUMEN ALUMNOS ] */
   var panelesEj_act_g2 = 0; /*  =0 Paneles del grupo 1 NO activos  =1 Paneles del grupo 1 activos  [ GRAFICO DE AVANCE     ] */
   var panelesEj_act_g3 = 0; /*  =0 Paneles del grupo 1 NO activos  =1 Paneles del grupo 1 activos  [ TABLA RESUMEN TEMAS   ] */

//-----------------------------------------------------------------------------------------------------------------------------------------

 function desempEjercicio(parametros){
 /* Muestra, la primera vez, la pantalla donde se definen los reportes del Ejercitador */


    if ( PantallaActivaEj == -1 ){
         if ( parametros == "" )
            parametros = "&sistema=" + $F("idsistema") + "&escuela=" + $F("idescuela") + "&desempInd=1" + "&nombrebd=" + $F("nombrebd");
         Llena_Target("actions/pantallaEjercicios.php", parametros, "mod_ejercicios"   );

         // ejecuta_modulo('actions/pantallaEjercicios.php', parametros, definicionReportEj );

         PantallaActivaEj = 0;


         $("mod_ejercicios").style.display           = "block";
         $("mod_ejercicios_DesempColect").style.display = "none";
                                 }

                           }

//-----------------------------------------------------------------------------------------------------------------------------------------
function definicionReportEj ( req ) {

         dataEj  = req.responseText;
         $("mod_ejercicios").innerHTML = dataEj;

          PantallaActivaEj = 0;
         $("mod_ejercicios").style.display = "block";
         $("").style.display = "none";

                                    }

//-----------------------------------------------------------------------------------------------------------------------------------------
function ejercicioReportes ( opcion, btnMarcado )
{
/* Construir todos los reportes de los EJERCICIOS, una vez hecho el reporte no se calculan nuevamente los datos sino que se
   Esconden y muestran los DIVs necesarios ( Todos los botones llaman a la misma funcion )  */

 if ( PantallaActivaEj == 0 ) /*  Si es la pantalla donde se Defininen los Reportes entonces vuelve a calcular los datos ) */
 {

  //-- Verificar los intervalos de fecha
  fecha_reporte = ""; fecha_desde = ""; fecha_hasta = "";
  if ( obtenmarcaradio("fechaEj") == 1 ){
     fecha_reporte = verificaFechaEj();
     if ( fecha_reporte == "" )
        return;

     fecha_desde  = $F("anno_desde_ej") + "-" + $F("mes_desde_ej") + "-" + $F("dia_desde_ej");
     fecha_hasta  = $F("anno_hasta_ej") + "-" + $F("mes_hasta_ej") + "-" + $F("dia_hasta_ej");
  }

  PantallaActivaEj = -1;  // No vuelve a entrar mientras se generan los datos

  mantenerEj_marcadoBtn(btnMarcado);

  tema = obtenmarcaradio("temasEj");
  parametros = "&accion=desempenoColect&idclase=" + $F("idclase") + "&nombresist=" + $F("nombresist") +
                "&nombrebdSchool=" + $F("nombrebdSchool") +  "&idTema=" + tema + "&nombrebd=" + $F("nombrebd") +
                "&reporteSobre="   + obtenmarcaradio("reportesEj") + "&nivel=" + obtenmarcaradio("nivel");

  //-- Datos de las Fechas
  parametros += "&fecha_reporte=" + fecha_reporte + "&fecha_desde=" + fecha_desde + "&fecha_hasta=" + fecha_hasta;

  //--- Cargando Reportes ....................................
  $("mod_ejercicios").style.display              = "none";

  $("mod_ejercicios_DesempColect").style.display = "block";
  $("mod_ejercicios_DesempColect").innerHTML = "<div style='text-align:center;padding-top:170px'><img src='images/loading.gif' /></div>"+
                                              "<div style='text-align:center;padding-top:10px;line-height:20px;color:#98130c;font-size:15px;height:332px;'>"+
                                              "<b>Generando Reporte<br />Este proceso puede tardar varios segundos</b>";

  new Ajax.Request("actions/desempenoColectEj.php", {
                               method: 'post',
                               parameters: parametros,
                               onComplete: function(req){
                                                datos1 = req.responseText;
                                                $("mod_ejercicios_DesempColect").innerHTML  = datos1;
                                                $("regresarContenidoEj").style.display      = "block";
                                                $("ImprimirBtnEj").style.display            = "block";
                                                $("hlpEjercitador").style.display           = "block";
                                                mostrarEsconderRepEjercitador( opcion );
                                                PantallaActivaEj = 1;
                                                        }
                                                });
 }
 else if ( PantallaActivaEj != -1 ){
         mostrarEsconderRepEjercitador( opcion );  // Sino solo esconder y mostrar las pantallas de reportes.
         PantallaActivaEj = 1;
         mantenerEj_marcadoBtn(btnMarcado);
                                   }

}
//-----------------------------------------------------------------------------------------------------------------------------------------
function verificaFechaEj()
/* Verifica el rango de fechas que se toma
*/
{
   fecha_reporte = "";
   fecha        = new Date();
   fecha_actual = new Date(fecha.getFullYear(),fecha.getMonth(),fecha.getDate());
   fecha_desde  = new Date($F("anno_desde_ej"),($F("mes_desde_ej")-1),$F("dia_desde_ej"));
   fecha_hasta  = new Date($F("anno_hasta_ej"),($F("mes_hasta_ej")-1),$F("dia_hasta_ej"));

   //-- 1.- fecha_hasta: no debe ser mayor que la fecha actual
   if (fecha_hasta > fecha_actual){
      alert("Fecha Final del Reporte Mayor que la Fecha Actual. Rectifique!!!");
      return fecha_reporte;
   }
   //-- 2.- fecha_hasta >= fecha_desde
   if (fecha_desde > fecha_hasta){
      alert("Fecha de Inicio del Reporte Mayor que Fecha Final. Rectifique!!!");
      return fecha_reporte;
   }
   //-- 3.- Devolver el intervalo de Fechas del Reporte
   // var diaArray = new Array("Domingo","Lunes","Martes","Miércoles","Jueves","Viernes","Sábado");
   // var mesArray = new Array("Enero","Febrero","Marzo","Abril","Mayo","Junio","Julio","Agosto","Septiembre","Octubre","Noviembre","Diciembre");
   var diaArray = new Array("Domingo","Lunes","Martes","Miércoles","Jueves","Viernes","Sábado");
   var mesArray = new Array("ENE","FEB","MAR","ABR","MAY","JUN","JUL","AGO","SEP","OCT","NOV","DIC");

   fecha_reporte  =  "<font style='color:rgb(70, 70, 70)'>Desde el </font><b>" + diaArray[fecha_desde.getDay()] + ", " + fecha_desde.getDate() + "-" + mesArray[fecha_desde.getMonth()] + "-" + fecha_desde.getFullYear();
   fecha_reporte += " <font style='color:rgb(70, 70, 70)'></b>hasta el</font> <b>" + diaArray[fecha_hasta.getDay()] + ", " + fecha_hasta.getDate() + "-" + mesArray[fecha_hasta.getMonth()] + "-" + fecha_hasta.getFullYear()+"</b>";

   return fecha_reporte;
}
//-----------------------------------------------------------------------------------------------------------------------------------------

function  mostrarEsconderRepEjercitador( opcion )
/** Muestra y Esconde los Reportes segun la variable opcion
            opcion : "tabla"         - Tabla Resumen por Alumnos
                     "grafico"       - Gráfico de Avance
                     "tablaTemas"    - Tabla Resumen por Temas
                     "recomendacion" - Recomendaciones              **/
{
  switch( opcion ) {
    case "tabla":
                  $("TablaResumenEj").style.display  = "block";
                  $("GrafAvance").style.display      = "none";
                  $("Recomendaciones").style.display = "none";
                  $("TablaTemasEj").style.display    = "none";
                  ActivarPopUpEj( opcion );
      break;
    case "grafico":
                  $("GrafAvance").style.display      = "block";
                  $("TablaResumenEj").style.display  = "none";
                  $("Recomendaciones").style.display = "none";
                  $("TablaTemasEj").style.display    = "none";
                  ActivarPopUpEj( opcion );
      break;
    case "tablaTemas":
                  $("TablaTemasEj").style.display    = "block";
                  $("GrafAvance").style.display      = "none";
                  $("TablaResumenEj").style.display  = "none";
                  $("Recomendaciones").style.display = "none";
                  ActivarPopUpEj( opcion );
      break;
    case "recomendacion":
                  $("Recomendaciones").style.display = "block";
                  $("GrafAvance").style.display      = "none";
                  $("TablaResumenEj").style.display  = "none";
                  $("TablaTemasEj").style.display    = "none";
      break;
                   }

}

//-----------------------------------------------------------------------------------------------------------------------------------------

function  regresarEjercicios()

{
 $("mod_ejercicios").style.display           = "block";
 $("mod_ejercicios_DesempColect").style.display = "none";
 $("regresarContenidoEj").style.display      = "none";
 $("ImprimirBtnEj").style.display            = "none";
 $("hlpEjercitador").style.display           = "none";

 id_BtnSeleccTMP = id_BtnSeleccEj ;
 id_BtnSeleccEj = 0;
 reporteEj_afuera(  id_BtnSeleccTMP ); // Desmarca el boton

 PantallaActivaEj = 0;
 panelesEj_act_g1 = 0;
 panelesEj_act_g2 = 0;
 panelesEj_act_g3 = 0;
// alert("regresarEjercicios");
}

//-----------------------------------------------------------------------------------------------------------------------------------------
function imprimeDespIndEj() {
/* Funcion para imprimir cualquier pantalla de desempeño colectivo en el EJERCITADOR
   Devuelve el nombre del div que se desea imprimir   */
   if ( $("TablaResumenEj").style.display  == "block" ){
                                                       pantalla =  "TablaResumenEj";
                                                       for ( i = 0; i < 5 ; i++ )
                                                           $('outer_panelEj' + i).style.display = 'none';

                                                       if ( document.getElementById('outer_panelEj5') )
                                                          $('outer_panelEj5').style.display = 'none';

                                                       if ( document.getElementById('outer_panelEj6') )
                                                          $('outer_panelEj6').style.display = 'none';
                                                     }
      else if( $("GrafAvance").style.display  == "block" ){          pantalla =  "GrafAvance";
                                                                     if ( document.getElementById('outer_panel_barraProp0') )
                                                                        $('outer_panel_barraProp0').style.display = 'none';
                                                          }
           else if( $("Recomendaciones").style.display  == "block" ) pantalla =  "Recomendaciones";
                else if( $("TablaTemasEj").style.display  == "block" ){
                                                                     pantalla =  "TablaTemasEj";

                                                                     for ( i = 0; i < 7 ; i++ )
                                                                         $('outer_panelEj_tema' + i).style.display = 'none';

                                                                     if ( document.getElementById('outer_panelEj_tema7') )
                                                                        $('outer_panelEj_tema7').style.display = 'none';
                                                                      }
   //alert("pantalla :"+pantalla);
   return pantalla;
                          }
//-----------------------------------------------------------------------------------------------------------------------------------------

//-----------------------------------------------------------------------------------------------------------------------------------------
//--------------------------------------------- Funciones para la manipulacion de los Paneles ---------------------------------------------
//-----------------------------------------------------------------------------------------------------------------------------------------
/******* GRUPO DE PANELES DE LA TABLA RESUMEN POR ALUMNOS(EJERCITADOR) *******/
 function cierra_panelesEj(pan)
 {
   for ( i = 0; i < 8 ; i++ ) { if (i == pan) continue;
     switch (i) {
       case 0: if (panelEj0.showing) panelEj0.close(); break;
       case 1: if (panelEj1.showing) panelEj1.close(); break;
       case 2: if (panelEj2.showing) panelEj2.close(); break;
       case 3: if (panelEj3.showing) panelEj3.close(); break;
       case 4: if (panelEj4.showing) panelEj4.close(); break;
       case 5: if ( panelEj5 != 0 ) if (panelEj5.showing) panelEj5.close(); break;
       case 6: if ( panelEj6 != 0 ) if (panelEj6.showing) panelEj6.close(); break;
                }
                              }
 }

 function abrir_panelEj_1(pan)
 //-- Abre o cierra el panelEj actual y cierra el que esta abierto si lo esta
 {
     cierra_panelesEj(pan);

     switch (pan) {
       case 0: panelEj0.toggle(); break;
       case 1: panelEj1.toggle(); break;
       case 2: panelEj2.toggle(); break;
       case 3: panelEj3.toggle(); break;
       case 4: panelEj4.toggle(); break;
       case 5: if ( panelEj5 != 0 ) panelEj5.toggle(); break;
       case 6: if ( panelEj6 != 0 ) panelEj6.toggle(); break;
                  }
 }

/******* GRUPO DE PANELES DE LA TABLA RESUMEN  POR TEMAS(EJERCITADOR) *******/
 function cierra_panelesEj_temas(pan)
 {
   for ( i = 0; i < 8 ; i++ ) { if (i == pan) continue;
     switch (i) {
       case 0: if (panelEj_tema0.showing) panelEj_tema0.close(); break;
       case 1: if (panelEj_tema1.showing) panelEj_tema1.close(); break;
       case 2: if (panelEj_tema2.showing) panelEj_tema2.close(); break;
       case 3: if (panelEj_tema3.showing) panelEj_tema3.close(); break;
       case 4: if (panelEj_tema4.showing) panelEj_tema4.close(); break;
       case 5: if (panelEj_tema5.showing) panelEj_tema5.close(); break;
       case 6: if (panelEj_tema6.showing) panelEj_tema6.close(); break;
       case 7:  if ( panelEj_tema7 != 0 ) if (panelEj_tema7.showing) panelEj_tema7.close(); break;
                }
                              }
 }

 function abrir_panelEj_temas(pan)
 //-- Abre o cierra el panelEj actual y cierra el que esta abierto si lo esta
 {
     cierra_panelesEj_temas(pan);

     switch (pan) {
       case 0: panelEj_tema0.toggle(); break;
       case 1: panelEj_tema1.toggle(); break;
       case 2: panelEj_tema2.toggle(); break;
       case 3: panelEj_tema3.toggle(); break;
       case 4: panelEj_tema4.toggle(); break;
       case 5: panelEj_tema5.toggle(); break;
       case 6: panelEj_tema6.toggle(); break;
       case 7: if ( panelEj_tema7 != 0 ) panelEj_tema7.toggle(); break;
                  }
 }
//-----------------------------------------------------------------------------------------------------------------------------------------

 function ActivarPopUpEj( opcion  )
 /* Manipula el PopUp */
 {
    switch ( opcion ) {
      case  "tabla":      // Activar grupo de paneles para la TABLA resumen para los alumnos
                          if (panelesEj_act_g1) return;
                          Rico.onLoad( function() {
                                panelEj0 = Rico.SlidingPanel.top( $('outer_panelEj0') , $('inner_panelEj0') );
                                panelEj1 = Rico.SlidingPanel.top( $('outer_panelEj1') , $('inner_panelEj1') );
                                panelEj2 = Rico.SlidingPanel.top( $('outer_panelEj2') , $('inner_panelEj2') );
                                panelEj3 = Rico.SlidingPanel.top( $('outer_panelEj3') , $('inner_panelEj3') );
                                panelEj4 = Rico.SlidingPanel.top( $('outer_panelEj4') , $('inner_panelEj4') );

                                if ( document.getElementById('outer_panelEj5') )
                                   panelEj5 = Rico.SlidingPanel.top( $('outer_panelEj5') , $('inner_panelEj5') );

                                if ( document.getElementById('outer_panelEj6') )
                                   panelEj6 = Rico.SlidingPanel.top( $('outer_panelEj6') , $('inner_panelEj6') );
                                                }
                                    );
                          panelesEj_act_g1 = 1;
      break;
      case  "tablaTemas":  // Activar grupo de paneles para la TABLA resumen para los temas
                          if (panelesEj_act_g3) return;
                          Rico.onLoad( function() {
                                panelEj_tema0 = Rico.SlidingPanel.top( $('outer_panelEj_tema0') , $('inner_panelEj_tema0') );
                                panelEj_tema1 = Rico.SlidingPanel.top( $('outer_panelEj_tema1') , $('inner_panelEj_tema1') );
                                panelEj_tema2 = Rico.SlidingPanel.top( $('outer_panelEj_tema2') , $('inner_panelEj_tema2') );
                                panelEj_tema3 = Rico.SlidingPanel.top( $('outer_panelEj_tema3') , $('inner_panelEj_tema3') );
                                panelEj_tema4 = Rico.SlidingPanel.top( $('outer_panelEj_tema4') , $('inner_panelEj_tema4') );
                                panelEj_tema5 = Rico.SlidingPanel.top( $('outer_panelEj_tema5') , $('inner_panelEj_tema5') );
                                panelEj_tema6 = Rico.SlidingPanel.top( $('outer_panelEj_tema6') , $('inner_panelEj_tema6') );

                                if ( document.getElementById('outer_panelEj_tema7') )
                                   panelEj_tema7 = Rico.SlidingPanel.top( $('outer_panelEj_tema7') , $('inner_panelEj_tema7') );
                                                }
                                    );
                          panelesEj_act_g3 = 1;
      break;
      case  "grafico": // Activar grupo de paneles para las BARRAS
                          if (panelesEj_act_g2) return;
                          Rico.onLoad( function() {
                             if ( document.getElementById('outer_panel_barraProp0') ){
                                panel_BarraEjProp = Rico.SlidingPanel.bottom( $('outer_panel_barraProp0') );
                                $('outer_panel_barraProp0').style.display   = "none";
                                                                                 }
                                                  }
                                     );
                          panelesEj_act_g2 = 1;
      break;

                      }

 }

//-----------------------------------------------------------------------------------------------------------------------------------------

var id_BtnSeleccEj   = "";  // ID del boton seleccionado actualmente (Ejercitador)
var id_BtnAnterEj    = "";  // ID del Boton seleccionado anteriormente (Ejercitador)

var id_BtnSeleccEval = "";  // ID del boton seleccionado actualmente (Evaluador)
var id_BtnAnterEval  = "";  // ID del Boton seleccionado anteriormente (Evaluador)


function reporteEj_sobre( id_boton ){
// Funcion para cuando pasa el mouse por encima de los botones de reportes
//    id_boton : Identificador del Boton Seleccionado
      $(id_boton).style.background = '#234662';
      $(id_boton).style.color      = '#eeeeee';

                                  }

//-----------------------------------------------------------------------------------------------------------------------------------------
function reporteEj_afuera( id_boton ){
// Funcion para cuando pasa el mouse esta afuera de los botones de reportes
//    id_boton : Identificador del Boton Seleccionado

      if ( id_BtnSeleccEj != id_boton ) {
      $(id_boton).style.background = '#e2ebfa';
      $(id_boton).style.color      = '#234662';
                                      }
                                  }

//-----------------------------------------------------------------------------------------------------------------------------------------
function mantenerEj_marcadoBtn(id_boton ){
// Mantener marcado el boton seleccionado
//    id_boton : Identificador del Boton Seleccionado

      id_BtnAnterEj = id_BtnSeleccEj;
      id_BtnSeleccEj = id_boton;

      $(id_boton).style.background = '#234662';
      $(id_boton).style.color      = '#eeeeee';

      if ( id_BtnAnterEj != "" ) //No es la 1ra vez
         reporteEj_afuera(  id_BtnAnterEj );  // Desmarca el boton seleccionado anteriormente
                                  }
//-----------------------------------------------------------------------------------------------------------------------------------------
function activarFecha_Ej( intervalo ){
// Funcion para activar la selección de las fechas.
//    intervalo : 0 > Reporte Completo, 1 > Reporte parcial(por fechas)

      if ( intervalo == 1 ) {
         $("dia_desde_ej").disabled  = false;
         $("mes_desde_ej").disabled  = false;
         $("anno_desde_ej").disabled = false;
         $("dia_hasta_ej").disabled  = false;
         $("mes_hasta_ej").disabled  = false;
         $("anno_hasta_ej").disabled = false;
         return;
      }
      $("dia_desde_ej").disabled  = true;
      $("mes_desde_ej").disabled  = true;
      $("anno_desde_ej").disabled = true;
      $("dia_hasta_ej").disabled  = true;
      $("mes_hasta_ej").disabled  = true;
      $("anno_hasta_ej").disabled = true;
}
//-----------------------------------------------------------------------------------------------------------------------------------------
function habilita_fecha( tipo ){
// Funcion para activar la selección de las fechas(Ej.Resueltos no puede sacar reportes por fechas)
//    tipo : 0 > Ej.Resueltos, 1 > Ej.Propuestos

      if ( tipo == 0 ) {
         $("fechaEj,0").checked = true;
         $("fechaEj,1").disabled = true;
         activarFecha_Ej(0);
         return;
      }
      $("fechaEj,1").disabled = false;
}
//-----------------------------------------------------------------------------------------------------------------------------------------



