<?php

defined('BASEPATH') OR exit('No direct script access allowed');

class Home extends CI_Controller {

    function __construct() {
        parent::__construct();
        $this->load->model('Cadastro_Model');
        $this->load->model('Auditoria_Model');
        $this->load->model('Matricula_Model');
        $this->load->database();
        $this->load->library('template');
        $this->load->library('url');
        $this->load->library('Sanitize');
    }


    public function promocao_amazonia() {

        $dados = array('descricao' => '','termos' => $this->Cadastro_Model->obtemTermo(), 'titulo' => 'Amazõnia Cursos', 'aluno' => $this->Cadastro_Model->aluno());
        $this->load->view('promocao', $dados);
    }

    
    
    public function index() {
        
        $dados = array('descricao' => 'O Amazônia Cursos é uma plataforma de estudos baseada em cursos livres. Com certificados aprovados pela lei de amparo a cursos livres, é a perfeita solução para você que deseja estudar sem sair de casa, aprimorar seus conhecimentos ou dar aquela melhorada no currículo. Cursos com certificados de participação e conclusão, facilidade de acesso e o melhor de tudo: Você estuda de graça e paga apenas pelo certificado do seu curso','termos' => $this->Cadastro_Model->obtemTermo(), 'titulo' => 'Página Inicial', 'aluno' => $this->Cadastro_Model->aluno());
        $this->load->view('inicio', $dados);
    }

    public function verificalogin() {

        $email = $this->input->post('email', TRUE);

        $this->form_validation->set_rules('email', 'Email', 'trim|required|valid_email', array('required' => ' <i class="fa fa-info-circle"></i> O seu e-mail está em branco. ', 'valid_email' => ' <i class="fa fa-info-circle"></i> O campo email deve conter um endereço de e-mail válido. '));

        $aluno = $this->Cadastro_Model->getAlunoPorEmail($email);

        if ($this->form_validation->run() == FALSE) {
            $form = validation_errors();
            $data = array('situacao' => 'form-erro', 'erro_form' => $form);
            echo json_encode($data);
        } else {
            if ($aluno != NULL) {
                $data = array('email' => $email, 'situacao' => 'true');
                echo json_encode($data);
            } else {
                $this->session->set_userdata("email-aluno", $email);
                $data = array('email' => $email, 'situacao' => 'false');
                echo json_encode($data);
            }
        }
    }
    public function verificanovotermo() {

    }
    public function login() {
        $_POST = $this->sanitize->filter($this->input->post());
        $email = mb_strtolower($this->input->post('email', TRUE));
        $senha = $this->input->post('senha-login', TRUE);
        if ($email != "" || $senha != "") {
        $this->form_validation->set_rules('email', 'Email', 'trim|required|valid_email', array('required' => ' <i class="fa fa-info-circle"></i> O seu e-mail está em branco. ', 'valid_email' => ' <i class="fa fa-info-circle"></i> O campo email deve conter um endereço de e-mail válido. '));

        $this->form_validation->set_rules('senha-login', 'Senha-login', 'trim|required|min_length[4]', array('required' => ' <i class="fa fa-info-circle"></i> O campo senha está em branco. ', 'min_length' => '<i class="fa fa-info-circle"></i> O campo senha deve conter pelo menos 4 caracteres.'));

        if ($this->form_validation->run() == FALSE) {
            $form = validation_errors();
            $data = array('situacao' => 'form-erro', 'erro_form' => $form);
            echo json_encode($data);
        } else {

            $senha = $this->Cadastro_Model->codifica($senha);

            $aluno = $this->Cadastro_Model->getLoginAluno($email, $senha);

            if ($aluno != NULL) {

                $this->auditoria($aluno);

//                ($aluno['situacao'] > 0) ? $this->session->unset_userdata('controle-aluno') : $this->session->set_userdata("controle-aluno", 1);
                if ($aluno['situacao'] == 0) {
                    $area_interesses = $this->Cadastro_Model->area_interesses();
                    if (empty($area_interesses)) {
                        $this->session->set_userdata("controle-aluno", 1);
                    } else {
                        $this->session->unset_userdata('controle-aluno');
                    }
                }

                // SE FOR LOGIN SEM MATRÍCULA
                if (isset($_SESSION['matricula-aluno']) == FALSE) {
                    /*
                     * Cria flag para controlar a solicitação de notificação Push
                     */
                    $_SESSION['first_login'] = true;
                    $data = array('situacao' => 'sucesso');
                    echo json_encode($data);
                } else {
                    /*
                     * Cria flag para controlar a solicitação de notificação Push
                     */
                    $_SESSION['first_login'] = true;

                    // SE FOR LOGIN NORMAL COM MATRÍCULA REALIZO A MATRÍCULA DO ALUNO APÓS O LOGIN E REDIRECIONO PARA [CURSOS MATRICULADOS]
                    $id_curso = $_SESSION['matricula-aluno']['id_curso'];

                    $data = array('situacao' => 'sucesso-matricula');
                    $id_aluno = $aluno['id_aluno'];
                    $hash = $this->Matricula_Model->gera_hash();
                    $aut = $this->Matricula_Model->gera_autenticacao($hash);
                    $verificamat = $this->Matricula_Model->obtemCursoMatriculadoporID($id_curso);
                    $con = $this->Matricula_Model->obtemCursoConcluido($id_curso);
                    $concluido = $con['concluido'];
                    $this->verificamatricula($verificamat, $id_aluno, $aut, $concluido);
                }
            } else {
                $data = array('situacao' => 'login-erro');
                echo json_encode($data);
            }
        }
    } else {
        redirect();
    }
  }
    public function verificamatricula($verificamat, $id_aluno, $aut, $concluido) {

        if ($verificamat == NULL) {
            $this->Matricula_Model->realizamatricula($id_aluno, $aut);
            $data = array('situacao' => 'sucesso-matricula');
            echo json_encode($data);
        } else if ($concluido == 1 || $concluido == 2) {
            $this->Matricula_Model->realizamatricula($id_aluno, $aut);
            $data = array('situacao' => 'sucesso-matricula');
            echo json_encode($data);
        } else {
            $this->session->set_flashdata('matriculado-l-erro', ' <div class="alert alert-warning " role="alert"><i class="fa fa-exclamation-triangle"></i>     Você já possui esse curso, para se matricular novamente é necessário concluir ou cancelar o mesmo</div>');
            $data = array('situacao' => 'matriculado-l-erro');
            echo json_encode($data);
        }
    }

