<?php
/*ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);*/
session_start();
include_once("../config/ConfiguracionBD.php");
include_once("../resources/php/FuncionesComunes.php");
include_once("../models/Encuesta133.php");
include_once("../models/Encuesta.php");
class Encuesta133Controller
{
    public $Encuesta133;
    public $Encuesta;

    function __construct()
    {
        try
        {
            $this->Encuesta133 = new Encuesta133();
            $this->Encuesta = new Encuesta();
        }
        catch (Exception $e)
        {
            throw  $e;
        }
    }

    function realizarEncuesta133($userId,$nombreAlumno)
    {
        try
        {
            $this->Encuesta133->userId = $userId;
            $this->Encuesta133->nombreAlumno = $nombreAlumno;
            $this->Encuesta133->consultarEncuestas133();
            if($this->Encuesta133->encuesta133Id>0)
            {
                $nombreAlumno = $this->Encuesta133->nombreAlumno;
                $userId = $this->Encuesta133->userId;
                switch ($this->Encuesta133->seccionEncuesta)
                {
                    case "seccion1":
                        $resultadoPreguntasSec1 = $this->Encuesta->consultarPreguntasEncuestas(2,1);
                        break;
                    case "seccion2":
                        $resultadoPreguntasSec2 = $this->Encuesta->consultarPreguntasEncuestas(2,2);
                        break;
                    case "seccion3":
                        $resultadoPreguntasSec3 = $this->Encuesta->consultarPreguntasEncuestas(2,3);
                        break;
                    case "seccion4":
                        $resultadoPreguntasSec4 = $this->Encuesta->consultarPreguntasEncuestas(2,4);
                        break;
                }
            }
            $rowEncuesta = $this->Encuesta->consultarEncuestas(2);
            include_once ("../views/encuesta133.php");
        }
        catch (Exception $e)
        {
            throw  $e;
        }
    }

    function registrarInstruccionesEncuesta133($userId,$nombreAlumno)
    {
        try
        {
            $this->Encuesta133->userId = $userId;
            $this->Encuesta133->nombreAlumno = $nombreAlumno;
            if($this->Encuesta133->registrarInstruccionesEncuesta133()>0)
                $arrayRespuesta = array('type'=>'success','msg'=>$nombreAlumno.': Encuesta registrada con éxito','opc'=>FuncionesComunes::encrypt("realizarEncuesta133"),'userId'=>$_REQUEST["userId"],'nombreAlumno'=>$_REQUEST["nombreAlumno"]);
            else
                $arrayRespuesta = array('type'=>'error','msg'=>$nombreAlumno.': Encuesta NO registrada con éxito');
            echo json_encode($arrayRespuesta);
        }
        catch (Exception $e)
        {
            throw  $e;
        }
    }

    function registrarSeccion1Encuesta133($userId,$pregunta1,$pregunta2,$pregunta3,$pregunta4,$pregunta5,$pregunta6,$pregunta7,$pregunta8,$pregunta9,$pregunta10)
    {
        try
        {
            $this->Encuesta133->userId = $userId;
            $this->Encuesta133->consultarEncuestas133();
            if($this->Encuesta133->encuesta133Id>0)
            {
                $this->Encuesta133->pregunta1 = $pregunta1;
                $this->Encuesta133->pregunta2 = $pregunta2;
                $this->Encuesta133->pregunta3 = $pregunta3;
                $this->Encuesta133->pregunta4 = $pregunta4;
                $this->Encuesta133->pregunta5 = $pregunta5;
                $this->Encuesta133->pregunta6 = $pregunta6;
                $this->Encuesta133->pregunta7 = $pregunta7;
                $this->Encuesta133->pregunta8 = $pregunta8;
                $this->Encuesta133->pregunta9 = $pregunta9;
                $this->Encuesta133->pregunta10 = $pregunta10;
                if($this->Encuesta133->registrarSeccion1Encuesta133()>0)
                    $arrayRespuesta = array('type'=>'success','msg'=>$this->Encuesta133->nombreAlumno.': Encuesta registrada con éxito','opc'=>FuncionesComunes::encrypt("realizarEncuesta133"),'userId'=>$_REQUEST["userId"],'nombreAlumno'=>$_REQUEST["nombreAlumno"]);
                else
                    $arrayRespuesta = array('type'=>'error','msg'=>$this->Encuesta133->nombreAlumno.': Encuesta NO registrada con éxito');
            }
            else
                $arrayRespuesta = array('type'=>'error1','msg'=> 'No se encontro la encuesta.');
            echo json_encode($arrayRespuesta);
        }
        catch (Exception $e)
        {
            throw  $e;
        }
    }

