Manual do Administrador
1Apresentação
Este manual descreve como usar a área administrativa da Intranet SAE para publicar avisos, gerenciar documentos, manter a lista de telefones, controlar usuários e operar todos os módulos do sistema.
O manual é dividido por módulo, na mesma ordem em que aparecem no menu lateral do admin. Você pode usar o sumário ao lado para pular direto pro tópico que precisa.
Este documento é direcionado a administradores e editores — colaboradores autorizados a publicar e modificar conteúdo. Para usuários comuns (que apenas consultam a intranet), existe o Manual do Usuário.
Convenções usadas neste manual
- Botões e nomes de menus aparecem em negrito.
- Caminhos no sistema são mostrados como
/admin/avisos.php. - Teclas do teclado aparecem como Ctrl+S.
- Boxes coloridos destacam dicas (verde), avisos (amarelo), perigos (vermelho) e informações (azul).
2Acessando o admin
O acesso ao admin requer uma conta com papel admin ou editor previamente cadastrada. O fluxo varia conforme você esteja dentro ou fora da rede da SAE.
Dentro da rede SAE (escritório, fábrica, ETA, CAC…)
Qualquer computador conectado à rede interna entra na intranet automaticamente como visitante — sem senha, sem tela de login. Para virar admin nessa mesma máquina:
- Abra
https://intranet.sae.com.br. Você já cairá direto na home como “colaborador(a)”. - No canto superior direito, clique em “Acessar” (ícone de escudo 🛡️).
- Informe seu e-mail
@sae.com.bre a senha do webmail — a intranet valida contra o servidor IMAP. - Após entrar, clique em “Painel” no canto superior direito para abrir o admin.

Fora da rede SAE (casa, celular, viagem)
Fora da rede o acesso cai direto na tela de login — você precisa informar e-mail e senha normalmente.
- Abra
https://intranet.sae.com.br. - Informe seu e-mail
@sae.com.bre a senha do webmail. - Clique em Entrar.
- Na home, clique em “Painel” para abrir o admin.

A intranet detecta automaticamente o IP público de quem acessa. Se o IP estiver na lista da rede SAE, o visitante entra sem senha e pode consultar o conteúdo livremente. Isso facilita o dia a dia dos colaboradores em máquinas compartilhadas (recepção, CAC, refeitório) sem comprometer a segurança — ações sensíveis continuam exigindo login real.
Após 5 tentativas erradas em poucos minutos, o sistema bloqueia o seu IP por ~10 minutos como proteção contra ataques. Se isso acontecer, espere o tempo indicado ou peça ao TI para limpar manualmente.
A senha da intranet é a mesma do seu e-mail SAE. Se você esqueceu, solicite redefinição ao setor de TI — eles redefinem direto no servidor de e-mail e o acesso à intranet volta a funcionar imediatamente.
Mantendo a lista de IPs da rede SAE
A lista de IPs públicos reconhecidos como “rede interna” fica em
includes/ip_allowlist.php. Sempre que o TI cadastrar ou remover um IP no
firewall de saída, esse arquivo precisa ser atualizado. Ele aceita três formatos:
- IP único:
'189.15.3.17' - Faixa contígua:
['187.32.134.65', '187.32.134.77'](inclusive) - CIDR:
'187.32.134.0/24'
Como a allowlist está em código PHP (não no banco), qualquer alteração exige um novo deploy via Git. Prefira consolidar várias mudanças num único commit para evitar múltiplos deploys desnecessários. A vantagem de ficar em código é zero query extra a cada requisição.
3Dashboard
O dashboard é a primeira tela que você vê ao entrar no admin. Ele mostra um resumo de tudo o que está ativo na intranet e dá atalhos rápidos pras ações mais comuns.

O que tem na tela
- Hero de saudação — “Bom dia/tarde/noite, [Seu nome]” + a data atual e quantas ações foram registradas nas últimas 24h.
- Cards de contadores — número de avisos ativos, documentos publicados, usuários cadastrados, eventos de auditoria, etc.
- Sparkline de 14 dias — gráfico de atividade do sistema na última quinzena.
- Publicações recentes — timeline com os últimos avisos e documentos publicados, agrupados por dia (Hoje, Ontem, datas anteriores).
- Ações rápidas — atalhos pra criar novo aviso, novo documento, novo telefone etc.
Sidebar (menu lateral)
O menu lateral é dividido em quatro seções:
- Visão geral: Dashboard.
- Conteúdo: Avisos, Documentos, Páginas, Aniversariantes.
- Operação: Telefones, Fechamento, Programação, Falta d’Água, TV Indoor.
- Sistema: Usuários, Online agora, Auditoria e Manuais (itens restritos a admin).
Clique no botão de seta (‹) no topo do menu lateral pra recolher e ganhar mais espaço. A escolha fica salva no seu navegador.
Topbar (barra superior)
- Busca global: digite no campo de busca (ou pressione /) pra buscar em avisos, documentos, telefones, usuários e páginas ao mesmo tempo.
- Sino de notificações: clique pra ver as últimas atividades registradas no sistema.
- Botão globo: volta pra área pública da intranet.