    public function auditoria($aluno) {
        $this->session->set_userdata("aluno", $aluno);
        $idAluno = $aluno['id_aluno'];
        $ip = $this->url->get_client_ip_server();
        $dataAuditoria = date("Y-m-d");
        $horaAuditoria = date("H:i:s");
        $mailAluno = $aluno['email'];
        $name = $aluno['nome'];
        $version = $this->url->getBrowser();

        $this->Auditoria_Model->insereAuditoria($idAluno, $ip, $dataAuditoria, $horaAuditoria, $mailAluno, $name, $version);
    }

    public function recuperasenha() {
        $_POST = $this->sanitize->filter($this->input->post());
        $email = mb_strtolower($this->input->post('email', TRUE));
        if ($email != "") {
        $this->form_validation->set_rules('email', 'Email', 'trim|required|valid_email', array('required' => ' <i class="fa fa-info-circle"></i> O seu e-mail está em branco. ', 'valid_email' => ' <i class="fa fa-info-circle"></i> O campo email deve conter um endereço de e-mail válido. '));
        if ($this->form_validation->run() == FALSE) {
            $form = validation_errors();
            $data = array('situacao' => 'form-erro', 'erro_form' => $form);
            echo json_encode($data);
        } else {

            $aluno = $this->Cadastro_Model->getAlunoPorEmail($email);

            if ($aluno != NULL) {


                $telefone = $aluno['ddd'] . $aluno['telefone'];

                $validaCel = substr($aluno['telefone'],1,1);
                // Verificando se é celular
                $celReal = array ("9","8","7","6","5");
                if (in_array($validaCel, $celReal)){
                $mensagem = 'Seus dados foram recuperados. Seu email: '.$email. '. Sua senha: '. $this->Cadastro_Model->decodifica($aluno['senha']). " Acesse www.amazoniacursos.com.br";
                
                 $mensagemzap = 'Seus dados foram recuperados. Seu email: '.$email. '. Sua senha: '. $this->Cadastro_Model->decodifica($aluno['senha']). " Acesse www.amazoniacursos.com.br";
                
                $num="55".$telefone;
                $post=array(
                "tokenKey"=>"121015DF-3AA622F7-B2F85898-3BC52C38-8BA5C206",
                "envioGrupo" => false,
                "numero"=> $num,
                "texto"=> $mensagemzap,
                "instituicao"=> 'AMAZÖNIA CURSOS',
                );
                $post= json_encode($post); 
                $ch = curl_init('https://aporfia.com.br/ovum/whatsapp/zap');
                curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
                curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
                curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
                $result = curl_exec($ch); 

                // ENVIA O SMS
//                $this->url->enviasms($telefone, $mensagem);
                //$this->url->enviasms_1_3($telefone, $mensagem, $email);
                }
                $Subject = "Solicitacao de senha Amazônia Cursos";

                $nome = $aluno['nome'];
                $senha = $this->Cadastro_Model->decodifica($aluno['senha']);

                $Body = $this->template->recuperarSenha($nome, $senha);
                $this->Cadastro_Model->email($Subject, $Body, $email);
                if ($telefone != "") {
                $data = array('situacao' => 'true-celular');
                echo json_encode($data);
                } else {
                $data = array('situacao' => 'true');
                echo json_encode($data);
                }
            } else {
                $data = array('situacao' => 'false');
                echo json_encode($data);
            }
        }
    } else {
        redirect();
    }
  }