    function registrarSeccion2Encuesta133($userId,$pregunta11,$pregunta12,$pregunta13,$pregunta14,$pregunta15,$pregunta16,$pregunta17,$pregunta18,$pregunta19,$pregunta20)
    {
        try
        {
            $this->Encuesta133->userId = $userId;
            $this->Encuesta133->consultarEncuestas133();
            if($this->Encuesta133->encuesta133Id>0)
            {
                $this->Encuesta133->pregunta11 = $pregunta11;
                $this->Encuesta133->pregunta12 = $pregunta12;
                $this->Encuesta133->pregunta13 = $pregunta13;
                $this->Encuesta133->pregunta14 = $pregunta14;
                $this->Encuesta133->pregunta15 = $pregunta15;
                $this->Encuesta133->pregunta16 = $pregunta16;
                $this->Encuesta133->pregunta17 = $pregunta17;
                $this->Encuesta133->pregunta18 = $pregunta18;
                $this->Encuesta133->pregunta19 = $pregunta19;
                $this->Encuesta133->pregunta20 = $pregunta20;
                if($this->Encuesta133->registrarSeccion2Encuesta133()>0)
                    $arrayRespuesta = array('type'=>'success','msg'=>$this->Encuesta133->nombreAlumno.': Encuesta registrada con éxito','opc'=>FuncionesComunes::encrypt("realizarEncuesta133"),'userId'=>$_REQUEST["userId"],'nombreAlumno'=>$_REQUEST["nombreAlumno"]);
                else
                    $arrayRespuesta = array('type'=>'error','msg'=>$this->Encuesta133->nombreAlumno.': Encuesta NO registrada con éxito');
            }
            else
                $arrayRespuesta = array('type'=>'error1','msg'=> 'No se encontro la encuesta.');
            echo json_encode($arrayRespuesta);
        }
        catch (Exception $e)
        {
            throw  $e;
        }
    }

    function registrarSeccion3Encuesta133($userId,$pregunta21,$pregunta22,$pregunta23,$pregunta24,$pregunta25,$pregunta26,$pregunta27,$pregunta28,$pregunta29,$pregunta30)
    {
        try
        {
            $this->Encuesta133->userId = $userId;
            $this->Encuesta133->consultarEncuestas133();
            if($this->Encuesta133->encuesta133Id>0)
            {
                $this->Encuesta133->pregunta21 = $pregunta21;
                $this->Encuesta133->pregunta22 = $pregunta22;
                $this->Encuesta133->pregunta23 = $pregunta23;
                $this->Encuesta133->pregunta24 = $pregunta24;
                $this->Encuesta133->pregunta25 = $pregunta25;
                $this->Encuesta133->pregunta26 = $pregunta26;
                $this->Encuesta133->pregunta27 = $pregunta27;
                $this->Encuesta133->pregunta28 = $pregunta28;
                $this->Encuesta133->pregunta29 = $pregunta29;
                $this->Encuesta133->pregunta30 = $pregunta30;
                if($this->Encuesta133->registrarSeccion3Encuesta133()>0)
                    $arrayRespuesta = array('type'=>'success','msg'=>$this->Encuesta133->nombreAlumno.': Encuesta registrada con éxito','opc'=>FuncionesComunes::encrypt("realizarEncuesta133"),'userId'=>$_REQUEST["userId"],'nombreAlumno'=>$_REQUEST["nombreAlumno"]);
                else
                    $arrayRespuesta = array('type'=>'error','msg'=>$this->Encuesta133->nombreAlumno.': Encuesta NO registrada con éxito');
            }
            else
                $arrayRespuesta = array('type'=>'error1','msg'=> 'No se encontro la encuesta.');
            echo json_encode($arrayRespuesta);
        }
        catch (Exception $e)
        {
            throw  $e;
        }
    }

