<?
/******************************************************************/
/* ARCHIVO DE CONEXION A LA BASE DE DATOS Y FUNCIONES DEL SISTEMA */
/* DESARROLLADO POR EFREN MONTERROSO jefren@galileo.edu           */
/* E-DUCATIVO (www.e-ducativo.com)  2005                          */
/******************************************************************/
  
include("fnc_cxbd.php");
include("fnc_v2.php");

/* DEFINICIÓN DE VARIABLES DEL SISTEMA */
error_reporting(E_ERROR);
import_request_variables("GPC");
   
$nombre_colegio=get_nombre_institucion();
   
$fecha=date("Y-m-d",mktime(date("H")+1,date("i"),date("s"),date("m"),date("d"),date("Y")));
$hora=date("H:i:s",mktime(date("H")+1,date("i"),date("s"),date("m"),date("d"),date("Y")));
$fechahora="$fecha $hora";
$logout_url="../../";
   
$site="coactemalan.net";  // nombre del dominio (sitio)
$directorio="/educativo";

$jsback="javascript:history.go(-1)";
$goback=$jsback;

$df_year_actual=get_ciclo_activo(); // variable que contiene el ciclo actual
$df_pi="Parámetros incorrectos";
$rmhost=$REMOTE_ADDR;

if(empty($rmhost)){
  $rmhost=$_SERVER[REMOTE_ADDR];
}
//*****************************

//**COLORES DE FILAS DE DATALLE***
$bgf1="#ECF2F9";
$bgf2="#FFFFFF";
//**FIN DE COLORES DE DETALLE*****

srand((double)microtime()*1000000);
   

function docookie($user, $pass, $tipo, $nombre, $apellido) {
     $info = base64_encode($user.":".$pass.":".$tipo.":".$nombre.":".$apellido);
     setcookie("usuario","$info",time()+1800);
}

function get_info($uuser, $upin, $unombre, $uapellido, $umail, &$useccion){
// función para obtener la información del usuario conectado al sistema.
   global $usuario, $uuser, $upin, $unombre, $uapellido, $cxmysql, $umail, $useccion;
   session_start();
   $sid=session_id();

   $qs=mysql_query("select * from sesion where sesion='$sid'");

    if (mysql_num_rows($qs)>0){
        $Dqs=mysql_fetch_array($qs);

        $muser = $Dqs['usuario'];
        $mpass = $Dqs['clave'];
        $unombre = $Dqs['nombre'];
        $uapellido = $Dqs['apellido'];
        $mtipo = $Dqs['tipo'];
        $umail=$Dqs['mail'];
        $useccion=$Dqs['seccion'];
        $uuser=base64_decode($muser);
        $upin=base64_decode($mpass);
    }
}

function enlinea_c() {
  // función para verificar si el usuario tipo catedratico está conectado al sistema.
   global $usuario, $cnxodbc, $cxmysql;
   session_start();
   $sid=session_id();

   $qs=mysql_query("select * from sesion where sesion='$sid'");

   if (mysql_num_rows($qs)>0){
        $Dqs=mysql_fetch_array($qs);

        $eltipo="Catedratico";
        $muser = base64_decode($Dqs['usuario']);
        $mpass = $Dqs['clave'];
        $mtipo = $Dqs['tipo'];
        $quser=mysql_query("select * from usuarios where usuario='$muser' and clave='$mpass' and catedratico='S'");

        if (mysql_num_rows($quser)>0 and $eltipo==$mtipo) {
//            return True;
        } else {
            alert("Usuario desconectado","frm_login.php");
            exit();
        }
   } else {
           alert("Usuario desconectado","frm_login.php");
           exit();
   }
   get_info($uuser, $upin, $unombre, $uapellido, $umail, $useccion);
}

function enlinea_a() {
  // funcion para validar si un usuario tipo administrador está conectado
   global $usuario, $cnxodbc, $cxmysql;
   session_start();
   $sid=session_id();

   $qs=mysql_query("select * from sesion where sesion='$sid'");

   if (mysql_num_rows($qs)>0){
        $Dqs=mysql_fetch_array($qs);

        $eltipo="Admin";
        $muser = base64_decode($Dqs['usuario']);
        $mpass = $Dqs['clave'];
        $mtipo = $Dqs['tipo'];
        $quser=mysql_query("select * from usuarios where usuario='$muser' and clave='$mpass' and admin='S'");

        if (mysql_num_rows($quser)>0 and $eltipo==$mtipo) {
//            return True;
        } else {
//return False;
            alert("Usuario desconectado","frm_login.php");
            exit();
        }
   } else {
           alert("Usuario desconectado","frm_login.php");
           exit();
   }
   get_info($uuser, $upin, $unombre, $uapellido, $umail, $useccion);
}

function enlinea_alumno() {
  // función para verificar si el usuario tipo alumno está conectado al sistema.
   global $cxmysql, $useccion;
   session_start();
   $sid=session_id();

   $qs=mysql_query("select * from sesion where sesion='$sid'");

   if (mysql_num_rows($qs)>0){
        $Dqs=mysql_fetch_array($qs);

        $eltipo="Alumno";
        $muser = base64_decode($Dqs['usuario']);
        $mpass = $Dqs['clave'];
        $mtipo = $Dqs['tipo'];
        $quser=mysql_query("select * from alumnos where carnet='$muser' and clave='$mpass' and activo = 'S'");

        if (mysql_num_rows($quser)>0 and $eltipo==$mtipo) {
//            return True;
        } else {
            alert("Usuario desconectado","frm_login.php");
            exit();
        }
   } else {
           alert("Usuario desconectado","frm_login.php");
           exit();
   }
   get_info($uuser, $upin, $unombre, $uapellido, $umail, &$useccion);
}