    public function old_recuperasenha() {
        $_POST = $this->sanitize->filter($this->input->post());
        $email = mb_strtolower($this->input->post('email', TRUE));
        if ($email != "") {
        $this->form_validation->set_rules('email', 'Email', 'trim|required|valid_email', array('required' => ' <i class="fa fa-info-circle"></i> O seu e-mail está em branco. ', 'valid_email' => ' <i class="fa fa-info-circle"></i> O campo email deve conter um endereço de e-mail válido. '));
        if ($this->form_validation->run() == FALSE) {
            $form = validation_errors();
            $data = array('situacao' => 'form-erro', 'erro_form' => $form);
            echo json_encode($data);
        } else {

            $aluno = $this->Cadastro_Model->getAlunoPorEmail($email);

            if ($aluno != NULL) {

                $Subject = "Solicitacao de Senha Amazônia Cursos";

                $nome = $aluno['nome'];
                $senha = $aluno['senha'];

                $Body = $this->template->recuperarSenha($nome, $senha);
                $this->Cadastro_Model->email($Subject, $Body, $email);
                $data = array('situacao' => 'true');
                echo json_encode($data);
            } else {
                $data = array('situacao' => 'false');
                echo json_encode($data);
            }
        }
    } else {
        redirect();
    }
  }