    function registrarSeccion4Encuesta133($userId,$pregunta31,$pregunta32,$pregunta33,$pregunta34,$pregunta35,$pregunta36,$pregunta37,$pregunta38,$pregunta39,$pregunta40,$pregunta41,$pregunta42)
    {
        try
        {
            $this->Encuesta133->userId = $userId;
            $this->Encuesta133->consultarEncuestas133();
            if($this->Encuesta133->encuesta133Id>0)
            {
                $this->Encuesta133->pregunta31 = $pregunta31;
                $this->Encuesta133->pregunta32 = $pregunta32;
                $this->Encuesta133->pregunta33 = $pregunta33;
                $this->Encuesta133->pregunta34 = $pregunta34;
                $this->Encuesta133->pregunta35 = $pregunta35;
                $this->Encuesta133->pregunta36 = $pregunta36;
                $this->Encuesta133->pregunta37 = $pregunta37;
                $this->Encuesta133->pregunta38 = $pregunta38;
                $this->Encuesta133->pregunta39 = $pregunta39;
                $this->Encuesta133->pregunta40 = $pregunta40;
                $this->Encuesta133->pregunta41 = $pregunta41;
                $this->Encuesta133->pregunta42 = $pregunta42;
                if($this->Encuesta133->registrarSeccion4Encuesta133()>0)
                    $arrayRespuesta = array('type'=>'success','msg'=>$this->Encuesta133->nombreAlumno.': Encuesta registrada con éxito','opc'=>FuncionesComunes::encrypt("realizarEncuesta133"),'userId'=>$_REQUEST["userId"],'nombreAlumno'=>$_REQUEST["nombreAlumno"]);
                else
                    $arrayRespuesta = array('type'=>'error','msg'=>$this->Encuesta133->nombreAlumno.': Encuesta NO registrada con éxito');
            }
            else
                $arrayRespuesta = array('type'=>'error1','msg'=> 'No se encontro la encuesta.');
            echo json_encode($arrayRespuesta);
        }
        catch (Exception $e)
        {
            throw  $e;
        }
    }

    function cancelarEncuesta133($userId)
    {
        try
        {
            $this->Encuesta133->userId = $userId;
            $this->Encuesta133->consultarEncuestas133();
            if($this->Encuesta133->encuesta133Id>0)
            {
                if($this->Encuesta133->cancelarEncuesta133()>0)
                    $arrayRespuesta = array('type'=>'success','msg'=>$this->Encuesta133->nombreAlumno.': Encuesta cancelada con éxito','opc'=>FuncionesComunes::encrypt("realizarEncuesta133"),'nombre'=>FuncionesComunes::encrypt($this->Encuesta133->nombreAlumno),'userId'=>$_REQUEST["userId"],'nombreAlumno'=>$_REQUEST["nombreAlumno"]);
                else
                    $arrayRespuesta = array('type'=>'error','msg'=>$this->Encuesta133->nombreAlumno.': Encuesta NO cancelada con éxito');
            }
            else
                $arrayRespuesta = array('type'=>'error1','msg'=> 'No se encontro la encuesta.');
            echo json_encode($arrayRespuesta);
        }
        catch (Exception $e)
        {
            throw  $e;
        }
    }

