dominio; $_SESSION["DOMINIO_SISTEMA"] = $DOMINIO_SISTEMA; $DOMINIO_HOME = $this->dominio_home; $_SESSION["DOMINIO_HOME"] = $DOMINIO_HOME; $resposta = ""; if (file_exists($_SERVER["DOCUMENT_ROOT"].$this->path_templates.$template_txt)) { $HTML = file($_SERVER["DOCUMENT_ROOT"].$this->path_templates.$template_txt); $counter = count($HTML); for ($i=0; $i<$counter; $i++) { $linha = $HTML[$i]; while(preg_match("/troca##/i", $linha)) { $var = explode("##", $linha, 3); if(!isset($GLOBALS[$var[1]])) { if($var[1] == 'data_layer_gtm') $v = ""; else $v = "[".$var[1]."]\n"; } else { $v = $GLOBALS[$var[1]]; $v = str_replace("#", "?%29", $v); } $linha = preg_replace("/troca##".$var[1]."##/i", $v, $linha); } // Em caso de template dinamico, substituir as variaveis troca carregadas //if ($flag_dinamico == 1){ $linha = str_replace("?%29", "#", $linha); $linha = $this->m_template_dinamico_off($linha,$flag_dinamico); //} $resposta .= $linha; } $resposta = str_replace("?%29", "#", $resposta); return($resposta); } } // a diferenaa da anterior a que ele preenche a variavel com vazio se nao estiver setada (16/11/2010) function m_template_off_2($template_txt, $flag_dinamico=1) { $resposta = ""; if (file_exists($this->path_templates.$template_txt)) { $HTML = file($this->path_templates.$template_txt); $counter = count($HTML); for ($i=0; $i<$counter; $i++) { $linha = $HTML[$i]; while(preg_match("/troca##/i", $linha)) { $var = explode("##", $linha, 3); if(!isset($GLOBALS[$var[1]])) { //$v = "[".$var[1]."]\n"; // <---- DIFERENaA $v = ""; } else { $v = $GLOBALS[$var[1]]; $v = str_replace("#", "?%29", $v); } $linha = preg_replace("/troca##".$var[1]."##/i", $v, $linha); } // Em caso de template dinamico, substituir as variaveis troca carregadas //if ($flag_dinamico == 1){ $linha = str_replace("?%29", "#", $linha); $linha = $this->m_template_dinamico_off($linha,$flag_dinamico); //} $resposta .= $linha; } $resposta = str_replace("?%29", "#", $resposta); return($resposta); } } function m_template_off_troca($template_txt, $tipo_dinamico=0) { $resposta = ""; if (file_exists($this->path_templates.$template_txt)) { $HTML = file($this->path_templates.$template_txt); $counter = count($HTML); for ($i=0; $i<$counter; $i++) { $linha = $HTML[$i]; // Em caso de template dinamico, substituir as variaveis troca carregadas $linha = $this->m_template_dinamico_off($linha,0); $resposta .= $linha; } return($resposta); } } // Le um HTML e retorna o seu conteudo function m_html_off($HTML) { $resposta = ""; $counter = strlen($HTML); while(preg_match("/troca##/i", $HTML)) { $var = explode("##", $HTML, 3); if(!isset($GLOBALS[$var[1]])) { $v = "[".$var[1]."]\n"; } else { $v = $GLOBALS[$var[1]]; $v = str_replace("#", "?%29", $v); } $HTML = preg_replace("/troca##".$var[1]."##/i", $v, $HTML); } $HTML = str_replace("?%29", "#", $HTML); return($HTML); } // Le um template dinamico e retorna o seu conteudo function m_template_dinamico_off($linha,$tipo=1) // tipo = 0 -> caso nao encontre uma variavel global para substituir, nao faz nada // tipo = 1 -> caso nao encontre uma variavel global para substituir, troca por [campo] { global $S_cliente_login; $resposta = ""; $linha_salva = $linha; $cont = 0; while(preg_match("/troca##/i",$linha)) { $cont++; $var = explode("##", $linha, 3); if(!isset($GLOBALS[$var[1]])){ $v = "[".$var[1]."]"; } else{ $v = $GLOBALS[$var[1]]; $linha_salva = preg_replace("/troca##".$var[1]."##/i", $v, $linha_salva); } //echo "/troca##".$var[1]."##/i
"; //exit(); $linha = preg_replace("/troca##".$var[1]."##/i", $v, $linha); //$linha = preg_replace("/tag##".$var[1]."##/i", $v, $linha); } if ($tipo == 0){ $resposta = $linha_salva; } else{ $resposta = $linha; } return($resposta); } // Le um template com campo HTML e substitui estes campos function m_template_html_off($linha) { $resposta = ""; while(preg_match("/html&&/i", $linha)) { $cont++; $var = explode("&&", $linha, 3); if(!isset($GLOBALS[$var[1]])) { $v = "[".$var[1]."]"; } else { $v = $GLOBALS[$var[1]]; } $linha = preg_replace("/html&&".$var[1]."&&/i", $v, $linha); } $resposta = $linha; return($resposta); } // envio de e-mails function m_envia_mail($to, $subject, $body, $ishtml) { $from = $this->from; $headers = "From: $from\r\n"; /* 'X-Mailer: PHP/' . phpversion() . "\r\n" . "MIME-Version: 1.0\r\n" . "Content-Type: text/html; charset=utf-8\r\n" . "Content-Transfer-Encoding: 8bit\r\n\r\n"; */ mail($to, $subject, $body, $headers); //echo "To: $to
\nSubject: $subject
\n$body"; return (""); } // Retorna a data corrente function hoje() { $hoje = date(y)."/".date(m)."/".date(d); return ($hoje); } function formata_data($data) { // Data vazia? if ($data == "0000-00-00 00:00:00" or $data == NULL) $data = "-"; else{ $partes = explode(" ",$data,3); // Formata data list ($a, $m, $d) = explode("-", $partes[0]); $data = "$d/$m/$a"." ".$partes[1]; } return $data; } function get_data($data,$retorno) { $partes = explode(" ",$data,3); // Formata data list ($a, $m, $d) = explode("-", $partes[0]); // data list ($h, $i, $s) = explode(":", $partes[1]); // hora switch ($retorno){ case "d": // dia return $d; break; case "m": // mas return $m; break; case "a": // ano return $a; break; case "h": // hora return $h; break; case "i": // minuto return $i; break; case "s": // segundo return $s; break; default: return 0; // default } } function lzero ( &$nr, $length = 2 ) { $tam = strlen(trim($nr)); if (($tam > $length)) return false; $nr = str_repeat ( "0", ($length - $tam) ).$nr; return true; } function f_iqmail_footer() { return '

encaminhe este email

Descadastre-se imediatamente clicando em:

Esse email foi enviado para troca##nome##
atravas de troca##ivn_newsletter_sender_email## Polatica de Privacidade

'; // //
} function m_grava_historico($descricao,$cliente_id=0,$atacado='N') { global $S_cliente_id; #echo 'funcao'; if ($cliente_id == 0) $cliente_id = $S_cliente_id; $ip = $_SERVER['REMOTE_ADDR']; $query = "INSERT INTO $this->banco_iqmail.historico (cliente_id, data, descricao, ip, ind_atacado) VALUES ($cliente_id, now(), '$descricao', '$ip', '$atacado')"; $DB_historico = new Class_DB; $DB_historico->query($query); } function m_grava_historico2($DB,$descricao,$cliente_id=0,$atacado='N') { global $S_cliente_id; if ($cliente_id == 0) $cliente_id = $S_cliente_id; $ip = $_SERVER['REMOTE_ADDR']; $query = "INSERT INTO $this->banco_iqmail.historico (cliente_id, data, descricao, ip, ind_atacado) VALUES ($cliente_id, now(), '$descricao', '$ip', '$atacado')"; $DB->query($query); } function m_trata_nome_template($template_nome) { $partes = explode("/",$template_nome); $tam = count($partes); $nome_template = $partes[$tam-1]; return $nome_template; } function m_spf_valido($sender_email){ $dominio = explode("@",$sender_email); $checa_spf = "dig txt ".$dominio[1]; $retorno = exec($checa_spf,$linhas); #print_r($linhas); // verifica se o include:spf_senderdirect.com ou _spf.senderdirect.com estao presentes foreach ($linhas as $linha){ if (preg_match("#include\:_spf\.senderdirect\.com#i",$linha)) return true; if (preg_match("#include\:senderdirect\.com#i",$linha)) return true; if (preg_match("#include\:_spf\.maildireto\.com#i",$linha)) return true; if (preg_match("#include\:maildireto\.com#i",$linha)) return true; } return false; } } function f_trata_conteudo($conteudo) { return addslashes(trim($conteudo)); } ?>