<?php
class GCurso{    

    public function listar(){
        return "SELECT 
        c.id_curso as id, 
        c.no_curso as noCurso, 
        c.id_tipo_curso as idTipoCurso,
        no_tipo_curso as noTipoCurso,
        c.ca_curso as caCurso,
        c.de_curso as deCurso, 
        c.ti_curso as tiCurso,
        c.fe_curso as feCurso,
        c.va_curso as vaCurso,
        c.va_curso_dol as vaCursoDol,
        c.url_video as video, 
        c.url_curso as imagen, 
        c.status,
        (CASE WHEN c.status = '1' THEN 'Activo' ELSE 'Inactivo' END) AS noStatus,
		c.url_banner as imgBanner,
		c.url_galeria_1 as imgGaleria1,
		c.url_galeria_2 as imgGaleria2,
		c.url_galeria_3 as imgGaleria3,
        c.url_galeria_4 as imgGaleria4,
        c.url_galeria_5 as imgGaleria5,
        c.url_galeria_6 as imgGaleria6,
        c.url_galeria_7 as imgGaleria7,
        c.url_galeria_8 as imgGaleria8
        FROM tb_curso c
        INNER JOIN tc_tipo_curso tc ON c.id_tipo_curso = tc.id_tipo_curso
        WHERE c.STATUS = '1'";
    }

    public function listarCurso(){
      return "SELECT 
      c.id_curso as id, 
      c.no_curso as noCurso, 
      c.id_tipo_curso as idTipoCurso,
      no_tipo_curso as noTipoCurso,
      c.ca_curso as caCurso,
      c.de_curso as deCurso, 
      c.ti_curso as tiCurso,
      c.fe_curso as feCurso,
      c.va_curso as vaCurso, 
      c.url_video as video, 
      c.url_curso as imagen, 
      c.status,
      (CASE WHEN c.status = '1' THEN 'Activo' ELSE 'Inactivo' END) AS noStatus 
      FROM tb_curso c
      INNER JOIN tc_tipo_curso tc ON c.id_tipo_curso = tc.id_tipo_curso
      WHERE c.STATUS = '1' AND c.id_tipo_curso = '1'";
  }

    public function listarTaller(){
      return "SELECT 
              c.id_curso_clase as id, 
              c.no_curso_clase as noCurso, 
              c.id_tipo_plan as idTipoCurso,
              '' as noTipoCurso,
              '' as caCurso,
              c.de_clase as deCurso, 
              '' as tiCurso,
              '' as feCurso,
              c.va_monto as vaCurso, 
              c.va_monto_dol as vaCursoDol,
              '' as video, 
              c.url_clase as imagen, 
              c.status,
              (CASE WHEN c.status = '1' THEN 'Activo' ELSE 'Inactivo' END) AS noStatus 
              FROM tb_curso_clase c
              WHERE c.STATUS = '1' AND c.id_tipo_plan = '4'";
    }

    public function cursoXId(){
        return "SELECT  
                c.id_curso as id,
                c.id_tipo_curso as idTipoCurso,
                c.no_curso as noCurso, 
                c.de_curso as deCurso, 
                c.ti_curso as tiCurso, 
                c.fe_curso as feCurso, 
                c.url_curso as imagen,
                c.url_video as video, 
                c.id_usuario as idUsuario, 
                c.va_curso as vaCurso,
                c.va_curso_dol as vaCursoDol,
                c.fe_registro as feRegistro, 
                c.status as estado,
				c.url_banner as imgBanner,
				c.url_galeria_1 as imgGaleria1,
				c.url_galeria_2 as imgGaleria2,
				c.url_galeria_3 as imgGaleria3,
                c.url_galeria_4 as imgGaleria4,
                c.url_galeria_5 as imgGaleria5,
                c.url_galeria_6 as imgGaleria6,
                c.url_galeria_7 as imgGaleria7,
                c.url_galeria_8 as imgGaleria8
                FROM tb_curso AS c
                WHERE c.id_curso = ?";
    }

    // public function listarClasesCurso(){
    //     return "SELECT  tcp.id_curso_plan AS id, tcp.no_curso_plan AS noCursoPlan, tcp.id_tipo_plan AS idTipoPlan, ttp.no_tipo_plan AS noTipoPlan,
    //                     tcp.url_video AS video, tcp.url_curso AS imagen, tcp.id_usuario AS idUsuario, tcp.fe_registro AS feRegistro
    //             FROM tb_curso_plan tcp
    //             JOIN tc_tipo_plan ttp on ttp.id_tipo_plan=tcp.id_tipo_plan
    //             WHERE tcp.id_curso = ?";
    // }

    public function listarClasesCurso(){
      return "SELECT  
                tcp.id_curso_clase AS id, 
                tcp.no_curso_clase AS noCursoPlan, 
                tcp.id_tipo_plan AS idTipoPlan, 
                ttp.no_tipo_plan AS noTipoPlan,
                tcp.id_usuario AS idUsuario, 
                tcp.fe_registro AS feRegistro
                FROM tb_curso_clase tcp
                JOIN tc_tipo_plan ttp on ttp.id_tipo_plan=tcp.id_tipo_plan
              WHERE tcp.id_curso = ?";
  }