function enlinea_p() {
  // función para verificar si el usuario tipo alumno está conectado al sistema.
   global $cxmysql, $useccion;
   session_start();
   $sid=session_id();

   $qs=mysql_query("select * from sesion where sesion='$sid'");

   if (mysql_num_rows($qs)>0){
        $Dqs=mysql_fetch_array($qs);

        $eltipo="Padre";
        $muser = base64_decode($Dqs['usuario']);
        $mpass = $Dqs['clave'];
        $mtipo = $Dqs['tipo'];
        $sql="select * from alumnos where carnet='$muser' and clave_web='$mpass' and padre_activo = 'S'";
        $quser=runsql($sql);

        if (mysql_num_rows($quser)>0 and $eltipo==$mtipo) {
//            return True;
        } else {
            echo "$muser $mpass<br>$sql<hr>";
            alert("Usuario desconectado o sesión expirada","frm_login.php");
            exit();
        }
   } else {
           alert("Usuario desconectado o sesión expirada","frm_login.php");
           exit();
   }
   get_info($uuser, $upin, $unombre, $uapellido, $umail, &$useccion);
}

function login(){
  //  función para enviar al usuario al formulario de ingreso al sistema
   ?>
     <meta http-equiv="refresh" content="1;URL=index.php">
     <script language="javascript">
       alert("Usuario Desconectado")
      </script>
    <?
}

