示例#1
0
                $selecao[] = $selecionados;
            }
            $valor = implode('||', $selecao);
        }
        $objeto->{$nomeCampo} = $valor;
    }
    $participante->respostas = json_encode($objeto);
    $idParticipante = $participante->salvar();
    $participante->selecionarPorId($idParticipante);
    if ($passo->confirmacao) {
        $templateEmail = new TemplateEmail();
        $templateEmail->selecionarPorId($passo->fkTemplateEmail);
        $cURL = curl_init(Configuracao::$baseUrl . 'templateEmail/enviar/' . $templateEmail->id . '-' . Funcao::prepararLink($templateEmail->nome) . Configuracao::$extensaoPadrao);
        curl_setopt($cURL, CURLOPT_RETURNTRANSFER, true);
        $post = array('participantes' => array($idParticipante));
        curl_setopt($cURL, CURLOPT_POST, true);
        curl_setopt($cURL, CURLOPT_POSTFIELDS, http_build_query($post));
        $interacao = curl_exec($cURL);
        curl_close($cURL);
        echo "<script>window.location.href='" . Funcao::resolveUrlRelativaParaAbsoluta(Configuracao::$baseUrl, '../obrigado' . Configuracao::$extensaoPadrao) . "';</script>";
    } else {
        $passos = $passo->listarPorIdFormulario($participante->fkFormulario);
        if ($participante->passoAtual + 1 <= count($passos)) {
            $participante->passoAtual += 1;
            $participante->salvar();
            echo "<script>window.location.href='" . $_SERVER['HTTP_REFERER'] . "';</script>";
        } else {
            echo "<script>window.location.href='" . Funcao::resolveUrlRelativaParaAbsoluta(Configuracao::$baseUrl, '../obrigado' . Configuracao::$extensaoPadrao) . "';</script>";
        }
    }
}
 public static function enviar()
 {
     $templateEmail = new TemplateEmail();
     $templateEmail->selecionarPorId($_GET['id']);
     $participante = new Participante();
     $participantes = $participante->listarPorIdFormulario($templateEmail->fkFormulario);
     $formulario = new Formulario();
     $formulario->selecionarPorId($templateEmail->fkFormulario);
     if (!empty($_POST)) {
         $evento = new Evento();
         $evento->selecionarPorId($templateEmail->fkEvento);
         foreach ($_POST['participantes'] as $idParticipante) {
             $participante = new Participante();
             $participante->selecionarPorId($idParticipante);
             $resposta = get_object_vars(json_decode($participante->respostas));
             $variaveisResposta = array_keys($resposta);
             array_walk($variaveisResposta, function (&$valor) {
                 $valor = '[[' . $valor . ']]';
             });
             $mensagemTemplate = str_replace($variaveisResposta, array_values($resposta), $templateEmail->mensagem);
             if (strpos($mensagemTemplate, '[[linkConfirmacao]]') !== false) {
                 $mensagemTemplate = str_replace('[[linkConfirmacao]]', Funcao::resolveUrlRelativaParaAbsoluta(Configuracao::$baseUrl, '../confirmacao.html?h=' . md5(date('YmdHis')) . base64_encode($idParticipante)), $mensagemTemplate);
             }
             if (strpos($mensagemTemplate, '[[linkFinalizacao]]') !== false) {
                 $mensagemTemplate = str_replace('[[linkFinalizacao]]', Funcao::resolveUrlRelativaParaAbsoluta(Configuracao::$baseUrl, '../inscricoesFoto.html?h=' . md5(date('YmdHis')) . $idParticipante), $mensagemTemplate);
             }
             if (strpos($mensagemTemplate, '[[linkCertificado]]') !== false) {
                 $mensagemTemplate = str_replace('[[linkCertificado]]', Funcao::resolveUrlRelativaParaAbsoluta(Configuracao::$baseUrl, '../certificacao.html?h=' . rawurlencode(base64_encode(@mcrypt_encrypt(MCRYPT_RIJNDAEL_256, 'mestresplinter', $idParticipante, MCRYPT_MODE_CFB))) . md5(date('YmdHis'))), $mensagemTemplate);
             }
             Funcao::enviarEmail($resposta['email'], '=?utf-8?B?' . base64_encode($templateEmail->assunto) . '?=', $mensagemTemplate);
         }
         self::redirecionar(Configuracao::$baseUrl . 'templateEmail/listar/' . $templateEmail->fkFormulario . '-' . Funcao::prepararLink($formulario->nome) . Configuracao::$extensaoPadrao);
     }
     self::$variaveis = array('participantes' => $participantes, 'idFormulario' => $templateEmail->fkFormulario);
     self::$corpo = "enviar";
     self::renderizar(self::$viewController);
 }
<?php

require_once __DIR__ . '/components/Configuracao.php';
require_once __DIR__ . '/components/Funcao.php';
require_once __DIR__ . '/models/Participante.php';
require_once __DIR__ . '/models/Passo.php';
$participante = new Participante();
$id = base64_decode(substr($_GET['h'], 32));
$participante->selecionarPorId($id);
if (!empty($participante)) {
    $passo = new Passo();
    $passos = $passo->listarPorIdFormulario($participante->fkFormulario);
    if ($participante->passoAtual + 1 <= count($passos)) {
        $participante->passoAtual += 1;
        $participante->salvar();
        echo "<script>alert('Você foi confirmado com sucesso!');window.location.href='" . Funcao::resolveUrlRelativaParaAbsoluta(Configuracao::$baseUrl, '../contato.html') . "';</script>";
    } else {
        $participante->confirmou = 1;
        $participante->salvar();
        echo "<script>window.location.href='" . Funcao::resolveUrlRelativaParaAbsoluta(Configuracao::$baseUrl, '../listaAssinados' . Configuracao::$extensaoPadrao) . "';</script>";
    }
} else {
    echo "<script>alert('Ocorreu algum na sua confirmação! Tente novamente...');window.location.href='" . Funcao::resolveUrlRelativaParaAbsoluta(Configuracao::$baseUrl, '../') . "';</script>";
}