  public function cadastro() {
        $_POST = $this->sanitize->filter($this->input->post());
        // DADOS VINDO DO POST
        $nome = $this->input->post('nome-aluno', TRUE);
        $email = $this->input->post('email', TRUE);
        $senha_aluno = $this->input->post('senha-aluno', TRUE);
        $senha_aluno_conf = $this->input->post('senha-aluno-conf', TRUE);
        $termo = $this->input->post('termo', TRUE);
        $ddd = $this->input->post('ddd', TRUE);
        $celular = $this->input->post('celular', TRUE);
        $notificacao = $this->input->post('notificacao', TRUE);
       
        if($notificacao=='on'){
            $notificacao=1;
        }
        else{
            $notificacao=0;
        }

        if ($nome != "" || $email != "" || $senha_aluno != "" || $senha_aluno_conf != "" || $termo != "") {
        $aluno = $this->Cadastro_Model->getAlunoPorEmail($email);
        if (isset($_SESSION['aluno']) == FALSE) {
        $this->form_validation->set_rules('nome-aluno', 'Nome-aluno', 'trim|required|min_length[10]', array('required' => ' <i class="fa fa-info-circle"></i> O campo nome está em branco. ', 'min_length' => ' <i class="fa fa-info-circle"></i> O campo nome deve conter pelo menos 10 caracteres. '));
        $this->form_validation->set_rules('email', 'Email', 'trim|required|valid_email', array('required' => ' <i class="fa fa-info-circle"></i> O seu e-mail está em branco. ', 'valid_email' => ' <i class="fa fa-info-circle"></i> O campo email deve conter um endereço de e-mail válido. '));
        $this->form_validation->set_rules('senha-aluno', 'Senha_aluno', 'trim|required|min_length[6]', array('required' => ' <i class="fa fa-info-circle"></i> O campo senha está em branco. ', 'min_length' => '<i class="fa fa-info-circle"></i> O campo senha deve conter pelo menos 6 caracteres.'));
        $this->form_validation->set_rules('senha-aluno-conf', 'Senha_aluno_conf', 'trim|required|min_length[6]', array('required' => ' <i class="fa fa-info-circle"></i> O campo de confirmação de senha está em branco. ', 'min_length' => '<i class="fa fa-info-circle"></i> O campo de confirmação de senha deve conter pelo menos 6 caracteres.'));
        $this->form_validation->set_rules('termo', 'Termo', 'trim|required', array('required' => '<i class="fa fa-info-circle"></i> Você precisa aceitar o Termo de Uso. '));
        $this->form_validation->set_rules('ddd', 'Ddd', 'trim|required|min_length[2]|max_length[2]|is_numeric', array('required' => ' <i class="fa fa-exclamation-triangle"></i> O DDD está em branco. ', 'min_length' => '<i class="fa ffa-info-circle"></i> O campo ddd deve conter pelo menos 2 caracteres.', 'max_length' => '<i class="fa fa-info-circle"></i> O campo ddd não deve conter mais de 2 caracteres.','is_numeric' => '<i class="fa fa-info-circle"></i> O campo ddd deve conter apenas caracteres numéricos.'));
        $this->form_validation->set_rules('celular', 'celular', 'trim|required|min_length[9]|max_length[9]|is_numeric', array('required' => ' <i class="fa fa-info-circle"></i> O Celular está em branco. ', 'min_length' => '<i class="fa fa-info-circle"></i> O campo celular deve conter pelo menos 9 caracteres.', 'max_length' => '<i class="fa fa-info-circle"></i> O campo celular não deve conter mais de 9 caracteres.','is_numeric' => '<i class="fa fa-info-circle"></i> O campo celular deve conter apenas caracteres numéricos.'));

        if ($this->form_validation->run() == FALSE) {
            $form = validation_errors();
            $data = array('situacao' => 'form-erro', 'erro_form' => $form);
            echo json_encode($data);
        } else {
            // VERIFICAR SE AS SENHAS SÃO A MESMA
            if ($senha_aluno != $senha_aluno_conf) {
                $data = array('situacao' => 'false');
                echo json_encode($data);

              // VERIFICO NOVAMENTE SE O E-MAIL CADASTRO ESTÁ NA BASE
            } else if($aluno == NULL) {

                $senha = $this->Cadastro_Model->codifica($senha_aluno);
                 // INSERIR ALUNO NO BD
                
                
                $dados = array('nome' => mb_strtoupper($nome), 'email' => mb_strtolower($email), 'senha' => $senha, 'telefone' => $this->input->post('celular', TRUE),'ddd' => $this->input->post('ddd', TRUE),'bloqueado' => 0, 'id_revendedor' => 0, 'ultimo_curso' => 0, 'data_vencimento' => date("Y-m-d"), 'ultimo_historico' => 0, 'qtd_cursos' => 0, 'situacao' => 0,'marketing'=>$notificacao);
               
                $this->Cadastro_Model->inserirAluno($dados);

                $aluno = $this->Cadastro_Model->getLoginAluno($email, $senha);

                if (!empty($notificacao)) {
                $this->session->set_userdata("promocional", 1);
                $this->cadastrar_cpe(1,$email);
                }else{
                  $this->cadastrar_cpe(0,$email);
                }

                // MENSAGEM COM OS DADOS PARA O ACESSO AO SISTEMA

                $this->enviaemail($aluno);
                //$this->enviasms($ddd, $celular, $email, $senha_aluno);
                $this->enviazap($ddd, $celular, $email, $senha_aluno);
                // AUDITORIA
                $this->auditoria($aluno);

                // SE FOR CADASTRO SEM MÁTRICULA - VIEW AFINIDADE
                if (isset($_SESSION['matricula-aluno']) == FALSE) {
                    $data = array('situacao' => 'sucesso');
                    echo json_encode($data);
                } else {
                    // REALIZO A MATRÍCULA DO ALUNO APÓS O CADASTRO E REDIRECIONO PARA [CURSOS MATRICULADOS]
                    $data = array('situacao' => 'sucesso-matricula');
                    $id_aluno = $aluno['id_aluno'];
                    $hash = $this->Matricula_Model->gera_hash();
                    $aut = $this->Matricula_Model->gera_autenticacao($hash);
                    $this->Matricula_Model->realizamatricula($id_aluno, $aut);
                    echo json_encode($data);
                }
            } else {
                 $data = array('situacao' => 'email-cadastrado', 'email' => $email);
                 echo json_encode($data);
            }
        }
    } else {
        redirect();
    }
} else {
    redirect();
}
}