4Avisos
O módulo de Avisos é onde você publica comunicados pros colaboradores. Os avisos aparecem na tela inicial da intranet e podem ter PDF anexo, link externo, categoria e janela de publicação (data inicial e final).

Criar um novo aviso
- Acesse Avisos no menu lateral.
- Clique em “+ Novo aviso” no canto superior direito.
- Preencha Título (obrigatório) e Texto (suporta formatação básica).
- Escolha a Categoria (ex.: Comunicado, Edital, Evento).
- Defina a Data de publicação (quando o aviso vai aparecer) e, se quiser, a Data de expiração (quando some automaticamente).
- Marque Destaque se quiser que ele apareça em evidência na home.
- Anexe um PDF ou informe um link externo, se for o caso.
- Se quiser que o aviso também apareça na TV Indoor, marque a caixa "Publicar também na TV Indoor".
- Clique em Salvar.

Um aviso só fica visível na intranet entre a data de publicação e a data de expiração. Você pode criar avisos com antecedência — eles vão aparecer sozinhos na data marcada.
Editar / desativar / excluir
- Editar: clique no ícone de lápis na linha do aviso.
- Desativar: clique no ícone de olho fechado — o aviso some da intranet mas continua no admin.
- Excluir: clique na lixeira. Será pedida confirmação. Esta ação não pode ser desfeita.
Status mostrados na listagem
| Tag | Significado |
|---|---|
| Publicado | Está dentro da janela de publicação e aparece pros usuários. |
| Publicado na TV | Existe uma cópia ativa na TV Indoor. |
| Programado | Data de publicação ainda no futuro. |
| Expirado | Passou da data de expiração. |
| Inativo | Foi manualmente desativado. |
5Documentos
O módulo de Documentos é uma biblioteca de PDFs (políticas, normas, apostilas, formulários, manuais etc.) com controle de leitura — você pode saber quem baixou cada documento e exigir confirmação de leitura.

Categorias
Por padrão a intranet vem com 6 categorias: Política, Norma, Apostila, Formulário, Manual, Outros. Você pode adicionar novas, editar nome/cor/ícone e desativar categorias existentes na aba Categorias.

Publicar um novo documento
- Acesse Documentos → + Novo documento.
- Preencha Título e Descrição.
- Escolha a Categoria.
- Faça o upload do arquivo PDF (até 100 MB).
- Marque Destaque para deixá-lo em evidência.
- Marque Obrigatório se quiser exigir confirmação de leitura — usuários verão um botão "Confirmo que li".
- Defina restrições de acesso (todos, ou apenas determinados setores), se aplicável.
- Opcionalmente, marque "Publicar também como aviso" para criar automaticamente um aviso anunciando o novo documento.
- Clique em Salvar.

Relatório de leituras
Para qualquer documento, clique no ícone de olho/relatório para ver:
- Quantos usuários únicos visualizaram
- Quantos confirmaram leitura
- Lista nominal de quem viu (com data) e quem ainda está pendente

O sistema calcula o hash SHA-256 do PDF antes de salvar. Se você tentar publicar dois arquivos idênticos, ele te avisa e reaproveita o arquivo já existente — economizando espaço.
6Páginas
O módulo Páginas permite criar conteúdos institucionais estáticos
(regulamentos, FAQs, organograma, etc.) acessíveis por uma URL amigável tipo
/p/regulamento-interno.

Criar nova página
- Acesse Páginas → + Nova página.
- Preencha o Título.
- Defina o slug (parte da URL) — ex.:
regulamento-2026. - Escreva o conteúdo usando o editor (HTML básico permitido).
- Marque Ativa e clique em Salvar.
7Aniversariantes
Cadastro dos aniversariantes mostrados no widget da home da intranet e na TV Indoor.

Cadastrar
- Acesse Aniversariantes → + Novo.
- Informe Nome, Setor e Data de nascimento (apenas dia e mês são exibidos publicamente).
- Marque Ativo e salve.
O ano de nascimento nunca é exibido publicamente — só dia e mês. Mas o ano fica armazenado pra você conseguir gerar relatórios internos por idade se necessário.
8Contatos (PABX)
Catálogo de ramais, celulares e e-mails dos colaboradores. Aparece em
/contatos.php e /pabx.php para todos os usuários.