    public function agregarPagoCliente(){
        return "INSERT INTO tb_pago_cliente (id_curso,id_cliente,fe_registro,tipo,id_usuario_modificacion,fe_modificacion,id_curso_cliente)
         VALUES (?,?,NOW(),?,?,current_timestamp(),?);";
    }

    public function existePagoCliente(){
      return "SELECT count(1) AS existe
              FROM tb_cliente tc 
              JOIN tb_pago_cliente tpc on tpc.id_cliente = tc.id_cliente
              WHERE UPPER(tc.no_email) = UPPER(?) 
              AND tpc.id_curso = ? and tpc.tipo = ?";
    }

    public function estadoPagoCliente(){
      return "SELECT tpc.status 
              FROM tb_cliente tc 
              JOIN tb_pago_cliente tpc on tpc.id_cliente = tc.id_cliente
              WHERE UPPER(tc.no_email) = UPPER(?) 
              AND tpc.id_curso = ? and tpc.tipo = ?";
    }

    public function listarPlanesCurso(){
        return "SELECT DISTINCT CP.id_curso AS id, CP.id_tipo_plan AS idTipoPlan, TP.no_tipo_plan AS noTipoPlan
                FROM tb_curso_plan CP
                JOIN tc_tipo_plan TP ON TP.id_tipo_plan = CP.id_tipo_plan
                WHERE CP.id_curso=?";
    }
    
    public function guardar(){
        return "INSERT INTO tb_curso( no_curso,id_tipo_curso,de_curso,ca_curso,ti_curso,fe_curso,va_curso,va_curso_dol,url_video,url_curso,status,url_banner,url_galeria_1,url_galeria_2,url_galeria_3,url_galeria_4,url_galeria_5,url_galeria_6,url_galeria_7,url_galeria_8,id_curso) 
        VALUES (?,?,?,?,?,?,?,?,?,?,'1',?,?,?,?,?,?,?,?,?,?)";
    }

    public function modificar(){
            return "UPDATE tb_curso SET no_curso = ?, id_tipo_curso = ?, de_curso = ?, ca_curso = ?, ti_curso = ?, fe_curso = ?, va_curso = ?, va_curso_dol = ?, url_video = ? , url_curso = ? , url_banner = ? , url_galeria_1 = ? , url_galeria_2 = ? , url_galeria_3 = ? , url_galeria_4 = ? , url_galeria_5 = ? , url_galeria_6 = ? , url_galeria_7 = ? , url_galeria_8 = ? WHERE id_curso = ?";
    }  

    public function eliminar(){
      return "UPDATE tb_curso SET `status` = '0' WHERE id_curso = ?";
    }

    public function listaCursoId(){
      return "SELECT DISTINCT
                IFNULL(c.id_curso, tcc.id_curso_clase) AS idCurso,
                IFNULL(c.no_curso, tcc.no_curso_clase) AS noCurso,
                c.url_video AS video,
                IFNULL(c.url_curso, tcc.url_clase) AS imagen,
                IFNULL(de_curso, tcc.de_clase) AS deCurso,
                (CASE WHEN IFNULL(c.status, tcc.status) = '1' THEN 'Activo' ELSE 'Inactivo' END) AS noStatus,
                IFNULL(c.status, tcc.status) AS status,
                IFNULL(c.de_curso, tcc.de_clase) AS deCurso,
                IFNULL(c.url_curso, tcc.url_clase) AS urlImagen,
                'bg-green' AS estilo,
                pc.tipo AS tipo,
                c.ti_curso AS tiCurso,
                pc.fe_registro AS feRegistro,
								pc.fe_activacion AS feActivacion,
								pc.meses_contrato AS mesesContrato
            FROM tb_pago_cliente pc
            LEFT JOIN tb_curso c ON pc.id_curso = c.id_curso
            LEFT JOIN tb_curso_clase tcc ON tcc.id_curso_clase = pc.id_curso
            WHERE pc.status = '1'
              AND pc.id_cliente = ?
              AND (pc.tipo != 'C' OR DATE_ADD(pc.fe_registro, INTERVAL c.ti_curso MONTH) > NOW())" ;   
    }

    public function obtenerUrlVideoImagen(){
      return "SELECT url_video as video, url_curso as imagen FROM tb_curso WHERE id_curso = ?";
    } 

    public function listarTipoCurso(){
      return "SELECT id_tipo_curso as idTipoCurso , no_tipo_curso as noTipoCurso FROM tc_tipo_curso WHERE id_tipo_curso = 1";
    }
    
    public function datosClienteCorreo(){
      return "SELECT 
              tc.no_cliente AS noCliente, 
              tc.nu_telefono AS nuTelefono,
              IFNULL(tcr.no_curso,tcc.no_curso_clase) AS noCurso, 
              DATE_FORMAT(tpc.fe_registro, '%d/%m/%Y') AS feRegistro
              FROM tb_cliente tc 
              JOIN tb_pago_cliente tpc on tpc.id_cliente = tc.id_cliente
              LEFT JOIN tb_curso tcr on tcr.id_curso = tpc.id_curso
              LEFT JOIN tb_curso_clase tcc on tcc.id_curso_clase = tpc.id_curso
              WHERE UPPER(tc.no_email) = UPPER(?) 
              AND tpc.id_curso = ?";
    }
  
}
?>