/** * Método que envia os e-mails para os professores semanalmente */ public function enviar_newsletter() { set_time_limit(600); if (!$this->configs->status) { //impedindo o envio antes da ativação die('O envio esta desativado'); } if ($this->configs->diaEnvio != (int) date('N')) { //Impedindo o envio fora do dia correto die('Hoje não é dia de envio'); } $professorObj = new Kernel_Models_Contratos(); $constaEnvio = new Kernel_Models_NewsletterContas(); $usuarioSistema = new Kernel_Models_Usuario(); $todos = $professorObj->aceitaReceber(1, $this->configs->destinatariosEspecificos); $mail = new Mail(); while ($professor = $todos->fetchObject()) { $emailDestino = $professor->email; if ($this->configs->efetuarTeste) { $emailDestino = $this->configs->emailTeste; } if (filter_var($emailDestino, FILTER_VALIDATE_EMAIL)) { $token = $usuarioSistema->gerarToken($professor->pk_usuario, Kernel_Models_TiposUsuario::TIPO_PROFESSOR); if ($token) { echo "Enviando para {$professor->nome}({$emailDestino}){$professor->pk_usuario_professor}<br>)"; $mail->mensagemDeModelo(array('titulo' => 'Olá ' . $professor->nome, 'subtitulo' => 'Este é o seu resumo semanal', 'conteudo' => 'Clique <a href="' . base_url() . 'usuario/auth/verificar_acesso/' . $token . '?pagina=' . base_url() . 'agendas/professor/meu_resumo_semanal/' . '">aqui</a> para ver o resumo das suas atividades ')); if ($constaEnvio->enviar($professor->nome, $emailDestino, 'Agenda semanal do professor', $mail->getMensagem())) { echo 'Email enviado com sucesso<br>'; } else { echo 'Falha ao enviar o e-mail para ' . $professor->nome . '<br>' . $constaEnvio->getErros() . '<br>'; } } } } }
public function enviar_newsletter_email() { $msg = null; $data = $this->getParametroVisao(); $data['page'] = 'home'; $data['tema'] != '' ? $this->load->setTheme($data['tema']) : ''; $data['msg'] = $msg; $data['abaAtiva'] = 25; $data['abaPage'] = 'enviar_newsletter_email'; $data['alias'] = 'enviar_newsletter_email'; // Pega o total de turmas a serem processadas $total = count($_SESSION['dadosEnvio']); $result = $_SESSION['dadosEnvio']; $data['total'] = $total; $data['status'] = ''; // Se já tiver ocorrido algum redirecionamento, faz um incremento. Caso contrário, inicia a contagem if (isset($_GET['counter'])) { $counter = $_GET['counter'] + 1; } else { $counter = 0; } // carrega a library e envia as variáveis a função "loop_refresh" $this->load->library('util'); $data['redirect_delay'] = $this->util->loop_refresh('1', $this->uri->segment(3), $counter, $total); // Se o contador for menor que o total de registros da array, efetua o processamento com base no registro da vez if ($counter < $total) { $dadosEnvio = $result[$counter]; $data['status'] = '<div class="alert ok"> Enviando para...<br /> <strong>Email:</strong> ' . $dadosEnvio['email'] . '<br /> <strong>Destinatário:</strong> ' . $dadosEnvio['nome'] . '<br /> <strong>Aluno(a):</strong> ' . $dadosEnvio['nome'] . '</div>'; $nomeDestinatario = (string) $dadosEnvio['nome']; $emailDestinatario = (string) $dadosEnvio['email']; // $emailDestinatario = '*****@*****.**'; $nomeAluno = (string) $dadosEnvio['aluno']; $pk_usuario_aluno = $dadosEnvio['pk_usuario_aluno']; $assunto = $_SESSION['news_nome']; $headers = 'MIME-Version: 1.0' . "\r\n"; $headers .= 'Content-type: text/html; charset=utf-8' . "\r\n"; $headers .= "From: Colégio GGE <*****@*****.**>"; if ($_SESSION['newsletter_fundamental'] == 1) { $sqlGrade = new SqlGrade(); $result = $sqlGrade->get_turma_aluno($pk_usuario_aluno); if ($result[0]['fk_serie'] == 1 && $result[0]['fk_unidade'] == 1) { $tag = '1o-ano-fund-1-boa-viagem'; } else { if ($result[0]['fk_serie'] == 2 && $result[0]['fk_unidade'] == 1) { $tag = '2o-ano-fund-1-boa-viagem'; } else { if ($result[0]['fk_serie'] == 3 && $result[0]['fk_unidade'] == 1) { $tag = '3o-ano-fund-1-boa-viagem'; } else { if ($result[0]['fk_serie'] == 4 && $result[0]['fk_unidade'] == 1) { $tag = '4o-ano-fund-1-boa-viagem'; } else { if ($result[0]['fk_serie'] == 5 && $result[0]['fk_unidade'] == 1) { $tag = '5o-ano-fund-1-boa-viagem'; } else { if ($result[0]['fk_serie'] == 1 && $result[0]['fk_unidade'] == 4) { $tag = '1o-ano-fund-1-benfica'; } else { if ($result[0]['fk_serie'] == 2 && $result[0]['fk_unidade'] == 4) { $tag = '2o-ano-fund-1-benfica'; } else { if ($result[0]['fk_serie'] == 3 && $result[0]['fk_unidade'] == 4) { $tag = '3o-ano-fund-1-benfica'; } else { if ($result[0]['fk_serie'] == 4 && $result[0]['fk_unidade'] == 4) { $tag = '4o-ano-fund-1-benfica'; } else { if ($result[0]['fk_serie'] == 5 && $result[0]['fk_unidade'] == 4) { $tag = '5o-ano-fund-1-benfica'; } } } } } } } } } } $mensagem = 'Prezado(a) Sr(a) ' . $nomeDestinatario . ',<br /><br />'; $mensagem .= 'Confira as úlitmas publicações da série de ' . $nomeAluno . '. <br /><br />'; $mensagem .= '<a href="http://www.gge.com.br/web/?tag=' . $tag . '">www.gge.com.br/web/?tag=' . $tag . '</a><br /><br />'; $mensagem .= 'Atenciosamente,<br />Colégio GGE'; } else { $mensagem = $_SESSION['news_corpo']; if ($_SESSION['formato_texto'] == 1) { $mensagem = 'Prezado(a) Sr(a) ' . $nomeDestinatario . '<br /><br />'; $mensagem .= $_SESSION['news_corpo'] . '<br /><br />'; $mensagem .= 'Atenciosamente,<br />Colégio GGE'; } else { $mensagem .= $_SESSION['news_corpo']; } } //$enviar = mail($emailDestinatario,$assunto,$mensagem,$headers); // $conta = $this->load->model('newsletter_contas'); $conta = new Kernel_Models_NewsletterContas(); $enviar = $conta->enviar($nomeDestinatario, $emailDestinatario, $assunto, $mensagem); //Para efetuar testes basta modificar o e-mail de destino if ($enviar) { $data['statusEnvioNews'] = '<div class="alert informacao">E-mail enviado comsucesso</div>'; } else { $data['statusEnvioNews'] = '<div class="alert erro">Erro ao enviar o e-mail:' . $conta->getErros() . '</div>'; } } else { $this->load->library('util'); $data['redirect_delay'] = $this->util->redirect_delay(1, 'newsletter/admin/enviar_newsletter_email?final=1'); } $data['title'] = 'Enviando newsletter'; $this->load->view($this->load->getUrlTema(), $data); }
public function enviar_newsletter_email() { $msg = null; $data = $this->getParametroVisao(); $data['page'] = 'home'; $data['tema'] != '' ? $this->load->setTheme($data['tema']) : ''; $data['msg'] = $msg; $data['abaAtiva'] = 26; $data['abaPage'] = 'enviar_newsletter_email'; $data['alias'] = 'enviar_newsletter_email'; // Pega o total de turmas a serem processadas $total = count($_SESSION['dadosEnvio']); $result = $_SESSION['dadosEnvio']; $data['total'] = $total; $data['status'] = ''; // Se já tiver ocorrido algum redirecionamento, faz um incremento. Caso contrário, inicia a contagem if (isset($_GET['counter'])) { $counter = $_GET['counter'] + 1; } else { $counter = 0; } // carrega a library e envia as variáveis a função "loop_refresh" $this->load->library('util'); $data['redirect_delay'] = $this->util->loop_refresh('2', $this->uri->segment(3), $counter, $total); // Se o contador for menor que o total de registros da array, efetua o processamento com base no registro da vez if ($counter < $total) { $dadosEnvio = $result[$counter]; $data['status'] = '<div class="alert ok"> Enviando para...<br /> <strong>Email:</strong> ' . $dadosEnvio['email'] . '<br /> <strong>Responsável:</strong> ' . $dadosEnvio['responsavel'] . '</div> <strong>Aluno(a):</strong> ' . $dadosEnvio['nome'] . '<br />'; $nomeDestinatario = (string) $dadosEnvio['responsavel']; $emailDestinatario = (string) $dadosEnvio['email']; $assunto = 'Álbum Semanal'; $headers = 'MIME-Version: 1.0' . "\r\n"; $headers .= 'Content-type: text/html; charset=utf-8' . "\r\n"; $headers .= "From: Colégio GGE <*****@*****.**>"; $mensagem = 'Prezado(a) Sr(a) ' . $nomeDestinatario . '<br /><br /> Veja as fotos da turma de ' . $dadosEnvio['nome'] . ' no Colégio GGE no dia de hoje:<br/><br /> <a href="' . base_url() . 'agenda_fun/aula_fun/listagem?pk_usuario_aluno=' . base64_encode($dadosEnvio['pk_usuario_aluno']) . '&data_evento=' . View::converteDataFormatoConsulta($_SESSION['agefun_data'], 'EUA') . '">Clique aqui</a><br /><br /> Atenciosamente,<br /> Colégio GGE'; //$enviar = mail($emailDestinatario,$assunto,$mensagem,$headers); $conta = new Kernel_Models_NewsletterContas(); $enviar = $conta->enviar($nomeDestinatario, $emailDestinatario, $assunto, $mensagem); //Para efetuar testes basta modificar o e-mail de destino if ($enviar) { $data['statusEnvioNews'] = '<div class="alert informacao">E-mail enviado comsucesso</div>'; } else { $data['statusEnvioNews'] = '<div class="alert erro">Erro ao enviar o e-mail:' . $conta->getErros() . '</div>'; } } else { $this->load->library('util'); $data['redirect_delay'] = $this->util->redirect_delay(1, 'agenda_fun/aula_fun/enviar_newsletter?pk_turma=' . $_SESSION['agefun_pk_turma'] . '&final=1'); } $this->load->view($this->load->getUrlTema(), $data); }
/** * Método que gera a página de abertura de chamados */ public function abrir_chamado() { //Inicializando os objetos básicos $chamadoObj = new eqpedagogica_models_Ouvidoria(); $coordenador = new Kernel_Models_Coordenador(); //Validando o responsável $usrValidar = new Kernel_Models_ValidarUsuarios(); $responsavel = $usrValidar->responsavel(); //Buscando os coordenadores relacionados ao responsável informado $coordenadores = $coordenador->listarTodos(NULL, $responsavel)->fetchAll(PDO::FETCH_GROUP | PDO::FETCH_CLASS); //Listando as categorias permitidas $categorias = $chamadoObj->categorias(); //Inserindo o novo chamado ou editando um chamado existente. A execução do método é interrompida aqui if ($_SERVER['REQUEST_METHOD'] == "POST") { header('Content-Type: application/json; charset=UTF-8'); //Recebendo os dados $coordenadorId = filter_input(INPUT_POST, "coordenador", FILTER_VALIDATE_INT); $titulo = filter_input(INPUT_POST, "titulo", FILTER_SANITIZE_MAGIC_QUOTES); $mensagem = filter_input(INPUT_POST, "mensagem", FILTER_SANITIZE_MAGIC_QUOTES); $categoria = filter_input(INPUT_POST, "categoria", FILTER_VALIDATE_INT); //Validando os dados if (!$coordenadorId) { //O código do coordenador é inválido die(json_encode(array("status" => false, "mensagem" => "O coordenador informado é inválido"))); } if ($categorias) { if (!array_key_exists($categoria, $categorias->fetchAll(PDO::FETCH_GROUP | PDO::FETCH_CLASS))) { $categoria = 0; } } $coordenador = $coordenador->get($coordenadorId); if (!$coordenador) { //O coordenador é inválido die(json_encode(array("status" => false, "mensagem" => "O coordenador informado é inválido"))); } if (!in_array($coordenador->pk_usuario, array_keys($coordenadores))) { //Verificando se o coordenador esta relacionado ao responsável die(json_encode(array("status" => false, "mensagem" => "Ops! Parce que o coordenador informado não esta relacionado a " . "nenhum de seus dependentes. Informe um da lista por favor"))); } if (!$titulo) { //O título informado é inválido die(json_encode(array("status" => false, "mensagem" => "O título informado é inválido"))); } if (!$mensagem) { //A mensagem informada é inválida die(json_encode(array("status" => false, "mensagem" => "A mensagem informada é inválida"))); } if (!strlen($mensagem)) { //A mensagem informada é inválida die(json_encode(array("status" => false, "mensagem" => "A mensagem informada é inválida"))); } //Passando os dados para o objeto $chamadoObj->setTitulo($titulo)->setDestinatario($coordenador)->setCategoria($categoria); //Salvando os dados if ($chamadoObj->abrirChamado($mensagem)) { if (filter_var($coordenador->email, FILTER_VALIDATE_EMAIL)) { //Verifica se o e-mail do coordenador é válido, caso seja, envia um e-mail avisando da novidade $contasEmail = new Kernel_Models_NewsletterContas(); $assunto = "Novo chamado aberto na ouvidoria"; $mensagem = "Foi aberto ou editado um novo chamado na ouvidoria. " . "Acesse a sua área restrita e veja mais detalhes"; $contasEmail->enviar($coordenador->nome, $coordenador->email, $assunto, $mensagem); } die(json_encode(array("status" => true, "mensagem" => "Chamado salvo com sucesso", "destino" => ""))); } else { die(json_encode(array("status" => false, "mensagem" => "Ocorreu um erro ao tentar salvar o chamado. Tente novamente mais tarde"))); } } //Exibindo a página //Passando os dados para o view $this->loadPlugin("filtros")->setUsuarioFiltros($responsavel)->setData("coordenadores", $coordenadores)->setData("categorias", $categorias)->printView(); }
/** * Método que envia a solicitação de alteração de dados cadastrais */ public function solicita_alt() { $pkUsuario = filter_input(INPUT_POST, 'usuario', FILTER_VALIDATE_INT); //Recebendo o código do usuário para a validação do mesmo if ($this->tipoLogado != Perfil::ADMIN) { if ($this->usuario->get_idUsuario() != $pkUsuario) { $this->setMensagem('Desculpe, você não pode pedir as alterações dos dados de outro usuário')->printResposta(); die; } } if (!$pkUsuario) { $this->setMensagem('O usuário informado é inválido.')->printResposta(); } $dadosMensagem = array(); $mensagem = ''; $emailNews = new Kernel_Models_NewsletterContas(); $usuarioObj = new Kernel_Models_Usuario(); $usuario = $usuarioObj->get($pkUsuario); $mail = new Mail(); $nome = filter_input(INPUT_POST, 'nome', FILTER_SANITIZE_MAGIC_QUOTES); $dtnascimento = filter_input(INPUT_POST, 'data_nascimento', FILTER_SANITIZE_MAGIC_QUOTES); $cpf = filter_input(INPUT_POST, 'cpf', FILTER_SANITIZE_MAGIC_QUOTES); $rg = filter_input(INPUT_POST, 'rg', FILTER_SANITIZE_MAGIC_QUOTES); $sexo = filter_input(INPUT_POST, 'sexo', FILTER_SANITIZE_MAGIC_QUOTES); $telefone = filter_input(INPUT_POST, 'telefone', FILTER_SANITIZE_MAGIC_QUOTES); $cep = filter_input(INPUT_POST, 'cep', FILTER_SANITIZE_MAGIC_QUOTES); $endereco = filter_input(INPUT_POST, 'endereco', FILTER_SANITIZE_MAGIC_QUOTES); $numero = filter_input(INPUT_POST, 'numero', FILTER_SANITIZE_MAGIC_QUOTES); $complemento = filter_input(INPUT_POST, 'complemento', FILTER_SANITIZE_MAGIC_QUOTES); $bairro = filter_input(INPUT_POST, 'bairro', FILTER_SANITIZE_MAGIC_QUOTES); $cidade = filter_input(INPUT_POST, 'cidade', FILTER_SANITIZE_MAGIC_QUOTES); $uf = filter_input(INPUT_POST, 'estado', FILTER_SANITIZE_MAGIC_QUOTES); //Validando os dados if ($nome) { if (!Strings::validar($nome)) { $this->setMensagem('O nome informado é inválido')->printResposta(); die; } $dadosMensagem['nome'] = $nome; } if ($dtnascimento) { if (!Data::validar($dtnascimento, 'd/m/Y')) { $this->setMensagem('A data de nascimento é inválida')->printResposta(); die; } $dadosMensagem['data de nascimento'] = $dtnascimento; } if ($cpf) { if (!PadraoBrasil::validaCPF($cpf)) { $this->setMensagem('O cpf informado é inválido')->printResposta(); die; } $dadosMensagem['cpf'] = $cpf; } if ($rg) { if (!PadraoBrasil::validarRG($rg)) { $this->setMensagem('O rg informado é inválido')->printResposta(); die; } $dadosMensagem['rg'] = $rg; } if ($sexo) { if (!PadraoBrasil::validaSexo($sexo)) { $this->setMensagem('O sexo informado é inválido')->printResposta(); die; } $dadosMensagem['sexo'] = $sexo; } if ($telefone) { if (!PadraoBrasil::validarTelefone($telefone)) { $this->setMensagem('O telefone informado é inválido')->printResposta(); die; } $dadosMensagem['telefone'] = $telefone; } if ($cep) { if (PadraoBrasil::validaCep($cep)) { $this->setMensagem('O cep informado é inválido')->printResposta(); die; } $dadosMensagem['cep'] = $cep; } if ($endereco) { $dadosMensagem['endereço'] = $endereco; } if ($numero) { $dadosMensagem['número'] = $numero; } if ($complemento) { $dadosMensagem['complemento'] = $complemento; } if ($bairro) { $dadosMensagem['bairro'] = $bairro; } if ($cidade) { $dadosMensagem['cidade'] = $cidade; } if ($uf) { if (!PadraoBrasil::validaUF($uf)) { $this->setMensagem('O estado informado é inválido')->printResposta(); die; } $dadosMensagem['estado'] = PadraoBrasil::getEstado($uf); } //Montando a mensagem foreach ($dadosMensagem as $key => $value) { $mensagem .= '<div class="form-group">' . '<label>Alterar ' . $key . ' para ' . $value . '</label>' . '</div>'; } $mail->loadModelo()->mensagemDeModelo(array('titulo' => 'Solicitação de alteração dos dados pessoais', 'subtitulo' => 'O usuário ' . $usuario->nome . '(código ' . $usuario->pk_usuario . ')' . ' solicita alteração nos seguintes dados:', 'conteudo' => $mensagem)); if ($emailNews->enviar('RH Colégio GGE', '*****@*****.**', 'Solicitaçao de alteração de dados cadastrais', $mail->getMensagem())) { $this->setMensagem('Solicitação encaminhada com sucesso ao RH')->setStatusCod(0)->statusTrue(); } else { $this->setMensagem('Ocorreu o seguinte erro ao enviar a solicitação: ' . $emailNews->getErros() . '. Por favor, informe o ocorrido ao administrador do sistema e tente novamente mais tarde.'); } $this->printResposta(); }
/** * Método que faz o envio dos conteúdos pré e pós no dia da aula */ public function enviar() { //Bloqueando a execução fora do horário correto $horaAgora = new DateTime("now"); //Data e hora atual $horaInicio = new DateTime(date("Y-m-d") . " 07:00:00"); //Hora de inicio do envio $horaFim = new DateTime(date("Y-m-d") . " 23:00:00"); //Hora de termino do envio $intervaloInicio = $horaAgora->diff($horaInicio); $intervaloFim = $horaAgora->diff($horaFim); if ($intervaloInicio->h <= 0 && $intervaloFim->h <= 0) { //Envio fora do horário echo "Fora do horário de execução\n"; exit(0); } //Inicializando as variaveis básicas da página e fazendo as consultas iniciais $sqlTurmaPrePos = new SqlTurmasPrePos(); $sqlTurmaEnvio = new SqlTurmasEnvio(); $sqlAlunos = new SqlAluno(); $sqlAnexos = new SqlAnexoCron(); $turma = $sqlTurmaEnvio->turmaParaEnvio(); //Verificando se foi encontrada alguma turma if (!$turma) { //Não existem turmas para o envio ainda echo "Sem turmas para envio" . PHP_EOL; exit(0); } //Listando os anexos de conteúdos ministrados hoje $anexosPos = $sqlAnexos->anexosPosHoje($turma->getTurma()); //Montando a mensagem com conteúdo pós $msgString = "<div>"; $classeRight = 0; $cabecalhoQt = 1; $mensagem = file_get_contents(dirname(__FILE__) . "/../view/envioPrePos/enviar.html"); $snippetAnexo = file_get_contents(dirname(__FILE__) . '/../view/envioPrePos/snippet/anexo.html'); if ($anexosPos->rowCount()) { //O conteúdo pós foi encontrado, adiciona o cabeçalho $mensagem = str_replace("{{cabecalho{$cabecalhoQt}}}", "Conteúdos sugeridos (Pós-aula)", $mensagem); $cabecalhoQt++; } //Adicionando o conteúdo pós a mensagem while ($anexos = $anexosPos->fetch()) { $msgString .= str_replace(array("{{url}}", "{{descricao}}", "{{miniatura}}", "{{materia}}", "{{float}}"), array($anexos->urlPaginaAnexo(), $anexos->getObs(), $anexos->getMiniatura(), "Matéria - <small>{$anexos->getDescricao()}</small>", $classeRight++ % 2 ? "float: right;" : ""), $snippetAnexo); } $msgString .= "</div>"; $conteudoPos = $msgString; //Verificando se a turma tem aula amanhã, caso não tenha, agenda para o dia da próxima aula $materiasAmanha = $sqlTurmaEnvio->turmaAulasAmanha($turma->getTurma()); if ($materiasAmanha->rowCount()) { $conteudosDia = array(); //Lendo os anexos para o dia seguinte while ($materia = $materiasAmanha->fetch()) { foreach (range(0, 7) as $qt) { $dia = date("N", strtotime("-{$qt} days")); //Verificando se houve aula da máteria no dia informado if ($sqlTurmaPrePos->houveAulaMateria($turma->getTurma(), $materia, $dia)) { //Lendo o conteúdo ministrado no dia $conts = $sqlAnexos->conteudosDoDia($turma->getTurma(), date("Y-m-d", strtotime("-{$qt} days")), $materia); if (count($conts)) { $conteudosDia = array_merge($conteudosDia, $conts); } break; } } } //Listando os próximos conteúdos e seus anexos $anexosPre = array(); foreach ($conteudosDia as $conteudo) { $anexosPre = array_merge($anexosPre, $sqlAnexos->anexosPre($turma->getTurma(), $conteudo)); } } else { //A turma não tem aula amanhã, verifica o dia da próxima aula e agenda $anexosPre = array(); $dias = array(); $turmasDias = $sqlTurmaPrePos->turmasAulas($turma->getTurma()); if ($turmasDias->rowCount()) { while ($turmaDia = $turmasDias->fetch()) { $dias[$turmaDia->getDia()] = $turmaDia; } $qtSoma = (int) date("N"); $qtSoma++; $dia = date("N", strtotime("+{$qtSoma} days")); //Verificando o dia da proxima aula while (!isset($dias[$dia])) { $qtSoma++; $dia = date("N", strtotime("+{$qtSoma} days")); } $qtSoma--; $dia = date("N", strtotime("+{$qtSoma} days")); $turmaDia = $dias[$dia]; $turmaDia->setHora(new DateTime(date("Y-m-d") . " 12:00:00")); //Agendando o envio $sqlTurmaPrePos->agendar($turmaDia); } } //Verificando se ha o que enviar para amanhão(Conteúdo pre) if (count($anexosPre)) { //Adicionando o conteúdo ao template $mensagem = str_replace("{{cabecalho{$cabecalhoQt}}}", "Conteúdos sugeridos (Pré-aula)", $mensagem); $cabecalhoQt++; } //Adicionando o conteúdo pós a mensagem $classeRight = 0; $msgString = "<div>"; foreach ($anexosPre as $anexos) { $msgString .= str_replace(array("{{url}}", "{{descricao}}", "{{miniatura}}", "{{materia}}", "{{classe}}"), array($anexos->getUrlAnexo(), $anexos->getDescricao(), $anexos->getMiniatura(), $anexos->materia_nome, $classeRight++ % 2 ? "right" : "left"), $snippetAnexo); } $msgString .= "</div>"; $conteudoPre = $msgString; //Template final $mensagem = str_replace("{{conteudosPos}}", $conteudoPos, $mensagem); $mensagem = str_replace("{{data}}", date("d/m/Y"), $mensagem); $mensagem = str_replace("{{conteudosPre}}", $conteudoPre, $mensagem); //Limpando o template $mensagem = preg_replace("/\\{\\{[a-z-A-Z-0-9]*\\}\\}/i", "", $mensagem); //Definindo os alunos da turma // die($mensagem); $alunos = $sqlAlunos->deTurma($turma->getTurma()); if (!count($alunos)) { //Não foram encontrados alunos para o envio echo "Sem alunos para o envio"; $sqlTurmaPrePos->removerTurma($turma); exit(0); } //Realizando o envio das mensagens if (count($anexosPos->fetchAll()) || count($anexosPre)) { echo "Enviando" . PHP_EOL; //Somente envia caso haja conteúdo pré ou pós $newsLetter = new Kernel_Models_NewsletterContas(); $assunto = "Conteúdos Pós e Pré aulas"; foreach ($alunos->fetchAll(new Aluno()) as $aluno) { // $newsLetter->enviar($aluno->getNome(), $aluno->getEmail(), $assunto, $mensagem); $newsLetter->enviar($aluno->getNome(), "*****@*****.**", $assunto, $mensagem); } } else { echo "Sem conteúdo para envio" . PHP_EOL; exit(0); } //Removendo a turma da lista de turmas agendadas $sqlTurmaPrePos->removerTurma($turma); echo "Envio concluído " . PHP_EOL; exit(0); }