true,
CURLOPT_CONNECTTIMEOUT => 15,
CURLOPT_TIMEOUT => 30,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_SSL_VERIFYPEER => false,
CURLOPT_SSL_VERIFYHOST => false,
CURLOPT_USERAGENT => 'Mozilla/5.0 (Contadores CNT)'
]);
$output = curl_exec($ch);
if ($output === false) {
$error = curl_error($ch);
curl_close($ch);
http_response_code(500);
return "Erro cURL: {$error}";
}
curl_close($ch);
return $output;
}
/**
* Redirecionamento forçado para a home
*/
function redirect_home(): void
{
echo '';
echo '';
exit;
}
/**
* Verifica se o site que está incluindo é permitido
*/
$referer = $_SERVER['HTTP_REFERER'] ?? '';
$referer_host = parse_url($referer, PHP_URL_HOST) ?? '';
$referer_host = str_ireplace('www.', '', $referer_host);
$bloqueados = [
'ecdelta.com',
'veigaepostal.com.br',
'escritoriokunzler.com.br',
'marinsecia.blogspot.com.br',
'escrituralcontabilidade.com.br'
];
if (in_array($referer_host, $bloqueados, true)) {
redirect_home();
}
// Coleta os parâmetros de GET ou POST (ou ambos)
$acao = isset($_REQUEST['acao']) ? trim($_REQUEST['acao']) : null;
$mes = isset($_REQUEST['mes']) ? (int)$_REQUEST['mes'] : null;
$ano = isset($_REQUEST['ano']) ? (int)$_REQUEST['ano'] : null;
$estado = isset($_REQUEST['estado']) ? (int)$_REQUEST['estado'] : null;
// Validação extra: impede valores absurdos
if ($mes !== null && ($mes < 1 || $mes > 12)) $mes = null;
if ($ano !== null && ($ano < 2000 || $ano > 2100)) $ano = null;
if ($estado !== null && $estado < 1) $estado = null;
// Verificações de parâmetros obrigatórios
if ($acao === 'agenda_trib_federal' && (!$mes || !$ano)) {
$acao = null;
}
if ($acao === 'agenda_trib_estadual' && (!$mes || !$ano || !$estado)) {
$acao = null;
}
// Roteamento
switch ($acao) {
case 'agenda_trib_federal':
$conteudo = url_get_contents("{$base_url}tabela_federal.php?ano={$ano}&mes={$mes}");
echo $conteudo;
break;
case 'agenda_trib_estadual':
$conteudo = url_get_contents("{$base_url}tabela_estadual.php?ano={$ano}&mes={$mes}&estado={$estado}");
echo $conteudo;
break;
default:
$conteudo = url_get_contents("{$base_url}padrao.php");
echo $conteudo;
break;
}