    function guardaImagenGrafica($encuestaId,$imagenGrafica)
    {
        try
        {
            $this->Encuesta133->encuesta133Id = $encuestaId;
            $this->Encuesta133->consultarEncuestas133();
            if($this->Encuesta133->encuesta133Id>0)
            {
                $this->Encuesta133->imagenGrafica = $imagenGrafica;
                if($this->Encuesta133->guardaImagenGrafica()>0)
                    $arrayRespuesta = array('type'=>'success','msg'=>$this->Encuesta133->nombreAlumno.': Encuesta cancelada con éxito','opc'=>FuncionesComunes::encrypt("realizarEncuesta133"),'nombre'=>FuncionesComunes::encrypt($this->Encuesta133->nombreAlumno),'userId'=>$_REQUEST["userId"],'nombreAlumno'=>$_REQUEST["nombreAlumno"]);
                else
                    $arrayRespuesta = array('type'=>'error','msg'=>$this->Encuesta133->nombreAlumno.': Encuesta NO cancelada con éxito');
            }
            else
                $arrayRespuesta = array('type'=>'error1','msg'=> 'No se encontro la encuesta.');
            echo json_encode($arrayRespuesta);
        }
        catch (Exception $e)
        {
            throw  $e;
        }
    }

    function pdfResultadoEncuesta133($encuesta133Id,$nombreAlumno)
    {
        try
        {

            //header('Content-type: application/pdf');
            /*require_once '../vendor/autoload.php';
            $arrItems= array('Visionario','Coach','Afiliativo','Democrático','Timonel','Autoritario');
            $arrItemsValores= array(0,0,0,0,0,0);
            $this->Encuesta133 = new Encuesta133();
            $this->Encuesta133->encuesta133Id = $encuesta133Id;
            $resultadoEncuesta = $this->Encuesta133->consultarEncuestas133(1);
            $rowResultadoEncuesta = $resultadoEncuesta->fetch_assoc();
            $mpdf = new \Mpdf\Mpdf(['tempDir' => sys_get_temp_dir().DIRECTORY_SEPARATOR.'mpdf', 'mode' => 'utf-8' ,
                'format' => 'Letter' , 'margin_left' => 25 , 'margin_right' => 20 , 'margin_top' => 45 ,
                'margin_bottom' => 30 ,'margin-header'=>9, 'margin-footer'=>30,'orientation' => 'P' ]);
            $mpdf->ignore_invalid_utf8 = true;
            //$cssbootstrap=file_get_contents('../resources/css/bootstrap.css');
            //$mpdf->WriteHTML($cssbootstrap,1);
            $mpdf->WriteHTML(utf8_encode("Hola Mundo"));
            //$mpdf->WriteHTML(require "../views/resultadoencuesta133pdf.php");
            ob_clean(); // cleaning the buffer before Output()
            $nombreArchivo = 'Encuesta133_' . $encuesta133Id;
            $mpdf->Output($nombreArchivo . '.pdf', "D");
            //$arrayRespuesta = array('type'=>'success','msg'=>$nombreAlumno.': Encuesta registrada con éxito','opc'=>FuncionesComunes::encrypt("realizarEncuesta233"),'userId'=>$_REQUEST["userId"],'nombreAlumno'=>$_REQUEST["nombreAlumno"]);
            //echo json_encode($arrayRespuesta);
            echo "1";*/
        }
        catch (Exception $e)
        {
            throw $e;
        }
    }

}