Cadastrar colaborador
- Telefones → + Novo.
- Preencha Nome, Cargo, Ramal, Setor e (opcional) E-mail.
- Defina a Ordem se quiser controlar a posição na listagem do mesmo setor.
- Salve.
Setores
Os setores são gerenciados em uma aba separada do mesmo módulo. Você pode criar, renomear e desativar setores. Setor desativado não some da listagem dos colaboradores já vinculados, mas não pode ser usado em novos cadastros.
9Fechamento (PDFs mensais)
Repositório dos PDFs de fechamento operacional/financeiro
publicados periodicamente. Aparece em /fechamento.php pros usuários.

- Fechamento → + Novo PDF.
- Informe Título, Mês/Ano de referência, e faça upload do PDF.
- Salve. O PDF fica disponível para download na área pública.
10Programação de serviços
Lista os serviços programados (manutenções, intervenções, obras) com status planejado, em andamento ou concluído.

- Programação → + Novo serviço.
- Preencha Título, Descrição, Local, Data e Status.
- Salve.
11Falta d'água
Cadastro de pontos com falta d'água programada ou em curso. Tem destaque na home quando há ocorrências ativas.

- Falta d'água → + Novo ponto.
- Informe Bairro/Região, Motivo, Início previsto, Previsão de retorno e Status (previsto/ativo/resolvido).
- Salve. Pontos ativos aparecem com destaque pros usuários.
Widget para o site público (sae.com.br)
Os mesmos pontos cadastrados aqui podem ser exibidos também no site
institucional (sae.com.br) por meio de um widget JavaScript
embutível. Assim, qualquer cidadão que visite o site vê em tempo real as faltas
d\'água ativas, sem precisar duplicar cadastro.
Como incorporar no WordPress (ou qualquer site)
- Abra o template do site no ponto onde o widget deve aparecer (ex.: home, barra lateral, página “Serviços”).
- Cole o snippet HTML:
<div id="sae-falta-dagua"></div>
<script src="https://intranet.sae.com.br/falta-dagua-embed.php"></script> - Salve o template. O widget carrega sozinho e atualiza a cada 5 minutos sem recarregar a página.
O endpoint /falta-dagua-embed.php devolve um JavaScript leve que
consulta o banco em tempo real e renderiza os pontos ativos dentro do
<div id="sae-falta-dagua">. O código efetivo do widget fica em
/falta-dagua-widget.js. A rotina se reatualiza a cada 5 minutos e os
estilos vêm embutidos — não é preciso incluir CSS extra no site que consome.
Quando não há pontos ativos, o widget desaparece silenciosamente (não ocupa espaço).
12TV Indoor
A TV Indoor é uma tela específica (acessada por uma TV/monitor dedicado) que mostra avisos, aniversariantes e outras informações em rodízio automático. Os conteúdos são gerenciados nesta seção.

Como funcionam os avisos da TV
Há duas formas de colocar um aviso na TV:
- Pela tela de Avisos: ao criar/editar um aviso, marque a caixa “Publicar também na TV Indoor”. O sistema cria automaticamente uma cópia para a TV.
- Diretamente nesta tela: cadastrando um item exclusivo da TV (que não aparece na intranet web).
Cada aviso da TV tem uma cor de fundo e uma cor de texto configuráveis. Use cores de alto contraste para garantir legibilidade na distância.
13Usuários e permissões
Esta seção é visível apenas para administradores. Aqui você autoriza quem pode entrar na intranet e define o que cada um pode fazer.

Conceito importante: senhas não são armazenadas
A intranet não guarda nenhuma senha. Quando o usuário tenta logar,
o sistema valida a senha contra o servidor de e-mail (IMAP) mail.sae.com.br.
Ou seja: a senha da intranet é sempre a mesma do webmail SAE.
Aqui no admin você apenas autoriza quem pode entrar (cadastrando o e-mail) e define o papel/permissões. A senha real é gerenciada pelo TI no servidor de e-mail.
Cadastrar novo usuário
- Usuários → + Novo usuário.
- Informe o Nome e o E-mail @sae.com.br (deve existir como conta de e-mail).
- Escolha o Papel: colaborador (só visualiza), editor (publica conteúdo) ou admin (acesso total).
- Para editores, marque os menus delegados (ex.: pode publicar avisos? documentos? telefones?).
- Salve. O usuário já pode logar usando a senha do e-mail dele.

Papéis disponíveis
| Papel | O que pode fazer |
|---|---|
| colaborador | Visualiza tudo na área pública. Sem acesso ao admin. |
| editor | Acessa o admin apenas nos menus delegados. Não vê Usuários nem Auditoria. |
| admin | Acesso total ao admin, incluindo criar/excluir outros usuários e ver auditoria. |
Desativar / reativar / excluir
- Desativar (recomendado): bloqueia o login do usuário sem apagar histórico.
- Reativar: libera o login novamente.
- Excluir: remove o usuário do banco. Use com cuidado — quebra referências históricas no audit log.
O sistema impede que você desative ou exclua a sua própria conta enquanto estiver logado nela. Use outro admin para isso.
14Quem está online
O painel Online agora mostra, em tempo real, todos os colaboradores que estão usando a intranet neste momento. É visível apenas para administradores e fica em Sistema → Online agora no menu lateral do admin.

