- Adiciona botão "Editar com OnlyOffice" na detail de Matéria Legislativa
para administradores, operadores de matéria e protocolo
- Adiciona botão OnlyOffice na listagem e detail de Documento Acessório
- Refatora URLs do OnlyOffice usando SAPL_INTERNAL_URL para comunicação
entre containers Docker (evita URLs hardcoded)
- Centraliza lógica de URL em build_onlyoffice_url() e
get_onlyoffice_browser_url() no utils.py
Adiciona automaticamente o cabeçalho com tipo, número e ano
no início do documento da matéria legislativa após o recebimento
da proposição. Ex: "INDICAÇÃO 10 / 2026"
- Adiciona verificação is_operador_protocolo na IndexView
- Exibe card com atalhos para proposições pendentes e recebidas
- Card visível apenas para usuários com permissão de protocolo
Signed-off-by: rangelbruno <brunojp.rangel@gmail.com>
Antes: o corpo do template era removido e substituído por texto padrão
Agora: mantém todo o conteúdo do template e substitui apenas placeholders
Placeholders suportados: {titulo}, {ementa}, {descricao}, {tipo}, {data}
Signed-off-by: rangelbruno <brunojp.rangel@gmail.com>
- Remove substituição de URLs para sapl-dev:8000 que quebrava em produção
- Usa ONLYOFFICE_URL do settings para substituir host nas URLs de callback
Signed-off-by: rangelbruno <brunojp.rangel@gmail.com>
Integra funcionalidades da branch franco-rocha:
- Templates de documentos para OnlyOffice
- Integração completa do editor em todos os tipos de documentos
- Correções de hash_code para documentos PDF
- Geração de PDF para assinatura digital
Conflitos resolvidos mantendo configurações da 3.1.x:
- onlyoffice_materia_views.py: mantém URLs via settings
- urls.py: mantém rotas de assinatura digital A1/A3
- Botão "Editar com OnlyOffice" só aparece para autores e se não foi protocolado
- Botão "Assinar PDF Digitalmente" só aparece para autores
- Adiciona verificação is_autor no contexto do DetailView
- Botão "Editar com OnlyOffice" só aparece para autores e se não foi protocolado
- Botão "Assinar PDF Digitalmente" só aparece para autores
- Adiciona verificação is_autor no contexto do DetailView
Quando um documento é editado via OnlyOffice durante a fase de confirmação,
o hash_code agora é regenerado automaticamente para manter o link de
confirmação válido.
Quando um documento é editado via OnlyOffice durante a fase de confirmação,
o hash_code agora é regenerado automaticamente para manter o link de
confirmação válido.
- Adiciona botão "Editar com OnlyOffice" na página de confirmação de proposição
- Permite que usuários com permissão de protocolo editem o documento durante a confirmação
- Adiciona validação de hash para segurança do link de confirmação
- Corrige permissão de download para permitir acesso a usuários do protocolo
- Adiciona botão "Editar com OnlyOffice" na página de confirmação de proposição
- Permite que usuários com permissão de protocolo editem o documento durante a confirmação
- Adiciona validação de hash para segurança do link de confirmação
- Corrige permissão de download para permitir acesso a usuários do protocolo
Remove lógica que substituía URLs de download do OnlyOffice
por endereços internos do Docker. Com OnlyOffice remoto, as
URLs retornadas já são acessíveis publicamente.
- Altera URL padrão do OnlyOffice para https://onlyoffice.legisinc.com.br
- Configura JWT para autenticação com o servidor OnlyOffice remoto
- Remove serviço OnlyOffice local do docker-compose-dev-db.yml
- Adiciona carimbo visual ANTES de assinar digitalmente
- Garante que a assinatura protege o documento completo
- Resolve problema de assinatura corrompida no validador ITI
- Implementa sistema de assinatura digital para matérias legislativas
- Suporte a certificados A1 (.pfx/.p12) com validação de senha
- Carimbo visual no PDF com nome, CPF, data e logo da câmara
- Modal de assinatura com interface amigável
- Campos no modelo: pdf_assinado, assinatura_info, assinado_em, assinado_por
- Migração 0088 para novos campos de assinatura
- Adiciona dependências: pyhanko, pyhanko-certvalidator, cryptography
UI/UX:
- Move subnav (tabs de navegação) para abaixo do menu principal
- Novo estilo minimalista para as tabs com indicador azul
- Scroll horizontal em dispositivos móveis
- Adiciona botão "Gerar PDF para Assinatura" na página de detalhe da matéria
- Integra com API de conversão do OnlyOffice para converter DOCX para PDF
- Botão só aparece quando a matéria possui número de protocolo e documento
- PDF é exibido inline no navegador para facilitar assinatura digital
Signed-off-by: rangelbruno <rangel.bruno@gmail.com>
- Adiciona botão "Gerar PDF para Assinatura" na página de detalhe da matéria
- Integra com API de conversão do OnlyOffice para converter DOCX para PDF
- Botão só aparece quando a matéria possui número de protocolo e documento
- PDF é exibido inline no navegador para facilitar assinatura digital
Signed-off-by: rangelbruno <rangel.bruno@gmail.com>
- Corrige geração de hash_code ao enviar proposições com texto_original (PDF)
- Adiciona verificação de arquivo existente antes de gerar hash no recibo
- Melhora UI/UX: filtros clicáveis na lista de proposições
- Aumenta largura máxima dos containers para 1200px
- Permite acesso de administradores ao detalhe da proposição
- Adiciona botão Receber na lista de proposições pendentes
- Corrige cor do título/cabeçalho das tabelas para preto
- Remove títulos duplicados nos templates
- Corrige geração de hash_code ao enviar proposições com texto_original (PDF)
- Adiciona verificação de arquivo existente antes de gerar hash no recibo
- Melhora UI/UX: filtros clicáveis na lista de proposições
- Aumenta largura máxima dos containers para 1200px
- Permite acesso de administradores ao detalhe da proposição
- Adiciona botão Receber na lista de proposições pendentes
- Corrige cor do título/cabeçalho das tabelas para preto
- Remove títulos duplicados nos templates
- Home: Adicionado card "Matérias Legislativas" e "Minhas Matérias" para vereadores
- OnlyOffice: Corrigido callback para salvar documentos corretamente na rede Docker
- OnlyOffice: Adicionado botão "Salvar e Voltar" no editor
- Listagem: Nova interface minimalista com cards, status visual e paginação
- Detalhes: Layout moderno com alertas contextuais e ações dinâmicas
- Documentação: Adicionado docs/melhorias-proposicoes-vereador.md
Implementa funcionalidade para gerenciar templates de documentos com
cabeçalho, rodapé e formatação pré-definidos. Novos documentos criados
via OnlyOffice usam esses templates automaticamente.
Funcionalidades:
- CRUD completo para gerenciar templates (/sistema/template-documento/)
- Edição de templates via OnlyOffice com cabeçalho/rodapé
- Busca hierárquica de templates (específico > genérico)
- Templates vinculáveis a tipos específicos (TipoMateriaLegislativa, etc.)
- Criação automática de documento em branco se não enviar arquivo
- Integração com todas as views de download OnlyOffice
Arquivos novos:
- sapl/base/onlyoffice_template_views.py
- sapl/base/migrations/0061_documenttemplate.py
- sapl/utils_template.py
- sapl/templates/base/documenttemplate_*.html
- docs/templates-documentos.md
Implementa funcionalidade para gerenciar templates de documentos com
cabeçalho, rodapé e formatação pré-definidos. Novos documentos criados
via OnlyOffice usam esses templates automaticamente.
Funcionalidades:
- CRUD completo para gerenciar templates (/sistema/template-documento/)
- Edição de templates via OnlyOffice com cabeçalho/rodapé
- Busca hierárquica de templates (específico > genérico)
- Templates vinculáveis a tipos específicos (TipoMateriaLegislativa, etc.)
- Criação automática de documento em branco se não enviar arquivo
- Integração com todas as views de download OnlyOffice
Arquivos novos:
- sapl/base/onlyoffice_template_views.py
- sapl/base/migrations/0061_documenttemplate.py
- sapl/utils_template.py
- sapl/templates/base/documenttemplate_*.html
- docs/templates-documentos.md
- Adiciona suporte OnlyOffice para DocumentoAdministrativo, NormaJuridica,
MateriaLegislativa e DocumentoAcessorio
- Cria views específicas por módulo (protocoloadm, norma, materia)
- Adiciona botão "Editar com OnlyOffice" nos templates de detail
- Melhora layout do formulário de Proposição com CSS aprimorado
- Corrige exibição da opção OnlyOffice no formulário de criação
- Remove botão OpenAPI não utilizado dos templates crud
- Adiciona documentação completa em docs/ONLYOFFICE_INTEGRACAO.md
- Adiciona suporte OnlyOffice para DocumentoAdministrativo, NormaJuridica,
MateriaLegislativa e DocumentoAcessorio
- Cria views específicas por módulo (protocoloadm, norma, materia)
- Adiciona botão "Editar com OnlyOffice" nos templates de detail
- Melhora layout do formulário de Proposição com CSS aprimorado
- Corrige exibição da opção OnlyOffice no formulário de criação
- Remove botão OpenAPI não utilizado dos templates crud
- Adiciona documentação completa em docs/ONLYOFFICE_INTEGRACAO.md