=== Privatto ===
Contributors: interativus, sergioinglez
Tags: lgpd, gdpr, cookie consent, consent mode, privacy
Requires at least: 6.2
Tested up to: 7.0
Requires PHP: 7.4
Stable tag: 1.4.0
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Banner de cookies LGPD/GDPR com bloqueio automático de tags de terceiros, Google Consent Mode v2 e registros de consentimento gravados no seu próprio banco de dados.

== Description ==

O Privatto é uma plataforma de gestão de consentimento (CMP) autônoma para WordPress, criada com a LGPD brasileira e o GDPR europeu em mente. Não depende de nenhum serviço externo.

Site oficial, demonstração ao vivo e documentação: [interativus.com.br/privatto](https://interativus.com.br/privatto)

**Principais recursos:**

* Banner de consentimento granular com preferências por categoria (necessários, estatísticas, marketing, incorporações).
* Bloqueio automático de scripts e iframes de terceiros via buffer de saída: tags `<script>` correspondentes são trocadas para `type="text/plain"` antes de a página chegar ao navegador, então nada roda antes do consentimento.
* Google Consent Mode v2 injetado com tudo negado por padrão, atualizado conforme a decisão do visitante.
* Prova de consentimento gravada na sua própria tabela do banco de dados: ID único, ação, categorias (JSON), versão da política, hash de IP (opcional), país, user agent, URL da página e horário UTC. Exportável em CSV para auditorias.
* Gerador de documentos LGPD: política de privacidade, termos de uso, política de cookies, política de trocas e devoluções, e um resumo em linguagem simples, construídos a partir de um formulário guiado. Refino de texto opcional com IA (API Groq) apenas para a descrição do negócio — as cláusulas legais obrigatórias nunca passam pela IA.
* Formulário de direitos do titular (LGPD art. 18) com protocolos rastreados, monitoramento do prazo de resposta de 15 dias e fila administrativa.
* Exportação de registro simplificado das operações de tratamento (ROPA), conforme exigido pela Resolução CD/ANPD nº 2/2022, inclusive para agentes de tratamento de pequeno porte.
* Link "Preferências de cookies" para reabrir o banner, permitindo ao visitante alterar ou revogar o consentimento a qualquer momento.

**Aviso importante:** os documentos gerados são um ponto de partida estruturado e alinhado à LGPD; não constituem aconselhamento jurídico. Recomendamos revisão por um advogado, especialmente em operações complexas.

== Installation ==

1. Envie o plugin em Plugins → Adicionar novo → Enviar plugin, ou copie a pasta `privatto` para `/wp-content/plugins/`.
2. Ative o plugin. A tabela de consentimentos e as opções padrão são criadas na ativação.
3. Siga o assistente de configuração inicial e depois ajuste em **Privatto → Configurações**.
4. Gere seus documentos legais em **Privatto → Documentos LGPD**.

== Frequently Asked Questions ==

= O plugin depende de algum serviço externo? =

Não. Banner, bloqueio, registros de consentimento e geração de documentos rodam inteiramente no seu site. A única chamada externa opcional é a API Groq, usada exclusivamente para refinar textos livres quando você fornece uma chave de API.

= Como funciona o bloqueio de tags? =

O plugin captura toda a saída da página no `template_redirect`, injeta o Google Consent Mode v2 (tudo negado) logo após `<head>`, e reescreve qualquer `<script>` cujo `src` ou conteúdo corresponda aos padrões configurados. Quando o visitante consente, os scripts permitidos são restaurados e executados.

= Onde fica armazenada a prova de consentimento? =

Em uma tabela dedicada (`wp_pvto_consents`). Cada decisão registra um UUID, ação, categorias, versão da política, hash irreversível de IP (opcional), país, user agent, URL e data/hora UTC. Você pode visualizar em **Privatto → Logs** e exportar em CSV.

= A remoção de dados na desinstalação é opcional? =

Sim. Por padrão, desinstalar preserva as tabelas de consentimento (elas são sua evidência de auditoria) e remove apenas as configurações. Para excluir tudo, defina `PVTO_DELETE_DATA` como `true` no `wp-config.php` antes de remover o plugin.

== External services ==

Este plugin se conecta a um serviço opcional de terceiros:

API Groq — usada apenas se você colar uma chave de API da Groq em Privatto → Documentos LGPD. Ela serve para (1) reescrever, em linguagem mais natural, a descrição livre do seu site/negócio digitada no formulário de documentos, e (2) gerar um resumo em linguagem simples da sua política de privacidade para o mesmo documento. Apenas esse texto livre (e os fatos derivados necessários para montar o resumo) é enviado; as cláusulas legais obrigatórias são sempre geradas localmente e nunca enviadas à API. Essa chamada só acontece quando você clica nos botões "Refinar com IA" / "Gerar resumo com IA" — nunca automaticamente e nunca no site público. Se nenhuma chave estiver configurada, esses botões ficam desativados e tudo funciona normalmente, sem nenhuma chamada externa.
Serviço: Groq (https://groq.com). Termos de Serviço: https://groq.com/terms-of-use · Política de Privacidade: https://groq.com/privacy-policy

**Sobre os nomes de domínios de terceiros encontrados no código-fonte:** o plugin traz um catálogo estático e local de serviços conhecidos de rastreamento/incorporação (Google Tag Manager, Meta Pixel, Stripe, RD Station/CloudFront etc.). Essas strings de domínio são apenas dados de referência, usados para (a) descrever — na política de cookies gerada — serviços que o próprio site do usuário já utiliza, e (b) casar padrões de script/iframe para o bloqueio baseado em consentimento. O Privatto nunca faz nenhuma requisição a esses domínios e nunca carrega nenhum arquivo remoto a partir deles.

Nota: o plugin também traz um catálogo de referência estático (nome do serviço, fornecedor e assinaturas conhecidas de script/domínio) usado apenas para ajudar o gerador de documentos a reconhecer e descrever serviços de terceiros *que o seu próprio site pode já estar usando* (ex.: Google Analytics, Meta Pixel, Stripe) ao redigir sua política de cookies. Esse catálogo não faz nenhuma requisição de saída a esses serviços — é uma checagem de padrões local e offline contra o HTML do seu próprio site.

== Changelog ==

= 1.4.0 =
* Reforço de segurança: declarações preparadas com o placeholder de identificador `%i`, unslash/sanitização de entrada, escape de saída.
* Internacionalização: comentários para tradutores e placeholders ordenados.
* Readme reescrito conforme os padrões do WordPress.org, agora em português.

== Upgrade Notice ==

= 1.4.0 =
Versão de segurança e conformidade com os padrões. Agora é necessário WordPress 6.2 ou superior.
