public function enviarPacote($de = '', $html = false) { Email::$msg = $this->getTexto()->texto; if ($html) { Email::$html = $html; } if ($de) { Email::$de = $de; } Email::$assunto = $this->getTexto()->titulo; if ($this->getStatus() == self::PARADO) { self::criarListaParaEnvio($this); } $l = new Lista('mailing_pacotes_envio'); $l->condicoes('', $this->getId(), 'mailing'); $total = $l->getTotal(); if ($total > Sistema::$emailsPorHora) { $l->setParametros(Sistema::$emailsPorHora, 'limite'); $this->setStatus(self::ENVIANDO); } else { $this->setStatus(self::PARADO); } $lM = new ListaMailings(); $lM->alterar($this); $con = BDConexao::__Abrir(); while ($rs = $l->listar()) { Email::$para = $rs['email']; Email::enviar(); $con->executar("DELETE FROM " . Sistema::$BDPrefixo . "mailing_pacotes_envio WHERE mailing = '" . $this->getId() . "' AND email = '" . $rs['email'] . "'"); $l->setParametros(0); $l->setParametros($l->getParametros('limite') - 1, 'limite'); } }
/** * Salvar e enviar o registro de contato */ public function enviar() { $this->salvar(); # Enviar por e-mail if (class_exists('Email')) { if ($this->modelo->assunto > 0) { $ma = new ContatoM\AssuntoContato(); $la = end($ma->listar("assunto_contato_id = {$this->modelo->assunto}", null, 'assunto_contato_descr, assunto_contato_email')); $as = $la['assunto_contato_descr']; $pa = $la['assunto_contato_email']; } else { $as = MSG_NAO_INFORMADO; $pa = '*****@*****.**'; } // Fim if # Montar o assunto e o corpo do e-mail $assunto = sprintf(TXT_EMAIL_ASSUNTO_CONTATOSITE, $h = filter_input(INPUT_SERVER, 'HTTP_HOST'), $as); $corpo = sprintf(TXT_EMAIL_CONTEUDO_CONTATOSITE, $h, $this->modelo->nome, $this->modelo->email, $this->modelo->telefone, $as, nl2br($this->modelo->mensagem)); /* * Enviar o e-mail utilizando a configuração feita pelo Painel-DL */ $conf_site = new GeralM\ConfiguracaoSite(); $om = new \Email(); $e = $om->enviar($pa, $assunto, $corpo, $conf_site->getEmail()); $om->gravarLog(__CLASS__, $this->modelo->bd_tabela, $this->modelo->id, $assunto, $corpo, $pa); if (!$e) { throw new \DL3Exception(sprintf(ERRO_CONTATOSITE_ENVIO_EMAIL, $om->exibirLog()), 1500); } // Fim if } // Fim if \Funcoes::mostrarMsg(SUCESSO_CONTATOSITE_ENVIADO, '-sucesso'); }
public function enviarEmail() { $e = new Email(); $e->remetenteNome = $this->nome; $e->remetenteEmail = $this->email; $e->assuntoEmail = $this->assunto; $e->conteudoEmail = $this->menssagem; return $e->enviar(); }
/** * Testar uma determinada configuração de envio de e-mail] * * @param int $pk ID da configuração a ser testada * * @return mixed * @throws \DL3Exception */ protected function testar($pk) { if (!class_exists('Email')) { throw new \DL3Exception(sprintf(ERRO_PADRAO_CLASSE_NAO_ENCONTRADA, 'Email'), 1500); } // Fim if $this->modelo->selecionarPK($pk); $oe = new \Email(); $te = $oe->enviar(session_status() === PHP_SESSION_ACTIVE ? $_SESSION['usuario_info_email'] : $this->modelo->responder_para, TXT_EMAIL_ASSUNTO_TESTE, sprintf(TXT_EMAIL_CONTEUDO_TESTE, $this->modelo->titulo, $this->modelo->host, $this->modelo->porta, filter_input(INPUT_SERVER, 'HTTP_HOST')), $pk); $oe->gravarLog(__CLASS__, $this->modelo->bd_tabela, $this->modelo->id); if (!$te) { throw new \DL3Exception(sprintf(ERRO_CONFIGEMAIL_TESTAR, $oe->exibirLog()), 1500); } // Fim if \Funcoes::mostrarMsg(SUCESSO_CONFIGEMAIL_TESTAR, '-sucesso'); }
public function recuperarSenha($email) { $msg = array(); $idUsuario = Usuario::buscaPorEmail($email); if (!$idUsuario) { $msg[] = "E-mail não cadastrado"; } else { $novaSenha = Usuario::getNovaSenha(); $objUsuario = new Usuario(); $objUsuario->id = $idUsuario; $objUsuario->carregar(); $objUsuario->senha = md5($novaSenha); if ($objUsuario->alterar()) { Email::enviar($objUsuario->email, "Nova Senha", "esqueci-senha.html", array('nome' => $objUsuario->nome, 'email' => $objUsuario->email, 'telefoneSite' => $_SESSION['s3'][NOMESITE]['config']['telefone'], 'emailSite' => $_SESSION['s3'][NOMESITE]['config']['email-contato'], 'novaSenha' => $novaSenha)); $msg[] = "Nova senha foi enviada por e-mail"; } } return $msg; }
public static function mostrar($mensaje = '') { // IDEA obtener la instancia de Slim (como se hace aquí) en todos los métodos que la requieran para evitar tener que pasar la referencia en todas las llamadas $app = \Slim\Slim::getInstance(); global $twig; $r = Dictado::escuchar($app->db, Login::getEmail()); if (is_null($r)) { $valores['message'] = "¡<b>Enhorabuena</b>! <br>A día de hoy ha realizado correctamente todos nuestros dictados. <br> ¿Se animaría a <a href='/dictado/crear'>crear uno nuevo</a>?"; // Avisamos al administrador que alguien ha conseguido realizar todos los dictados para que cree alguno nuevo Email::enviar(Email::ADMIN_EMAIL, 'Dictados agotados', Email::getMessageDictadosTerminados(Login::getEmail())); } else { $valores = array('dictado' => json_encode($r), 'id_dictado' => $r['ID']); // IDEA Sería interesante que este mensaje desapareciese al rato de aparecer en pantalla if ($mensaje != '') { $valores['message'] = $mensaje; } if (!Login::isLogged()) { $valores['consejo'] = "Para evitar dictados repetidos, <a href='/usuario/login'><strong>identifícate</strong></a>"; } } echo $twig->render('dictadoEscuchar.php', $valores); }
public function cadastraCliente($nome, $email, $foto, $idPlano, $valor) { $_POST['cliente']['nome'] = $nome; $_POST['cliente']['email'] = $email; $_POST['cliente']['foto'] = $foto; $_POST['cliente']['ativo'] = 's'; $_POST['cliente']['dataCadastro'] = DATAHORAMYSQL; $novaSenha = Cliente::getNovaSenha(); $_POST['cliente']['senha'] = md5($novaSenha); //MOVER FOTO DE PASTA if (file_exists(PATHUPLOAD . 'pre-cliente/' . $foto)) { $origem = PATHUPLOAD . 'pre-cliente/' . $foto; $destino = PATHUPLOAD . 'cliente/' . $foto; copy($origem, $destino); unlink($origem); } //CADASTRA CLIENTE $objCliente = new Cliente($_POST['cliente']); if ($objCliente->inserir()) { //GERAO PEDIDO DA COMPRA DO PLANO ESCOLHIDO Pedido::cadastrarPedido($objCliente->id, $valor, $idPlano, 1); //CADASTRA PLANO ESCOLHIDO Planos::cadastrarClientePlano($objCliente->id, $idPlano, $valor); //ENVIA E-MAIL PARA CLIENTE INFORMANDO LOGIN E SENHA COM LINK DE ACESSO $objPlanos = new Planos(); $objPlanos->id = $idPlano; $objPlanos->carregar(); $_POST['email']['nome'] = $objCliente->nome; $_POST['email']['email'] = $objCliente->email; $_POST['email']['senha'] = $novaSenha; $_POST['email']['plano'] = $objPlanos->titulo; $_POST['email']['valor'] = $valor; $_POST['email']['linkAcesso'] = URLRAIZ . '/painel/login.php'; $_POST['email']['topo'] = Email::topoEmail(); $_POST['email']['rodape'] = Email::rodapeEmail(); Email::enviar($objCliente->email, 'Acesso para finalizar compra', 'cliente-login-acesso.html', $_POST['email']); } }
$_POST['contato']['sitemail'] = $_SESSION['s3'][NOMESITE]['config']['email-contato']; $_POST['contato']['aux'] = ''; if (isPost($_POST['contato']['telefone'])) { $_POST['contato']['aux'] = '<p>Telefone: <b>' . $_POST['contato']['telefone'] . '</b></p>'; } if (isPost($_POST['contato']['mensagem'])) { $_POST['contato']['aux'] .= '<p>Mensagem: <b>' . $_POST['contato']['mensagem'] . '</b></p>'; } $_POST['contato']['urlraiz'] = URLRAIZ; $data = $_POST['contato']['data']; $data2 = date('d/m/Y H:i'); $_POST['contato']['lido'] = 'n'; if (isPost($_POST['contato']['idEmpreendimento'])) { $objContato = new EmpreendimentoContato($_POST['contato']); } else { $objContato = new Contato($_POST['contato']); } if ($objContato->inserir()) { Email::enviar($_SESSION['s3'][NOMESITE]['config']['email-contato'], 'Contato pelo site', 'contato.html', $_POST['contato']); //Email::enviar($_POST['contato']['email'],'House System','contato-obrigado.html',$_POST['contato']); echo 'Mensagem enviada.'; } } else { echo '* Digite sua Mensagem.'; } } else { echo '* Informe seu nome.'; } } else { echo '* Email Informado inválido.'; }
public function recuperarSenha($email) { $msg = array(); $idCliente = Cliente::buscaPorEmail($email); if (!$idCliente) { $msg[] = "E-mail não cadastrado"; } else { $novaSenha = Cliente::getNovaSenha(); $objCliente = new Cliente(); $objCliente->id = $idCliente; $objCliente->carregar(); $objCliente->senha = md5($novaSenha); if ($objCliente->alterar()) { $_POST['senha']['nome'] = $objCliente->nome; $_POST['senha']['email'] = $objCliente->email; $_POST['senha']['novaSenha'] = $novaSenha; $_POST['senha']['linkAcesso'] = URLRAIZ . '/painel/login.php'; $_POST['senha']['topo'] = Email::topoEmail(); $_POST['senha']['rodape'] = Email::rodapeEmail(); Email::enviar($objCliente->email, 'Recuperação de senha', 'esqueci-senha.html', $_POST['senha']); $msg[] = "Nova senha foi enviada por e-mail"; } } return $msg; }
/** * Recuperar senha * * Enviar um e-mail ao usuário com um link para resetar a senha */ public function recuperarSenha() { $le = filter_input(INPUT_POST, 'login', FILTER_SANITIZE_STRING); $mu = new AdminM\Usuario(); $lu = $mu->listar("usuario_info_login = '******' OR usuario_info_email = '{$le}'", null, 'usuario_id, usuario_info_nome, usuario_info_email', 0, 1, 0); if ($lu === false) { throw new \DL3Exception(ERRO_LOGIN_RECUPERARSENHA_USUARIO_NAO_LOCALIZADO, 1404); } // Fim if /* * Quando houver uma solicitação em aberto, expirá-la e criar uma nova */ $mr_e = new LoginM\Recuperacao(); $mr_e->selecionarUK(['usuario', 'status'], [$lu['usuario_id'], 'S']); if (!$mr_e->reg_vazio) { $mr_e->setStatus('E'); $mr_e->salvar(true, ['recuperacao_id', 'recuperacao_status']); } // Fim if /* * Criar uma nova solicitação de recuperação de senha */ $mr_s = new LoginM\Recuperacao(); $mr_s->setStatus('S'); $mr_s->setUsuario($lu['usuario_id']); $mr_s->setHash(date(\DL3::$bd_dh_formato_completo)); $mr_s->salvar(true, ['recuperacao_status', 'recuperacao_usuario', 'recuperacao_hash']); # Link de recuperação da senha $lk = \DL3::$host_completo . "login/recuperar-senha/{$mr_s->getHash()}"; if (!class_exists('Email')) { throw new \DL3Exception(ERRO_LOGIN_RECUPERARSENHA_CLASSE_ENVIO_EMAIL_NAO_LOCALIZADA, 1404); } // Fim if # Enviar o e-mail $corpo = sprintf(TXT_EMAIL_CORPO_RECUPERAR_SENHA, $lu['usuario_info_nome'], $lk, $lk); $obj_e = new \Email(); $obj_e->enviar($lu['usuario_info_email'], TXT_EMAIL_ASSUNTO_RECUPERACAO_SENHA, $corpo); $obj_e->gravarLog(__CLASS__, 'dl_painel_usuarios_recuperacoes', $mr_s->getId(), TXT_EMAIL_ASSUNTO_RECUPERACAO_SENHA, $corpo, $lu['usuario_info_email']); \Funcoes::mostrarMsg(sprintf(SUCESSO_LOGIN_RECUPERARSENHA, $lu['usuario_info_email']), '-sucesso'); }
if($usuario->registrar($nombre_usuario, $clave_usuario, $email_usuario, $codigo_autorizacion)){ $diccionario = array( '{usuario_minusculas}' => ucfirst(strtolower($nombre_usuario)), '{url_icos}' => $APP->urlApp, '{usuario}' => $nombre_usuario, '{codigo_autorizacion}' => $codigo_autorizacion ); $plantilla = View::template("Email/activar-cuenta-html.html"); $cuerpo_email_html = View::render($plantilla, $diccionario); $plantilla = View::template("Email/activar-cuenta-texto.html"); $cuerpo_email_texto = View::render($plantilla, $diccionario); $resultado = Email::enviar( $email_usuario, 'Activacion de Cuenta ICOS', $cuerpo_email_html, $cuerpo_email_texto ); if($resultado->enviado){ $usuario_tmp_creado = true; } else{ $usuario_tmp_creado = false; } } else{ $usuario_tmp_creado = false; } //------------------------------------------------------------------------------------------ // Genero una respuesta
<?php require '../lib/mailer/email.php'; require '../lib/template/template.php'; //dados do usuario $dados = (object) $_GET; //template do email $template = new Template(file_get_contents(__DIR__ . '/email.html')); //dados da empresa $template->inject('#SITE#', 'http://www.zappragas.com.br'); $template->inject('#DATA#', date('d/m/Y')); //injeta dados do usuario no email $template->inject('#NOME#', $dados->nome); $template->inject('#TELEFONE#', $dados->telefone); $template->inject('#NESTA_DATA#', $dados->data); $template->inject('#NESTA_HORA#', $dados->hora); $template->inject('#ASSUNTO#', $dados->assunto); //injeta dados da empresa no email $template->inject('#EMAIL_EMPRESA#', ''); $template->inject('#TELEFONE_EMPRESA#', ''); //envia o email $email = new Email(); $email->de = '*****@*****.**'; $email->nome = 'ZapContato'; $email->assunto = 'ME LIGUE - Site'; $email->conteudo = $template->render(); $email->enviar(array('*****@*****.**'));
<?php require '../lib/mailer/email.php'; require '../lib/template/template.php'; //dados do usuario $dados = (object) $_GET; //template do email $template = new Template(file_get_contents(__DIR__ . '/orcamento.html')); //dados da empresa $template->inject('#SITE#', 'http://www.zappragas.com.br'); $template->inject('#DATA#', date('d/m/Y')); //injeta dados do usuario no email $template->inject('#NOME#', $dados->nome); $template->inject('#EMAIL#', $dados->email); $template->inject('#TELEFONE#', $dados->telefone); $template->inject('#PRAGA_ALVO#', $dados->pragaAlvo); $template->inject('#DESCRICAO#', $dados->descricao); //injeta dados da empresa no email $template->inject('#EMAIL_EMPRESA#', ''); $template->inject('#TELEFONE_EMPRESA#', ''); //envia o email $email = new Email(); $email->de = '*****@*****.**'; $email->nome = 'ZapContato'; $email->assunto = 'ORCAMENTO - Site'; $email->conteudo = $template->render(); $email->enviar(array('*****@*****.**')); $email->enviar(array($dados->email));
Um abraço da equipe da <a href=http://capsuladotempo.net>Cápsula do Tempo</a> </div> </body> </html>'; $this->mail->AltBody = "Olá " . $toMessage . ", há algum tempo " . $fromMessage . " mandou uma mensagem para ser aberta hoje. Pronto para conferir?\n Esta foi a mensagem: " . $txtMessage . "\n Que seus sonhos se realizem e que você faça desse um mundo ainda melhor!\n Um abraço da equipe da Cápsula do Tempo http://capsuladotempo.net"; if (!$this->mail->send()) { echo "Messagem não enviada! Sequencial: " . $seqMessage; echo " - Erro: " . $this->mail->ErrorInfo . "\n"; } else { //Mensagem enviada //Atualizar a mensagem para enviada $atualizada = $this->timeCapsuleDAO->atualizarCapsulaEnviada($seqMessage); if ($atualizada) { echo "Cápsula enviada! Sequencial: " . $seqMessage . "\n"; } else { echo "Erro ao atualizar a mensagem para enviada! Sequencial: " . $seqMessage . "\n"; } } } } public function __destruct() { $this->timeCapsuleDAO = NULL; $this->mail = NULL; } } //Envia os emails do dia $obj = new Email(); $obj->configurar(); $obj->enviar();
$twig->addGlobal('login', new Login()); // Para poder consultar si existe sesión de usuario abierta $app->container->singleton('db', function () { return new \PDO('sqlite:model/dictados.db'); }); $app->get('/', function () use($app) { global $twig; echo $twig->render('inicio.php'); }); $app->group('/usuario', function () use($app) { // Acción asociada al formulario de login $app->post('/autorizar', function () use($app) { global $twig; $user = $app->request->post('email'); // IDEA comprobar que el correo es correcto y no nos la intentan "colar" (PHP tiene métodos 'sanitize') Email::enviar($user, 'Solicitud de acceso', Email::getMessageAutenticacion($user, Login::generarTokenAutenticacion($app->db, $user))); echo $twig->render('usuarioLogin.php', array('email' => $user)); }); $app->get('/login', 'Login::forzarLogin', function () use($app) { }); // Cierra la sesión de usuario $app->get('/logout', function () use($app) { global $twig; unset($_SESSION['user']); session_destroy(); echo $twig->render('inicio.php'); }); // Accion asociada al email de login $app->get('/autenticar/:token', function ($token) use($app) { $email = $app->request->get('email'); // Si intentan autenticarse (estando ya logados en el sistema) ignoramos el token vílmente
public function enviarOrdemServicoPorEmail() { $oLogOrdemServico = LogOrdemServico::model()->finalizada()->findByAttributes(array('ordem_servico_id' => $this->id)); $oEmail = new Email(); $oEmail->destinatarios = $this->cliente->email; $oEmail->assunto = Yii::app()->name . ' - Finalização de Ordem de Serviço Nº ' . $this->id; $oEmail->mensagem = 'Número da Ordem de Serviço: ' . $this->id . '<br/>'; $oEmail->mensagem .= 'Cliente: ' . $this->cliente->nome . '<br/>'; $oEmail->mensagem .= 'Data: ' . FormatHelper::dataHora($oLogOrdemServico->data_hora) . '<br/><br/>'; $oEmail->mensagem .= 'Dados do veículo: <br/>'; $oEmail->mensagem .= 'Marca: ' . $this->clienteCarro->marca->titulo . '<br/>'; $oEmail->mensagem .= 'Modelo: ' . $this->clienteCarro->modelo->titulo . '<br/>'; $oEmail->mensagem .= 'Placa: ' . $this->clienteCarro->placa . '<br/><br/>'; $oEmail->mensagem .= 'Itens da Ordem de Serviço: <br/>'; foreach ($this->ordemServicoItens as $item) { if ($item->tipo_item_id == OrdemServicoItem::PRODUTO) { $oEmail->mensagem .= $item->produto->titulo . '<br/>'; $oEmail->mensagem .= 'R$ ' . FormatHelper::valorMonetario($item->produto->preco); $oEmail->mensagem .= '<br/><br/>'; } else { if ($item->tipo_item_id == OrdemServicoItem::SERVICO) { $oEmail->mensagem .= $item->servico->titulo . '<br/>'; $oEmail->mensagem .= 'R$ ' . FormatHelper::valorMonetario($item->servico->preco); $oEmail->mensagem .= '<br/><br/>'; } } } $oEmail->mensagem .= 'Formas de Pagamento: <br/>'; foreach ($this->ordemServicoTipoPagamento as $formaPagamento) { $oEmail->mensagem .= 'Tipo: ' . $formaPagamento->aFormasPagamento[$formaPagamento->forma_pagamento_id] . '<br/>'; $oEmail->mensagem .= 'Valor: ' . $formaPagamento->valor . '<br/>'; if (!empty($formaPagamento->parcelas)) { $oEmail->mensagem .= 'Parcelas: ' . $formaPagamento->parcelas . '<br/>'; } $oEmail->mensagem .= '<br/>'; } $oEmail->enviar(); }