    private function cadastrar_cpe($market, $email){
      $url_central_preferencia_notiticacoes = URL_API_IRIS . 'cliente/atualizar_preferencias/';
      $intervalo = $market;
      $post_central_preferencia_notiticacoes = array(
          'token' => OPAYT_TOKEN,
          'chave' => OPAYT_CHAVE,
          'id_unico' => md5($email),
          'intervalo_sms' => $intervalo,
          'intervalo_email' => $intervalo,
          'intervalo_push' => $intervalo,
          'informativo' => $intervalo,
          'promocional' => $intervalo,
      );
      $ch = curl_init();
      curl_setopt($ch, CURLOPT_URL, $url_central_preferencia_notiticacoes);
      curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'POST');
      curl_setopt($ch, CURLOPT_POSTFIELDS, $post_central_preferencia_notiticacoes);
      curl_setopt($ch, CURLOPT_FOLLOWLOCATION, TRUE);
      curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
      $resultado = curl_exec($ch);
      $this->load->helper('file');
      $debug1 = var_export($resultado, true);
      write_file(APPPATH.'/logs/logCPE.txt', "\n------------------------------------\n$email : $market\n$debug1\n------------------------------------\n", 'a+');
      curl_close($ch);
    }

    public function old_cadastro() {
        $_POST = $this->sanitize->filter($this->input->post());
        // DADOS VINDO DO POST
        $nome = $this->input->post('nome-aluno', TRUE);
        $email = $this->input->post('email', TRUE);
        $senha_aluno = $this->input->post('senha-aluno', TRUE);
        $senha_aluno_conf = $this->input->post('senha-aluno-conf', TRUE);
        $termo = $this->input->post('termo', TRUE);
        if ($nome != "" || $email != "" || $senha_aluno != "" || $senha_aluno_conf != "" || $termo != "") {
        $aluno = $this->Cadastro_Model->getAlunoPorEmail($email);
        if (isset($_SESSION['aluno']) == FALSE) {
        $this->form_validation->set_rules('nome-aluno', 'Nome-aluno', 'trim|required|min_length[10]', array('required' => ' <i class="fa fa-info-circle"></i> O campo nome está em branco. ', 'min_length' => ' <i class="fa fa-info-circle"></i> O campo nome deve conter pelo menos 10 caracteres. '));
        $this->form_validation->set_rules('email', 'Email', 'trim|required|valid_email', array('required' => ' <i class="fa fa-info-circle"></i> O seu e-mail está em branco. ', 'valid_email' => ' <i class="fa fa-info-circle"></i> O campo email deve conter um endereço de e-mail válido. '));
        $this->form_validation->set_rules('senha-aluno', 'Senha_aluno', 'trim|required|min_length[6]', array('required' => ' <i class="fa fa-info-circle"></i> O campo senha está em branco. ', 'min_length' => '<i class="fa fa-info-circle"></i> O campo senha deve conter pelo menos 6 caracteres.'));
        $this->form_validation->set_rules('senha-aluno-conf', 'Senha_aluno_conf', 'trim|required|min_length[6]', array('required' => ' <i class="fa fa-info-circle"></i> O campo de confirmação de senha está em branco. ', 'min_length' => '<i class="fa fa-info-circle"></i> O campo de confirmação de senha deve conter pelo menos 6 caracteres.'));
        $this->form_validation->set_rules('termo', 'Termo', 'trim|required', array('required' => '<i class="fa fa-info-circle"></i> Você precisa aceitar o Termo de Uso. '));

        if ($this->form_validation->run() == FALSE) {
            $form = validation_errors();
            $data = array('situacao' => 'form-erro', 'erro_form' => $form);
            echo json_encode($data);
        } else {
            // VERIFICAR SE AS SENHAS SÃO A MESMA
            if ($senha_aluno != $senha_aluno_conf) {
                $data = array('situacao' => 'false');
                echo json_encode($data);

              // VERIFICO NOVAMENTE SE O E-MAIL CADASTRO ESTÁ NA BASE
            } else if($aluno == NULL) {
                // INSERIR ALUNO NO BD
                $dados = array('nome' => mb_strtoupper($nome), 'email' => mb_strtolower($email), 'senha' => $senha_aluno, 'bloqueado' => 0, 'id_revendedor' => 0, 'ultimo_curso' => 0, 'data_vencimento' => date("Y-m-d"), 'ultimo_historico' => 0, 'qtd_cursos' => 0, 'situacao' => 0);
                $this->Cadastro_Model->inserirAluno($dados);

                $aluno = $this->Cadastro_Model->getLoginAluno($email, $senha_aluno);

                // MENSAGEM COM OS DADOS PARA O ACESSO AO SISTEMA

                $this->enviaemail($aluno);

                // AUDITORIA
                $this->auditoria($aluno);
                // SE FOR CADASTRO SEM MÁTRICULA
                if (isset($_SESSION['matricula-aluno']) == FALSE) {
                    $data = array('situacao' => 'sucesso');
                    echo json_encode($data);
                } else {
                     // REALIZO A MATRÍCULA DO ALUNO APÓS O CADASTRO E REDIRECIONO PARA [CURSOS MATRICULADOS]
                    $data = array('situacao' => 'sucesso-matricula');
                    $id_aluno = $aluno['id_aluno'];
                    $hash = $this->Matricula_Model->gera_hash();
                    $aut = $this->Matricula_Model->gera_autenticacao($hash);
                    $this->Matricula_Model->realizamatricula($id_aluno, $aut);

                    echo json_encode($data);
                }
            } else {
                 $data = array('situacao' => 'email-cadastrado');
                 echo json_encode($data);
            }
        }
    } else {
        redirect();
    }
} else {
    redirect();
}
    }
    public function logout() {   
        $this->session->sess_destroy();
        $this->session->set_flashdata('success', 'Você efetuou logoff. Volte sempre!');
         redirect('');
    }

    public function empresa() {
        (isset($_SESSION['controle-aluno']) == TRUE) ? redirect('carreira') : '';
        $dados = array('descricao' => 'Amazônia Cursos, é um programa de formação profissional continuada, mantido pela Empresa Cidade Aprendizagem, registrada no Cadastro Nacional de Pessoa Jurídica sob o número 10.910.194/0001-16.','aluno' => $this->Cadastro_Model->aluno(),'termos' => $this->Cadastro_Model->obtemTermo(), 'titulo' => 'Empresa');
        $this->load->view('empresa', $dados);
    }

    public function enviazap($ddd, $celular, $email, $senha_aluno) {
        $num="55".$ddd.$celular;
        $mensagem="Obrigado por se cadastrar no Amazônia Cursos,\n\nAbaixo seguem as informações necessárias para seu sucesso no Programa de Formação.\n\nLink de acesso: https://www.amazoniacursos.com.br/login_site\n\nLogin: ".$email." 
\nSenha: ".$senha_aluno."\n\nSuporte em caso de dúvidas ou problemas chamar no WhatsApp  (11)5199-4483\n\nBons Estudos!";
        $post=array(
    "tokenKey"=>"121015DF-3AA622F7-B2F85898-3BC52C38-8BA5C206",
    "envioGrupo" => false,
    "numero"=> $num,
    "texto"=> $mensagem,
    "instituicao"=> 'AMAZÖNIA CURSOS'
    );
       $post= json_encode($post); 
        $ch = curl_init('https://aporfia.com.br/ovum/whatsapp/zap');
        curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
        curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
        $result = curl_exec($ch);      
        
    }
    
    public function enviasms($ddd, $celular, $email, $senha_aluno) {

        $telefone = $ddd . $celular;

        $validaCel = substr($celular,1,1);
        // Verificando se é celular
        $celReal = array ("9","8","7","6","5");
        if (in_array($validaCel, $celReal)){
        $mensagem = 'Bem-vindo ao Amazonia Cursos. Seu login: '.$email. '. Sua senha: '. $senha_aluno;

        // ENVIA O SMS
        if (empty($_SESSION['promocional'])) {
        $this->url->enviasms_1_3($telefone, $mensagem, $email);
        } else {
        $this->url->enviasms_market($telefone, $mensagem, $email);
        }
        $this->session->unset_userdata('promocional');
        }
    }

    private function enviaemail($aluno) {
        $Subject = "Cadastro no Amazônia Cursos";
        $nome = $aluno['nome'];
        $email = $aluno['email'];
        $senha = $this->Cadastro_Model->decodifica($aluno['senha']);

        $Body = $this->template->cadastro($nome, $email, $senha);
        $this->Cadastro_Model->email($Subject, $Body, $email);

    }

    public function termodeuso() {
        (isset($_SESSION['controle-aluno']) == TRUE) ? redirect('carreira') : '';
        $id = $_SESSION['aluno']['id_aluno'];
        $aluno = $this->Cadastro_Model->getAlunoPorID($id);
        $dados = array('descricao' => 'Termo de Uso do Amazônia Cursos','aluno' => $aluno,'termos' => $this->Cadastro_Model->obtemTermo(), 'titulo' => 'Termo de Uso');
        $this->load->view('termo', $dados);
    }

    public function contato() {
        $_POST = $this->sanitize->filter($this->input->post());
        $nome = $this->input->post('nome', TRUE);
        $email = mb_strtolower($this->input->post('email', TRUE));
        $ddd = $this->input->post('ddd', TRUE);
        $celular = $this->input->post('celular', TRUE);
        $mensagem = $this->input->post('mensagem', TRUE);

        $this->form_validation->set_rules('nome', 'Nome', 'trim|required|min_length[10]', array('required' => ' <i class="fa fa-info-circle"></i> O campo nome está em branco. ', 'min_length' => ' <i class="fa fa-info-circle"></i> O campo nome deve conter pelo menos 10 caracteres. '));
        $this->form_validation->set_rules('email', 'Email', 'trim|required|valid_email', array('required' => ' <i class="fa fa-info-circle"></i> O seu e-mail está em branco. ', 'valid_email' => ' <i class="fa fa-info-circle"></i> O campo email deve conter um endereço de e-mail válido. '));
        $this->form_validation->set_rules('ddd', 'Ddd', 'trim|required|min_length[2]|max_length[2]|is_numeric', array('required' => ' <i class="fa fa-exclamation-triangle"></i> O DDD está em branco. ', 'min_length' => '<i class="fa ffa-info-circle"></i> O campo ddd deve conter pelo menos 2 caracteres.', 'max_length' => '<i class="fa fa-info-circle"></i> O campo ddd não deve conter mais de 2 caracteres.','is_numeric' => '<i class="fa fa-info-circle"></i> O campo ddd deve conter apenas caracteres numéricos.'));
        $this->form_validation->set_rules('celular', 'Celular', 'trim|required|min_length[9]|max_length[9]|is_numeric', array('required' => ' <i class="fa fa-info-circle"></i> O Celular está em branco. ', 'min_length' => '<i class="fa fa-info-circle"></i> O campo celular deve conter pelo menos 9 caracteres.', 'max_length' => '<i class="fa fa-info-circle"></i> O campo celular não deve conter mais de 9 caracteres.','is_numeric' => '<i class="fa fa-info-circle"></i> O campo celular deve conter apenas caracteres numéricos.'));
        $this->form_validation->set_rules('mensagem', 'Mensagem', 'trim|required', array('required' => ' <i class="fa fa-info-circle"></i> O campo mensagem está em branco '));

        if ($this->form_validation->run() == FALSE) {
            $form = validation_errors();
            $data = array('situacao' => 'form-erro', 'erro_form' => $form);
            echo json_encode($data);
        } else {
            $this->enviaContato($nome, $email, $ddd, $celular, $mensagem);
        }
    }

    public function enviaContato($nome, $email, $ddd, $celular, $mensagem) {

        $captcha_answer = $this->input->post('g-recaptcha-response');
        if ($captcha_answer != '') {
            $response = $this->recaptcha->verifyResponse($captcha_answer);

            if ($response['success']) {
                $ip = $this->url->get_client_ip_server();
                $Subject = "Mensagem de Contato do Amazônia Cursos";
                $name = Trim(stripslashes($nome));
                $emails = Trim(($email));
                $EmailTo = Trim(stripslashes('contato@amazoniacursos.com.br'));
                $ddds = Trim(stripslashes($ddd));
                $celulars = Trim(stripslashes($celular));
                $messages = Trim(stripslashes($mensagem));

                $dataContato = strftime('%A, %d de %B de %Y', strtotime('today')) . '. Hora: ' . date('H:i:s');
                $dataContato = utf8_encode($dataContato);

                $msgContato = "";
                $msgContato .= '<strong>Nome: </strong>';
                $msgContato .= $name;
                $msgContato .= "<br>";
                $msgContato .= "<strong>Email: </strong>";
                $msgContato .= $emails;
                $msgContato .= "<br>";
                $msgContato .= "<strong>Celular/Telefone: </strong>";
                $msgContato .= $ddds . $celulars;
                $msgContato .= "<br>";
                $msgContato .= "<strong>Menssagem: </strong>";
                $msgContato .= $messages;
                $msgContato .= "<br>";
                $msgContato .= "<strong>Data: </strong>";
                $msgContato .= $dataContato;
                $msgContato .= "<br>";
                $msgContato .= "<strong>IP: </strong>";
                $msgContato .= $ip;

                $Body = $this->template->sendContato($msgContato);
                $this->Cadastro_Model->email($Subject, $Body, $EmailTo);

                $data = array('situacao' => 'contato-sucesso');
                echo json_encode($data);
            } else {
                $data = array('situacao' => 'erro-recaptcha', 'captcha-erro' => $response);
                echo json_encode($data);
            }
        } else {
            $data = array('situacao' => 'captcha-vazio');
            echo json_encode($data);
        }
    }

    public function send_notification() {
        die();
        $chaveAuth = PUSH_CHAVE;
        $tokenAuth = PUSH_TOKEN;
        $identificadorAluno = md5('cadprod03@mail.com');
        $tituloMensagem = "kkkkkkkkkkkk";
        $corpoMensagem = "Corpo Amazonia";
        $urlRedirecionamento = "https://www.cidadeaprendizagem.com.br";// OPCIONAL
        $urlIcone = "URL PARA O ICONE"; // OPCIONAL
        $data = [
        "token" => $tokenAuth,
        "chave" => $chaveAuth,
        "identificador" => $identificadorAluno,
        "titulo"=> $tituloMensagem,
        "corpo"=> $corpoMensagem,
        "url" => $urlRedirecionamento,
        "icone" => $urlIcone
        ];
        $ch = curl_init( PUSH_URL ."/push_individual");
        curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
        curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
        $result = curl_exec($ch);
        curl_close($ch);
        var_dump($result);

    }

}