function msgbox($msg, $link){
 // función para mostrar un mensaje en pantalla y redireccionar al usuario a otra página.
 global $sid;
 ?>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>EvaluaNET</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css">
<!--
body,td,th {
        font-family: Arial, Helvetica, sans-serif;
        font-size: 12px;
}
a:link {
        color: #009933;
        text-decoration: none;
}
a:visited {
        color: #009933;
        text-decoration: none;
}
a:hover {
        color: #FF9900;
        text-decoration: underline;
}
a:active {
        color: #009933;
        text-decoration: none;
}
.style2 {color: #FF6600}
a {
        font-weight: bold;
}
.style3 {
        font-size: 14px;
        font-weight: bold;
}
.style4 {color: #009933}
-->
</style></head>

<body>
<table width="351" border="0" align="center" cellpadding="1" cellspacing="1" bgcolor="#30559B">
  <tr>
    <td><div align="center">
      <table width="350" border="0" align="center" cellpadding="3" cellspacing="1" bgcolor="#FFFFFF">
          <tr>
            <td colspan="2" bgcolor="#30559B"><div align="center"><img src="images/logoev_p1.gif" width="208" height="38"></div></td>
          </tr>
          <tr>
            <td colspan="2" bgcolor="#FFFFFF"><span class="style2"><?=strtoupper($msg);?></span></td>
          </tr>
          <tr>
            <td width="50%" bgcolor="#FFFFFF"><div align="right" class="style3"><a href="<?=$link;?>?sid=<?=$sid;?>" class="style4">CONTINUAR</a></div></td>
            <td bgcolor="#FFFFFF"><a href="<?=$link;?>?sid=<?=$sid;?>"><img src="images/next_f2.png" width="32" height="32" border="0"></a></td>
          </tr>
          </table>
    </div></td>
  </tr>
</table>
</body>
</html>
<?
}


function dmouse(){
// deshabilita el menú contextual del mouse en la página
    echo "oncontextmenu=\"return false\"";
}

function fecha($fecha, $separador=""){
// funcion para trasladar la fecha a formato GT (dd-mm-aaaa)
  if(!$separador){
   $separador="-";
  }
  $fecha=substr($fecha,8,2)."$separador".substr($fecha,5,2)."$separador".substr($fecha,0,4);
  return $fecha;
}

function fechabd($fecha, $separador="-"){
// funcion para trasladar la fecha a formato GT (aaaa-mm-dd)
  $fecha=substr($fecha,6,4)."$separador".substr($fecha,3,2)."$separador".substr($fecha,0,2);
  return $fecha;
}

function act_sesiones(){
// funcion para borrar las sesiones del día anterior
// y que no han sido borradas por los usuarios haciendo logout.
 global $cxmysql, $sid;
 $fecha=date("Y/m/d");
 $actualizacion=mysql_query("delete from sesion where fecha < '$fecha'");
}

function acceso($usuario, $opcion, $subopcion, $tipo){
// funcion para registrar los accesos de los usuarios al sistema
   global $fecha, $hora, $rmhost, $cxmysql;

   $ins=mysql_query("insert into accesos (usuario, fecha, opcion_visitada, subopcion, ip, tipo_usr)
                            values('$usuario','$fecha $hora','$opcion','$subopcion','$rmhost','$tipo')");
}

function fechalarga($fecha,$separador="-"){
  $fecha=substr($fecha,8,2).$separador.substr($fecha,5,2).$separador.substr($fecha,0,4)." ".substr($fecha,-8);
  return $fecha;
}

function alert($msg, $link){
echo "<script language='javascript'>
        alert('$msg');
        self.location='$link';
       </script>";
  exit();
}

function alert_cw($msg){
echo "<script language='javascript'>
        alert('$msg');
        window.close();
       </script>";
  exit();
}

function confirmacion($msg, $link1, $link2){
echo "<script language='javascript'>
       var respuesta;

       respuesta= confirm('$msg');
       if(respuesta){
        self.location='$link1';
       }else{
        self.location='$link2';
       }
       </script>";
  exit();
}

function nombre_usuario($cod_usuario, $tipo=''){
global $sid, $cxmysql;
$encontrado=false;

$cod_usuario2=substr($cod_usuario,-8);
$patron="/^[[:digit:]]+$/";
if(preg_match($patron, $cod_usuario2) && strlen($cod_usuario)==9 and substr($cod_usuario,0,1)=="p"){
 $cod_usuario=substr($cod_usuario,-8);
 $qusr=mysql_query("select concat(\"Padres de: \",nombre,\", \", apellido) as nombre from alumnos where carnet='$cod_usuario'");
 if(mysql_num_rows($qusr)>0){
  $iusr=mysql_fetch_array($qusr);
  return $iusr['nombre'];
  $encontrado=true;
 }
}

//if($tipo=="Al"){
 $qusr=mysql_query("select concat(nombre,\", \", apellido) as nombre from alumnos where carnet='$cod_usuario'");
 if(mysql_num_rows($qusr)>0){
  $iusr=mysql_fetch_array($qusr);
  return $iusr['nombre'];
  $encontrado=true;
 }
//}

//if($tipo=="Ca"){
 $qusr=mysql_query("select concat(nombre,\", \", apellido) as nombre from usuarios where usuario='$cod_usuario' and catedratico='S'");
 if(mysql_num_rows($qusr)>0){
  $iusr=mysql_fetch_array($qusr);
  return $iusr['nombre'];
  $encontrado=true;
 }
//}

//if($tipo=="Ad"){
 $qusr=mysql_query("select concat(nombre,\", \", apellido) as nombre from usuarios where usuario='$cod_usuario' and admin='S'");
 if(mysql_num_rows($qusr)>0){
  $iusr=mysql_fetch_array($qusr);
  return $iusr['nombre'];
  $encontrado=true;
 }
//}

//if($tipo=="Su"){
 $qusr=mysql_query("select concat(nombre,\", \", apellido) as nombre from usuarios where usuario='$cod_usuario' and supervisor='S'");
 if(mysql_num_rows($qusr)>0){
  $iusr=mysql_fetch_array($qusr);
  return $iusr['nombre'];
  $encontrado=true;
 }
//}

if($encontrado==false){
  return "USUARIO_NO_ENCONTRADO";
}
}   // fin de funcion, que devuelve el nombre del usuario

function nombre_usuario2($cod_usuario, $tipo){
global $sid, $cxmysql;
$encontrado=false;

if($tipo=="Al"){
 $qusr=mysql_query("select concat(nombre,\", \", apellido) as nombre from alumnos where carnet='$cod_usuario'");
 if(mysql_num_rows($qusr)>0){
  $iusr=mysql_fetch_array($qusr);
  return $iusr['nombre'];
  $encontrado=true;
 }
}

if($tipo=="Ca"){
 $qusr=mysql_query("select concat(nombre,\", \", apellido) as nombre from usuarios where usuario='$cod_usuario' and catedratico='S'");
 if(mysql_num_rows($qusr)>0){
  $iusr=mysql_fetch_array($qusr);
  return $iusr['nombre'];
  $encontrado=true;
 }
}

if($tipo=="Ad"){
 $qusr=mysql_query("select concat(nombre,\", \", apellido) as nombre from usuarios where usuario='$cod_usuario' and admin='S'");
 if(mysql_num_rows($qusr)>0){
  $iusr=mysql_fetch_array($qusr);
  return $iusr['nombre'];
  $encontrado=true;
 }
}

if($tipo=="Su"){
 $qusr=mysql_query("select concat(nombre,\", \", apellido) as nombre from usuarios where usuario='$cod_usuario' and supervisor='S'");
 if(mysql_num_rows($qusr)>0){
  $iusr=mysql_fetch_array($qusr);
  return $iusr['nombre'];
  $encontrado=true;
 }
}

if($encontrado==false){
  return "USUARIO_NO_ENCONTRADO";
}
}   // fin de funcion, que devuelve el nombre del usuario

function mes_letras($nmes){
 switch($nmes){
  case 1: return "Enero";
  break;
  case 2: return "Febrero";
  break;
  case 3: return "Marzo";
  break;
  case 4: return "Abril";
  break;
  case 5: return "Mayo";
  break;
  case 6: return "Junio";
  break;
  case 7: return "Julio";
  break;
  case 8: return "Agosto";
  break;
  case 9: return "Septiembre";
  break;
  case 10: return "Octubre";
  break;
  case 11: return "Noviembre";
  break;
  case 12: return "Diciembre";
  break;

  default: return "MES_INVALIDO";
 }
}

function mensajes($usuario){
 global $cnxmysql, $sid;

  $qmsgs=mysql_query("select count(*) as cant_msg from msg_mensajes where para_usuario = '$usuario' and leido='N'");
  $imsgs=mysql_fetch_array($qmsgs);
  if($imsgs[cant_msg]>0){
   return("<a href='mensajes.php?sid=$sid'><font color='0066FF'>".$imsgs[cant_msg]."</font></a>");
  }else{
    return ($imsgs['cant_msg']);
  }
}

function get_curso($id){
 global $cnxmysql, $sid;

 $id=base64_decode($id);
 $qc=mysql_query("select curso from curso where id = '$id'");
 $ic=mysql_fetch_array($qc);
 return $ic['curso'];
}

function del_tildes($texto){
  $texto=trim($texto);
  $texto=str_replace("á","a",$texto);
  $texto=str_replace("é","e",$texto);
  $texto=str_replace("í","i",$texto);
  $texto=str_replace("ó","o",$texto);
  $texto=str_replace("ú","u",$texto);
  $texto=str_replace("à","a",$texto);
  $texto=str_replace("è","e",$texto);
  $texto=str_replace("ì","i",$texto);
  $texto=str_replace("ò","o",$texto);
  $texto=str_replace("ù","u",$texto);
  $texto=str_replace("Á","a",$texto);
  $texto=str_replace("É","e",$texto);
  $texto=str_replace("Í","i",$texto);
  $texto=str_replace("Ó","o",$texto);
  $texto=str_replace("Ú","u",$texto);
  $texto=str_replace("À","a",$texto);
  $texto=str_replace("È","e",$texto);
  $texto=str_replace("Ì","i",$texto);
  $texto=str_replace("Ò","o",$texto);
  $texto=str_replace("Ù","u",$texto);
  return strtolower($texto);
}

function dia_letras($fecha){
    //date("D",mktime(0,0,0,6,13,2005))
    $mes=substr($fecha,5,2);
    $dia=substr($fecha,8,2);
    $year=substr($fecha,0,4);

    $txtdia=date("D",mktime(0,0,0,$mes,$dia,$year));
    switch($txtdia){
     case "Sun": return "Domingo";
     break;
     case "Mon": return "Lunes";
     break;
     case "Tue": return "Martes";
     break;
     case "Wed": return "Miércoles";
     break;
     case "Thu": return "Jueves";
     break;
     case "Fri": return "Viernes";
     break;
     case "Sat": return "Sábado";
     break;
    }
}

function horacompleta_of_date($fecha){
  $hora=substr($fecha,-8);
  return $hora;
}

function day_of_date($fecha){
  $dia=substr($fecha,8,2);
  return $dia;
}

function month_of_date($fecha){
  $mes=substr($fecha,5,2);
  return $mes;
}

function year_of_date($fecha){
    $year=substr($fecha,0,4);
    return $year;
}

function hora_of_time($time){
    $hora=substr($time,0,2);
    return $hora;
}

function minutos_of_time($time){
    $min=substr($time,3,2);
    return $min;
}

function enc($param){
 return base64_encode(base64_encode($param));
}

function dec($param){
 return base64_decode(base64_decode($param));
}

function gcurso($codigo){
 global $cxmysql;
 $mcodigo=dec($codigo);
 $q=mysql_query("select * from cursos where codigo = '$mcodigo'");
 $i=mysql_fetch_array($q);
 return $i[curso];
}

function ggrado($codigo){
 global $cxmysql;
 $mcodigo=dec($codigo);
 $q=mysql_query("select * from grados where id = '$mcodigo'");
 $i=mysql_fetch_array($q);
 return $i[grado];
}

function gunidad($codigo){
 global $cxmysql;
 $mcodigo=dec($codigo);
 $q=mysql_query("select unidad from unidades_grados where id = '$mcodigo'");
 $i=mysql_fetch_array($q);
 return $i[unidad];
}

function gjornada($codigo){
 global $cxmysql;
 $mcodigo=dec($codigo);
 $q=mysql_query("select jornada from jornadas where id = '$mcodigo'");
 $i=mysql_fetch_array($q);
 return $i[jornada];
}

function gnivel($codigo){
 global $cxmysql;
 $mcodigo=dec($codigo);
 $q=mysql_query("select nivel from niveles where id = '$mcodigo'");
 $i=mysql_fetch_array($q);
 return $i[nivel];
}


function galumno($codigo){
 global $cxmysql;
 $mcodigo=dec($codigo);
 $q=mysql_query("select nombre, apellido from alumnos where carnet = '$mcodigo'");
 $i=mysql_fetch_array($q);
 return $i[apellido].", ".$i[nombre];
}

function ggradoalumno($carnet){
 global $cxmysql;
 $q=mysql_query("select grado_estudio from alumnos where carnet='$carnet'");
 $i=mysql_fetch_array($q);
 return $i[grado_estudio];
}

function letra_rand(){
  $ltr[0]="A";
  $ltr[1]="B";
  $ltr[2]="C";
  $ltr[3]="D";
  $ltr[4]="E";
  $ltr[5]="F";
  $ltr[6]="G";
  $ltr[7]="H";
  $ltr[8]="I";
  $ltr[9]="J";
  $ltr[10]="K";
  $ltr[11]="L";
  $ltr[12]="M";
  $ltr[13]="N";
  $ltr[14]="O";
  $ltr[15]="P";
  $ltr[16]="Q";
  $ltr[17]="R";
  $ltr[18]="S";
  $ltr[19]="T";
  $ltr[20]="U";
  $ltr[21]="V";
  $ltr[22]="W";
  $ltr[23]="X";
  $ltr[24]="Y";
  $ltr[25]="Z";
  $num=rand(0,25);
  return $ltr[$num];
}

function color_fila($i){
global $bgf1, $bgf2;
  if($i%2==0){
    return $bgf1;
  }else{
    return $bgf2;
  }
}

function pmayuscula($texto){
 $texto=strtolower($texto);
 $texto=ucwords($texto);
 return $texto;
}

function param_inc($msg,$link){
  if(!$msg){
    $msg="Parámetros incorrectos";
  }
  if(!$link){
    $link="javascript:history.go(-1)";
  }
  alert($msg,$link);
}

function inc_param($msg,$link){
  if(!$msg){
    $msg="Parámetros incorrectos";
  }
  if(!$link){
    $link="javascript:history.go(-1)";
  }
  alert($msg,$link);
}

function get_talonario($id){
  $q=mysql_query("select * from cp_talonarios where id = $id");
  $i=mysql_fetch_array($q);
  return $i[nombre];
}

function error($msg){
 alert("ERROR: \\n$msg","javascript:history.go(-1)");
}

function moneda($valor,$simbolo="",$separador=""){
 if(!$separador){$separador=",";}
// if(!$simbolo){$simbolo="Q";}
 $resultado="";

 $tmp=explode(".",$valor);
 $entero=$tmp[0];
 $decimales=$tmp[1];

 $longitud=strlen($entero);
 if($longitud>3){
  $aux=$entero;
  $separadores=sprintf("%.0f",($longitud/3));

  for($i=1;$i<=$separadores; $i++){
    if(strlen($aux)>3){
     $resultado=substr($aux,-3).$resultado;
    }else{
     continue;
    }

    $aux=substr($aux,0,strlen($aux)-3);

     if(strlen($aux)>0){
       $resultado="$separador$resultado";
     }
  }
  $resultado=$aux."$resultado";
 }else{
  $resultado=$entero;
 }
 if(strlen($decimales)==0){$decimales="00";}
 if(strlen($decimales)==1){$decimales.="0";}
 return $simbolo.$resultado.".".$decimales;
}

function sexo($s){
  if($s=="M"){return "Masculino";}
  if($s=="F"){return "Femenino";}
}

function get_municipio($id){
 global $cxmysql;

 $q=mysql_query("select municipio from municipios where id = $id");
 $i=mysql_fetch_array($q);
 return $i[municipio];
}

function get_departamento($id){
 global $cxmysql;

 $q=mysql_query("select departamento from departamentos where id = $id");
 $i=mysql_fetch_array($q);
 return $i[departamento];
}

function get_direccionalumno($carnet, $tabla){
 if($tabla=="preinscripciones"){
  $campo="id";
 }
 if($tabla=="alumnos"){
  $campo="carnet";
 }

 $sql="select * from $tabla where $campo='$carnet'";
 $q=mysql_query($sql);
 $info=mysql_fetch_array($q);
 return $info[dcalle_avenida]." ".$info[dnumero_casa]." Zona ".$info[dzona]." ".$info[dcolonia]." ".get_municipio($info[dmunicipio])." ".get_departamento($info[ddepto]);
}

function mascara(){
?>
<script type="text/javascript">
var patron = new Array(2,2,4)
var patron2 = new Array(1,3,3,3,3)
function mascara(d,sep,pat,nums){
if(d.valant != d.value){
        val = d.value
        largo = val.length
        val = val.split(sep)
        val2 = ''
        for(r=0;r<val.length;r++){
                val2 += val[r]
        }
        if(nums){
                for(z=0;z<val2.length;z++){
                        if(isNaN(val2.charAt(z))){
                                letra = new RegExp(val2.charAt(z),"g")
                                val2 = val2.replace(letra,"")
                        }
                }
        }
        val = ''
        val3 = new Array()
        for(s=0; s<pat.length; s++){
                val3[s] = val2.substring(0,pat[s])
                val2 = val2.substr(pat[s])
        }
        for(q=0;q<val3.length; q++){
                if(q ==0){
                        val = val3[q]
                }
                else{
                        if(val3[q] != ""){
                                val += sep + val3[q]
                                }
                }
        }
        d.value = val
        d.valant = val
        }
}
</script>
<?
}

function fmascara($separador){
 if(!$separador){$separador="/";}
 echo "onkeyup=\"mascara(this,'$separador',patron,true)\"";
}

function get_tipo_cargo($codigo){
  $q=mysql_query("select * from cp_tipos_cargos where id='$codigo'");
  $i=mysql_fetch_array($q);
  return ($i[descripcion]);
}

function get_ciclo_activo(){
  $q=mysql_query("select * from general");
  $i=mysql_fetch_array($q);
  return $i[ciclo_activo];
}

function get_dir_institucion(){
  $q=mysql_query("select * from general");
  $i=mysql_fetch_array($q);
  return $i[direccion];
}

function get_tel_institucion(){
  $q=mysql_query("select * from general");
  $i=mysql_fetch_array($q);
  return $i[telefono];
}

function get_ciclo_inscripcion(){
  $q=mysql_query("select * from general");
  $i=mysql_fetch_array($q);
  return $i[ciclo_inscripcion];
}

function existe_alumno($carnet){
  $q=mysql_query("select * from alumnos where carnet = '$carnet'");
  if(mysql_num_rows($q)==0){
    return false;
  }else{
    return true;
  }
}

function suma_columnas($arreglo){
  $tmp=0;
  for($i=0;$i<count($arreglo);$i++){
    $tmp+=$arreglo[$i];
  }
  return $tmp;
}

function rd_imagen($path, $imagen, $tamano_maximo, $otrosparametros){
   global $fechahora;
   list($ancho, $altura, $tipo, $atr) = getimagesize($path.$imagen);
   $max=0;

   if($ancho >= $altura){
    $max=$ancho;
   }else{
    $max=$altura;
   }

   if($tamano_maximo < $max){
    $factor=sprintf("%f",$tamano_maximo/$max);
   }else{
    $factor=1;
   }

   $miancho=sprintf("%.0f",$ancho*$factor);
   $mialtura=sprintf("%.0f",$altura*$factor);
   return "<img src='$path$imagen?$fechahora' width='$miancho' height='$mialtura' $otrosparametros>";
}

function gmaestroguiaseccion($idgrado){
  $id=dec($idgrado);
  $q=mysql_query("select guia from secciones_grados where id = '$id'");
  $i=mysql_fetch_array($q);
  if(!empty($i[guia])){
    $qusuario=mysql_query("select apellido, nombre from usuarios where usuario ='{$i[guia]}'");
    $iusuario=mysql_fetch_array($qusuario);
    return $iusuario[nombre]." ".$iusuario[apellido];
  }else{
    return "";
  }
}

function gmaestroguia($idgrado){
  $id=dec($idgrado);
  $q=mysql_query("select guia from grados where id = '$id'");
  $i=mysql_fetch_array($q);
  if(!empty($i[guia])){
    $qusuario=mysql_query("select apellido, nombre from usuarios where usuario ='{$i[guia]}'");
    $iusuario=mysql_fetch_array($qusuario);
    return $iusuario[nombre]." ".$iusuario[apellido];
  }else{
    return "";
  }
}

function get_talonariodc($id){
  $q=mysql_query("select * from cp_talonarios where id = $id");
  $i=mysql_fetch_array($q);
  return $i[desc_corta];
}

function get_numboletadp(){
  $q=mysql_query("select * from general where id = 1");
  $i=mysql_fetch_array($q);
  return $i[boleta_deposito];
}

function get_tipo_conocimiento($codigo){
 global $cxmysql;
 $mcodigo=dec($codigo);
 $q=mysql_query("select * from conocimientos_tipos where id = '$mcodigo'");
 $i=mysql_fetch_array($q);
 return $i[tipo];
}
function get_nivel_conocimiento($codigo){
 global $cxmysql;
 $mcodigo=dec($codigo);
 $q=mysql_query("select * from conocimientos_niveles where id = '$mcodigo'");
 $i=mysql_fetch_array($q);
 return $i[nivel];
}

function fecha_letras($fecha){
  $temp=dia_letras($fecha).", ".day_of_date($fecha)." de ".mes_letras(month_of_date($fecha))." del ".year_of_date($fecha);
  return $temp;
}

function rellenar($numero,$ancho='0',$caracter_relleno='0'){
   if($ancho == 0){
       return $numero;
   }
   $longitud=strlen($numero);
   $diferencia = $ancho - $longitud;
   if($diferencia > 0){
       $tmp="";
       for($i=1;$i<=$diferencia;$i++){
           $tmp.=$caracter_relleno;
       }
       return $tmp.$numero;
   }else{
       return $numero;
   }
}

function get_nombre_institucion(){
  $q=mysql_query("select * from general where id = 1");
  $i=mysql_fetch_array($q);
  return $i[institucion];
}

function encabezados(){
 header("Expires: Sun 25 Jul 1994 05:00:00 GMT");
 header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT"); 
 header("Cache-Control: no-cache, must-revalidate");
 header("Pragma: no-cache");
}

function ggrado_completo($id,$seccion=''){
  $id_g=dec($id);
  $qgr=mysql_query("select * from grados where id = $id_g");
  if(mysql_num_rows($qgr)==0){
    return "NO INSCRITO";
  }
  $igr=mysql_fetch_array($qgr);
  $resultado="Grado: {$igr[grado]}, Nivel: ".gnivel(enc($igr[nivel]));
  if($seccion!=""){
    $resultado.=", Sección: $seccion";
  }
  $resultado.=", ".gjornada(enc($igr[jornada]));
  return $resultado;
}

function llenar_combo($tabla,$where='',$orden='',$campo_valor,$campo_descrip,$seleccionar='',$codificar=false){
  /*
  DESCRIPCIÓN DE PARÁMETROS RECIBIDOS
  $tabla         = origen de la información
  $where         = Condición where para seleccionar valores de la tabla
  $orden         = campos a ordenar, separados por coma Ej: codigo asc, nombre desc
  $campo_valor   = nombre del campo a colocar como valor de la opción
  $campo_descrip = nombre del campo a colocar como descripción de la opción
  $seleccionar   = Valor que se compara con el registro, si coincide el valor se marca la opción como seleccionada por defecto
  $codificar     = Si se envía true, codifica el valor de la opción
  */

  if($orden){
    $orden = "order by $orden";
  }

  echo "<option value='SV' selected>Seleccione...</option>";

  $q=mysql_query("select *
                  from $tabla
                  $where
                  $orden");
                  
  while($i=mysql_fetch_array($q)){
    $sel="";
    if($seleccionar == $i[$campo_valor]){
      $sel="selected class='selected_option'";
    }

    if($codificar==true){
      $i[$campo_valor]=enc($i[$campo_valor]);
    }
  
    echo "<option value='{$i[$campo_valor]}' $sel>{$i[$campo_descrip]}</option>";
  }
}


function nota_promedio($carnet, $curso){
  $qgr=mysql_query("select grado_estudio from alumnos where carnet = '$carnet'");
  if(mysql_num_rows($qgr)==0){  
    return false;
  }else{
    $igr=mysql_fetch_array($qgr);
    $id_grado=$igr[grado_estudio];
    //echo $id_grado;
    
    
    $qcurso=mysql_query("select * from cursos where codigo = '$curso'");
    $icurso=mysql_fetch_array($qcurso);
    
    if($icurso[promocion]=="S"){
      $sqlnota="select nota from notas_unidades 
                             where grado = '$id_grado' 
                             and unidad = '0'
                             and curso = '$curso'
                             and alumno= '$carnet'";
      $qnotaund=mysql_query($sqlnota);
      if(mysql_num_rows($qnotaund)>0){
        $inotaund=mysql_fetch_array($qnotaund);
        return round($inotaund[nota],0);
      }else{
        return "P";
      }
      
      
    }else{
    
    $nota_promedio=0;
    $suma_notas=0;
    $cnt_unidades=0;
    $qug=mysql_query("select * from unidades_grados where grado = '$id_grado'");
    while($iug=mysql_fetch_array($qug)){
      $cnt_unidades++;
      $sqlnota="select nota from notas_unidades 
                             where grado = '$id_grado' 
                             and unidad = '{$iug[id]}'
                             and curso = '$curso'
                             and alumno= '$carnet'";
      $qnotaund=mysql_query($sqlnota);

      if(mysql_num_rows($qnotaund)>0){
        $inotaund=mysql_fetch_array($qnotaund);
        $suma_notas += $inotaund[nota];
      }
    }
    return round($suma_notas/$cnt_unidades,0);
   }
  }  
}

function get_nombrecurso($codigo){
 global $cxmysql;
 $mcodigo=dec($codigo);
 $q=mysql_query("select curso from cursos where codigo = '$mcodigo'");
 $i=mysql_fetch_array($q);
 return $i[curso];
}

function calc_avg_evcat($idev){
  $id_ev=dec($idev);
  
}

function get_nota_expediente($alumno,$curso, $nivel, $grado){
  $q=mysql_query("select * 
                  from exp_cursos
                  where 
                  alumno='$alumno'
                  and nivel='$nivel'
                  and curso='$curso'
                  and grado = '$grado'");
  if(mysql_num_rows($q)==0){
    return "";
  }else{
    $i=mysql_fetch_array($q);
    return $i[nota];
  }
}

function get_fecha_nota_expediente($alumno,$curso, $nivel, $grado){
  $q=mysql_query("select * 
                  from exp_cursos
                  where 
                  alumno='$alumno'
                  and nivel='$nivel'
                  and curso='$curso'
                  and grado = '$grado'");
  if(mysql_num_rows($q)==0){
    return "";
  }else{
    $i=mysql_fetch_array($q);
    return $i[fecha];
  }
}

function inicial_mayuscula($texto){
  $long=strlen($texto);
  return strtoupper($texto[0]).substr($texto,($long-1)*-1);
}

function get_acuerdo_institucion(){
  $q=mysql_query("select * from general where id = 1");
  $i=mysql_fetch_array($q);
  
  return $i[acuerdo_no];
}

function get_acuerdofecha_institucion(){
  $q=mysql_query("select * from general where id = 1");
  $i=mysql_fetch_array($q);
  
  return $i[acuerdo_fecha];
}

function registro($res){
  return mysql_fetch_array($res);
}

function insertar($tabla, $arreglo, $print_sql=0){
  while (list($posicion, $valor) = each($arreglo)){
    $campos.=$posicion.",";
    $valores.="\"$valor\",";
  }
  
  $campos=substr($campos,0,strlen($campos)-1);
  $valores=substr($valores,0,strlen($valores)-1);
  
  $sql="insert into $tabla ($campos) values ($valores)";
  
  if($print_sql==1){
    echo $sql;
    return;
  }else{
    $res=mysql_query($sql);
    if(!$res){
      echo "ERROR: ".mysql_error();
      exit();
    }
    return mysql_insert_id();
  }  
}

function seleccionar($tabla,$campos='*',$where='',$orden='',$print_sql=0,$limit='', $having=''){
    $sql="select $campos from $tabla";
    
    if(!empty($where)){
      $sql.=" where $where ";
    }    
    
    if(!empty($orden)){
      $sql.=" order by $orden";
    }
  if($print_sql==1){
    echo $sql;
    return;
  }else{
    $res=mysql_query($sql);
    if(!$res){
      echo "ERROR: ".mysql_error();
      exit();
    }
    return $res;
  }
}

function runsql($sql, $print_sql=0){
  if($print_sql==1){
    echo $sql;
    return;
  }else{
    $res=mysql_query($sql);
    if(!$res){
      echo "ERROR: ".mysql_error();
      exit();
    }
    return $res;
  }
}

function actualizar($tabla, $arreglo, $where='', $print_sql=0){
  while (list($posicion, $valor) = each($arreglo)) {
    $campos.="$posicion = \"$valor\", ";
  }
  
  $campos=substr($campos,0,strlen($campos)-2);
  
  $sql="update $tabla set $campos ";
  
  if(!empty($where)){
    $sql.="where $where ";
  }
  
  if($print_sql==1){
    echo $sql;
    return;
  }else{
    $res=mysql_query($sql);
    if(!$res){
      echo "ERROR: ".mysql_error();
      exit();
    }
    return mysql_insert_id();
  }
}

function eliminar($tabla,$where,$print_sql=0){
  $sql="delete from $tabla where $where";
  if($print_sql==1){
   echo $sql;
   return;
  }else{
    $res=mysql_query($sql);
    if(!$res){
      echo "ERROR: ".mysql_error();
      exit();
    }
    return $res;
  }
}

function numero_registros($query){
  return mysql_num_rows($query);
}

function saldo_alumno($carnet, $fechal=''){
  if(empty($fechal)){
    $fechal=date("Y-m-d");
  }
  
  $q=mysql_query("select sum(saldo) as saldo
                  from cp_cargos
                  where carnet = '$carnet'
                  and fecha_cargo <= '$fechal 23:59:59'") or die(mysql_error());
                  
  if(numero_registros($q)==0){
    return 0;
  }else{
    $i=registro($q);
    return $i[saldo];
  }
}

function get_sexoalumno($carnet){
  $q=mysql_query("select sexo from alumnos where carnet = '$carnet'");
  $i=mysql_fetch_array($q);
  return $i[sexo];
}


function redireccionar($url){
  header("Location: $url");
  exit();
}

function tamano_archivo($path){
  $tamano=filesize($path);
  if($tamano<=1048576){
    return round($tamano/1024,2)." KB";
  }else{
    return round($tamano/1024/1024,2)." MB";
  }
}

function get_session_var($variable){
  return $_SESSION[$variable];
}

function get_dist_zona_unidad(){
  $qzu=runsql("select * 
               from zonas_unidades 
               where 
               unidad = '{$_SESSION["unidad_id"]}'
               and curso = '{$_SESSION["curso_id"]}'
               and seccion = '{$_SESSION["seccion_id"]}'
               and grado  = '{$_SESSION["grado_id"]}'");
  if(registros($qzu)==0){
    return (false);
  }else{
    $izu=registro($qzu);
    return $izu[zona];
  }             
}

function get_zona_unidad(){
  $tareas=0;
  $qzu=runsql("select sum(valor_zona) as valor 
               from tareas
               where 
               zona = 'S'
               and activa = 'S'
               and unidad = '{$_SESSION["unidad_id"]}'
               and curso = '{$_SESSION["curso_id"]}'
               and seccion = '{$_SESSION["seccion_id"]}'
               and grado  = '{$_SESSION["grado_id"]}'
               having valor > 0");
  if(registros($qzu)==1){
    $izu=registro($qzu);
    $tareas += $izu[valor];
  }
  
  $qzu=runsql("select sum(valor_zona) as valor 
               from evaluaciones
               where 
               zona = 'S'
               and activa = 'S'
               and unidad = '{$_SESSION["unidad_id"]}'
               and curso = '{$_SESSION["curso_id"]}'
               and seccion = '{$_SESSION["seccion_id"]}'
               and grado  = '{$_SESSION["grado_id"]}'
               having valor > 0");
  if(registros($qzu)==1){
    $izu=registro($qzu);
    $tareas += $izu[valor];
  }
  
  return $tareas;                          
}


function cnt_mensajes($usuario){
 global $cnxmysql, $sid;

  $qmsgs=mysql_query("select count(*) as cant_msg from msg_mensajes where para_usuario = '$usuario' and leido='N' and eliminado = 0");
  $imsgs=mysql_fetch_array($qmsgs);
  
  return($imsgs[cant_msg]);
}
function evaluacion_total_preguntas($id_ev){
  $q1=runsql("select count(*) as cantidad from ev_d_preguntas where evaluacion = '$id_ev' ");
  $i1=registro($q1);
  $q2=runsql("select count(*) as cantidad from ev_m_preguntas where evaluacion = '$id_ev'");
  $i2=registro($q2);
  
  $total=0;
  $total+=$i1[cantidad];
  $total+=$i2[cantidad];
  return $total;
}

//i2010-02-19
function fecha_sumar_dias($fecha, $dias_a_sumar){
  $tmp=explode("-",$fecha);
  $tmpf=date("Y-m-d",mktime(0,0,0, $tmp[1], $tmp[2]+$dias_a_sumar, $tmp[0]));
  return $tmpf;
}

function get_nota_tarea($alumno, $tarea){
   $qnota=runsql("select * from respuesta_tareas where tarea = '$tarea' and alumno='$alumno'");
   if(registros($qnota)==0){
     return "Pendiente de calificar";
   }else{
     $inota=registro($qnota);
     return $inota[nota];
   }
}


function get_nota_evaluacion($alumno, $evaluacion){
  $nota=0;
  $q1=runsql("select * from respuestas_m where evaluacion = '$evaluacion' and alumno = '$alumno'");
  while($i1=registro($q1)){
    $nota+=$i1[nota];
  }
  $q2=runsql("select * from respuestas_d where evaluacion = '$evaluacion' and alumno = '$alumno'");
  while($i2=registro($q2)){
    $nota+=$i1[nota];
  }
  return $nota;
}

//f2010-02-19

function nocopy(){
echo "<link rel=\"stylesheet\" type=\"text/css\" href=\"../estilo_print.css\" media=\"print\" />";

echo "
<script language=\"Javascript\"> 

function disableselect(e){ 
return false 
} 
function reEnable(){ 
return true 
} 
document.onselectstart=new Function (\"return false\") 
if (window.sidebar){ 
document.onmousedown=disableselect 
document.onclick=reEnable 
} 

</script>"; 
}

?>