O que aparece na tela
No topo, três indicadores em destaque:
- Online agora — quantos usuários distintos têm atividade nos últimos 5 minutos.
- Últimos 15 min — número de usuários distintos que estiveram ativos na última janela de 15 minutos (referência maior para entender o pico).
- Ao vivo — indicador pulsante mostrando há quanto tempo a página foi atualizada pela última vez (atualização automática a cada 10 segundos).
Logo abaixo, um campo de busca permite filtrar a tabela em tempo real por qualquer campo: nome, e-mail, setor, página atual ou IP.
Colunas da tabela
| Coluna | O que mostra |
|---|---|
| Status | LED verde pulsante (ativo, < 1 min sem atividade) ou amarelo (ocioso, entre 1 e 5 min). |
| Usuário | Avatar com iniciais, nome completo e e-mail. |
| Papel | Badge com o papel: admin, editor ou colaborador. |
| Setor | Setor vinculado ao usuário no cadastro (se houver). |
| Página atual | Onde o usuário está navegando neste momento (ex.: "Avisos", "Documentos", "Admin · Usuários"). Cada página tem um ícone próprio. |
| Conectado | Há quanto tempo essa sessão começou. |
| Inativo | Há quanto tempo o usuário não faz uma nova requisição ao servidor. Em modo ocioso aparece em laranja. |
| Dispositivo | Navegador e sistema operacional detectados (ex.: Chrome · Mac, Firefox · Windows). |
| IP | Endereço IP de onde a conexão veio. |
| Sess. | Quantas sessões distintas o mesmo usuário tem abertas (ex.: 2 = duas abas ou um celular + um desktop). |
Como funciona por trás
A cada requisição autenticada, o sistema atualiza um heartbeat na tabela
usuarios_presenca, registrando IP, navegador, página atual e horário da
última atividade. O painel Online agora consulta essa tabela e
atualiza-se sozinho a cada 10 segundos via uma chamada AJAX leve. Sessões inativas há
mais de 15 minutos são apagadas automaticamente.
Por questão de segurança, o identificador da sessão (session_id) nunca é armazenado em texto puro — só seu hash SHA-256. Mesmo um administrador olhando direto no banco não consegue sequestrar a sessão de outro usuário a partir dos dados de presença.
Os dados ficam apenas enquanto o usuário está logado. Quando ele faz logout (ou a sessão expira por inatividade), a linha é removida.
Use o painel para:
- Saber se vale a pena publicar um aviso urgente agora (quantos colaboradores estão na intranet?);
- Verificar se a intranet está sendo realmente usada após o lançamento;
- Detectar comportamentos estranhos (ex.: um usuário aparecendo de IP desconhecido);
- Ajudar o suporte: "Você está acessando agora? Vejo aqui que sim, e está na página X."
O painel mostra apenas presença e página atual. Ele não registra cliques, conteúdo digitado em formulários, nem o que o usuário está lendo dentro de cada página. Para auditoria detalhada de ações (criou, editou, excluiu, baixou), use a tela de Auditoria.
15Auditoria
O Audit Log registra todas as ações relevantes da intranet: logins, criações, edições, exclusões, downloads de documentos etc. Visível apenas para administradores.

O que é registrado
- Login bem-sucedido / falhas de login (com motivo)
- Criação, edição e exclusão de qualquer registro
- Downloads de documentos PDF
- Confirmação de leitura de documentos obrigatórios
- Mudanças de papel/permissão de usuários
- Rate-limiting (bloqueio por excesso de tentativas)
Filtros disponíveis
- Por data (intervalo)
- Por usuário
- Por tipo de ação
- Por entidade afetada
Se um usuário reclamar que “não consegue logar”, vá em Auditoria, filtre pelo
e-mail dele e olhe a coluna “motivo” nas linhas auth.login_falha. O sistema
já te diz se foi senha errada (IMAP), conta inativa, domínio inválido ou rate limit.
16Dúvidas e suporte
Em caso de dúvidas, problemas ou solicitações:
- Suporte interno (TI SAE) — abrir chamado via e-mail ou telefone do setor.
- Erro técnico ou bug — comunicar o TI com print da tela e horário aproximado da ocorrência (assim conseguimos cruzar com o audit log).
- Pedido de novo usuário — só pode ser feito por administradores cadastrados.
Este manual cobre o uso do sistema. Para detalhes técnicos (deploy, schema do banco,
integração IMAP, hooks de auditoria), consulte o repositório do projeto e o
CLAUDE.md mantido pelo time de desenvolvimento.