<?php

require_once("../includes/clase_sesion.php");
$sesion = new sesion(); // inicio la sesion

require_once("../includes/funciones_generales.php");
if (!comprobar_sesion()) {
    $ar = array();
    $ar['error'] = 'session';
    echo json_encode($ar);
    exit;
}
require_once("../includes/MySQL.php");
$permisos = str_split($sesion->get('permiso'));

if (!in_array("A", $permisos) && !in_array("M", $permisos) && !in_array("E", $permisos)) {
    $rta = array('error' => 10001, 'desc' => "No tiene permisos");
    echo json_encode($rta);
    exit;
}

if (isset($_POST['dt'])) {

    $academia = new Servidor_Base_Datos(AC_CONN_HOST, AC_CONN_USER, AC_CONN_PASS, AC_CONN_DB . "" . $sesion->get('anio'));

    $v = $_POST['dt']; //recojo la informacion;
    $ide_escala = $_POST['escala'];
    $cad_final = ""; // se envia tres campos en este roden: [cod_nota_desempenio,nota_definitiva_numeros,observaciones] los cuales se guardan en la tabla aca_notasxdes
    $cad_notas = ""; // se envia dos campos en este orden: [cod_calxasixest,num_nota] de los cuales el cmp num_nota se  deben actualizar  en la tabla aca_calxasixest segun el cod_calxasixest
    $cad_recup = ""; // se envia 4 campos en este orden [cod_calxasixest,nota_recupera_numeros,fecha_recuperacion,observa_recuperacion] los cuales se guardan en la tabla aca_recuperaciones; hay q tener en cuanta que se debe inseratr si no exite o actualizar y borrar si es necesario en caso de que exista y la nota de recuperacion sea vacia
    //print_r($datos);
    $cad_final = $v["final"];
    $cad_notas = $v["notas"];
    $cad_recup = $v["recups"];

    /* foreach($datos as $v){
      $dt_def=$v["final"];
      $dt_nots=$v["notas"];
      $dt_recs=$v["recups"];
      print_r($dt_def);
      if(is_array($dt_def)){
      $cad_final=$cad_final . $dt_def['id']."|".$dt_def['def']."|".str_replace('\n','<br>',$academia->escapar($dt_def['obs_gral']))."|";
      }

      if(is_array($dt_nots)){
      foreach($dt_nots as $n){
      $nota=$n[not];
      $cad_notas.=$n[id]."|".$nota."|";
      }
      }

      if(is_array($dt_recs)){
      foreach($dt_recs as $rc){
      if($rc[not_rec]==""){
      $cad_recup.=$rc[id]."|del|||";
      }else{
      $cad_recup.=$rc[id]."|".$rc[not_rec]."|".$rc[fec_rec]."|".$rc[obs_rec]."|";
      }
      }
      }
      } */

    if (!empty($cad_final) || !empty($cad_notas) || !empty($cad_recup)) {
        $ide_usuario = $sesion->get("ac_userid");
        $sql = "call SP_GUARDA_INFO_CALIFICACIONES('$cad_notas','$cad_recup','$cad_final',$ide_usuario, $ide_escala)";

        $academia->instruccion($sql);
        if ($academia->extraer_error() > 0) {
            $rta = array('error' => $academia->extraer_error(), 'desc' => 'Error. No se completo la transferencia');
        } else {
            $rta = array('error' => 0);
        }
        $rta['sql'] = $sql;
    } else {
        $rta = array('error' => 0, 'desc' => 'No ha realizado ningun cambio en las notas');
    }

    $academia->cerrar();
    echo json_encode($rta);
} else {
    $rta = array('error' => 0);
    echo json_encode($rta);
}
?> 