if($_REQUEST["opc"] != "" && $_REQUEST["userId"] && $_REQUEST["nombreAlumno"])
{
    $opcionRegistro = FuncionesComunes::decrypt($_REQUEST["opc"]);
    switch ($opcionRegistro)
    {
        case "realizarEncuesta133":

            $userId = FuncionesComunes::decrypt( $_REQUEST["userId"]);
            $nombreAlumno = FuncionesComunes::decrypt($_REQUEST["nombreAlumno"]);
            $Encuesta133Controller = new Encuesta133Controller();
            $Encuesta133Controller->realizarEncuesta133($userId,$nombreAlumno);
            break;
        case "registrarInstruccionesEncuesta133":
            $Encuesta133Controller = new Encuesta133Controller();
            $userId = FuncionesComunes::decrypt($_REQUEST["userId"]);
            $nombreAlumno = FuncionesComunes::decrypt($_REQUEST["nombreAlumno"]);
            $Encuesta133Controller->registrarInstruccionesEncuesta133($userId,$nombreAlumno);
            break;
        case "registrarSeccion1Encuesta133":
            $Encuesta133Controller = new Encuesta133Controller();
            $userId = FuncionesComunes::decrypt($_REQUEST["userId"]);
            $nombreAlumno = FuncionesComunes::decrypt($_REQUEST["nombreAlumno"]);
            $Encuesta133Controller->registrarSeccion1Encuesta133($userId,$_POST["pregunta1"],$_POST["pregunta2"],$_POST["pregunta3"],$_POST["pregunta4"],$_POST["pregunta5"],$_POST["pregunta6"],$_POST["pregunta7"],$_POST["pregunta8"],$_POST["pregunta9"],$_POST["pregunta10"]);
            break;
        case "registrarSeccion2Encuesta133":
            $Encuesta133Controller = new Encuesta133Controller();
            $userId = FuncionesComunes::decrypt($_REQUEST["userId"]);
            $nombreAlumno = FuncionesComunes::decrypt($_REQUEST["nombreAlumno"]);
            $Encuesta133Controller->registrarSeccion2Encuesta133($userId,$_POST["pregunta11"],$_POST["pregunta12"],$_POST["pregunta13"],$_POST["pregunta14"],$_POST["pregunta15"],$_POST["pregunta16"],$_POST["pregunta17"],$_POST["pregunta18"],$_POST["pregunta19"],$_POST["pregunta20"]);
            break;
        case "registrarSeccion3Encuesta133":
            $Encuesta133Controller = new Encuesta133Controller();
            $userId = FuncionesComunes::decrypt($_REQUEST["userId"]);
            $nombreAlumno = FuncionesComunes::decrypt($_REQUEST["nombreAlumno"]);
            $Encuesta133Controller->registrarSeccion3Encuesta133($userId,$_POST["pregunta21"],$_POST["pregunta22"],$_POST["pregunta23"],$_POST["pregunta24"],$_POST["pregunta25"],$_POST["pregunta26"],$_POST["pregunta27"],$_POST["pregunta28"],$_POST["pregunta29"],$_POST["pregunta30"]);
            break;
        case "registrarSeccion4Encuesta133":
            $Encuesta133Controller = new Encuesta133Controller();
            $userId = FuncionesComunes::decrypt($_REQUEST["userId"]);
            $nombreAlumno = FuncionesComunes::decrypt($_REQUEST["nombreAlumno"]);
            $Encuesta133Controller->registrarSeccion4Encuesta133($userId,$_POST["pregunta31"],$_POST["pregunta32"],$_POST["pregunta33"],$_POST["pregunta34"],$_POST["pregunta35"],$_POST["pregunta36"],$_POST["pregunta37"],$_POST["pregunta38"],$_POST["pregunta39"],$_POST["pregunta40"],$_POST["pregunta41"],$_POST["pregunta42"]);
            break;
        case "cancelarEncuesta133":
            $Encuesta133Controller = new Encuesta133Controller();
            $userId = FuncionesComunes::decrypt($_REQUEST["userId"]);
            $nombreAlumno = FuncionesComunes::decrypt($_REQUEST["nombreAlumno"]);
            $Encuesta133Controller->cancelarEncuesta133($userId);
            break;
        case "guardaImagenGrafica":
            $Encuesta133Controller = new Encuesta133Controller();
            $userId = FuncionesComunes::decrypt($_REQUEST["userId"]);
            $encuestaId = FuncionesComunes::decrypt($_REQUEST["encuestaId"]);
            $nombreAlumno = FuncionesComunes::decrypt($_REQUEST["nombreAlumno"]);
            $Encuesta133Controller->guardaImagenGrafica($encuestaId,$_REQUEST["base64"]);
            break;
        case "pdfResultadoEncuesta133":
            $Encuesta133Controller = new Encuesta133Controller();
            $encuestaId = FuncionesComunes::decrypt($_REQUEST["encuestaId"]);
            $nombreAlumno = FuncionesComunes::decrypt($_REQUEST["nombreAlumno"]);
            $Encuesta133Controller->pdfResultadoEncuesta133($encuestaId,$nombreAlumno);
            break;
    }
}