Impl Mixin para gerar relatórios de pesquisas
MultiFormatOutputMixin sobrescreve render_to_response e, com base no
parametro format=[xlsx, csv, json], gerar versão não paginada dos
resultados de FilterView. O mixin foi aplicado na pesquisa de matérias e
de normas e pode ser extendido para outras filterview's ou mesmo
listviews, internas ao Crud.
* add model OperadorAutor
* refatora autor e impl form e view para operadores
* refatora AutorForm para seleção de usuários
* remove OperadorAutorCrud
* restrige usuários na lista de operadores
* ajusta qs p/ lista de usuários em autor
* add listview com pesquisa para autores
* remove pesquisa independente de autores
* ajustes no filtro de autores e display de operadores
* refatora restrições de usuário em proposição
* corrige exclusão de vinculo de usuário votante
* impl edição de votante e autor para usuário
* corrige run python em migration
* organia imports em sapl/base/forms.py
* add restrição de user ativo na lista de user de autor
* corrige erro apontado por test_str_sanity
* ajusta teste de criação de proposição
* ajusta erro apontado em rules/test_rules
* add load para variável de ambiente
* altera url de primeira página se SAPL_AS_SAPN = True
* add context_processor para sapl as sapn
* ajuste de identação
* refatora base.html para sapl as sapn
* remove menus do sapl em sapn
* ajusta tabelas auxiliares
* refatora norma e compilação para sapl as sapn
* impl feature flag superficial
* ajusta menu Acessar em sapl as sapn
* add orgao como fk para normas
* add órgão no cadastro de normas
* ajuste de teste redirecionamento sapl index
* ajuste de teste de url
* alterações de IDE
* Refatora forms de acomp via email e recup de senha
Implementa mixin de registro de email para encaminhamento de emails com
google recaptcha.
* Impl registro do Google Recaptcha
* Substitui urllib3 por requests
Co-authored-by: eribeiro <edwardr@senado.leg.br>
* Fix #3127
* Adiciona merger de PDF
* Adiciona pypdf4 em requirements.txt
* Adicionando mensagem de erro caso não tenha documento acessório
* Subido algumas recomendações(logs, exceptions, localização de imports)
* Mudando maneira de pegar o diretorio tmp
* Concertando problema de css
* Arrumando mensagem de erro para quando todos os documentos acessorios não tem pdf cadastrados
* Generalizando tmp file para utils.py
* Adicionando logs de info e quebrando linhas grandes
Co-authored-by: eribeiro <edwardr@senado.leg.br>
Co-authored-by: ulysses <ulysses3353@gmail.com>
* Refatora num matérias por tipo
* Adaptação p/ caso que utiliza MateriaEmTramitacao
* Update sapl/utils.py
Co-Authored-By: Edward <9326037+edwardoliveira@users.noreply.github.com>
* Update sapl/utils.py
Co-Authored-By: Edward <9326037+edwardoliveira@users.noreply.github.com>
* Update utils.py
Co-authored-by: João Rodrigues <cont.joaorodrigues@gmail.com>
Co-authored-by: Edward <9326037+edwardoliveira@users.noreply.github.com>
* Propõe solução para TextFields com sequências longas
* aponta solução para pdf com sequencias longas de texto
* add files frontend - update class force wrap text
* WIP
* WIP 2
* WIP 3
* Adiciona file check em Audiencia e Parlamentar e mostra todos os erros
* adicionado o file check em mais forms
* adiciona verificacao de arquivo em partido form
até a release 1.6.1 do django-crispy-forms, os fields em Meta.Fields eram
renderizados mesmo se não mencionados no helper.
Com esta mudança (6b93e8a362)
render_unmentioned_fields foi adicionado uma condição em que a cada
instância do Helper, fosse decidido se os fields não mencionados serião ou
não renderizados...
O Sapl até este commit: 22b87f36eb
utilizou o django-crispy-forms na versão 1.6.1, ou seja,
sem a condição render_unmentioned_fields o que fazia o FormHelper, na 1.6.1
set comportar como se, agora, na 1.7.2 o default fosse True.
Como todos os Forms do Sapl foram construídos assumindo que fields
não incluídos explicitamente no Helper, o helper o incluiria implicitamente,
e assim o era, de acordo com commit acima do django-crispy-forms, então
cria-se essa classe:
class SaplFormHelper(FormHelper):
render_unmentioned_fields = True
onde torna o default, antes False, agora = True, o esperado pelos forms do sapl,
e substituí-se todos os FormHelper por SaplFormHelper dentro do projeto Sapl
esta explicação ficará aqui dentro do código, via commit, e na issue #2456.
* retira django-bootstrap3 do projeto sapl
* retira bower sass-processor e libsass do projeto sapl
* altera origem do django-admin-bootstrapped
* commenta todas as entradas css e js em base.html
* vue create sapl-frontend
* add e configura django-webpack-loader
* add vue.config.js e configura comunicação com webpack-loader
* adequa staticfiles_dirs e ignora webpack-stats
* cria bloco de expansão para vue_content
* remove rotas do app hellow e impl multiplas entradas
* add nova entrada para gereciamento de temas
* cria plugin para carregar THEME_CUSTOM em .env
* add bootstrap ao projeto e a configuração fixa de temas
* add imports básicos para bootstrap
* move assets para sapl-frontend
* move assets para projetosexterno de tema e configura sapl project para leitura de temas através do .env
* remove theme do sapl frontend project
* retira link simbólico de entre projeto frontend e projeto de tema
* retira scss do projeto django
* altera btn-default/bootstrap3 para btn-outline-dark/bootstrap4
* altera btns de outline-dark para outlink-primary
* migra pull-right para float-right
* migra pull-left para float-left
* migra btn-excluir para btn-outline-danger
* add global entry and configure jquery
* add jquery na entrada global e migra getCookie
* remove row-fluid
* muda active para link a
* ajustes do botão salvar
* ajuste botão add participação em comissão
* ajuste do layout das mensagens de alerta e botao add detail detail
* ajusta script de votação individual
* ajuste eslint
* altera origem da imagem para etiqueta.png
* corrige eslint
* migra tela de busca de autores para sapl-frontend
* corrige fragmento de html para paginação
* ajuste de js e html em protocolo
* ajuste de layout no menu protocolo
* ajuste no formulário de proposições para sapl_frontend
* migra jquery-mask-plugin
* remove código antigo do jquery-mask-plugin
* migra jquery e algumas funções dependentes
* migra tinymce
* ajustes eslint
* ajuste de sub menus
* add campo de hora em mask
* move jquery.runner.js para sapl-frontend
* primeira versão com jquery runner funcionando
* ajusta painel ao sapl-frontend
* ajuste de tela de login
* cria entr compilação p sapl-frontend e migra jsdiff
* migra js das notas
* add import bootstrap em module global
* altera nome de função para iniciar editor de texto rico
* move scss de compilação do tema para o frontend
* adequa crud de notas de compilação ao form do django 1.11
* retira render padrão scripts css e js de image_cropping
* integra jquery runner e image cropping com jquery e lodash global
* ajustes de eslint em compilação
* ajuste de layout para notas e de código eslint
* ajuste de layout para Vides da app compilação
* altera configurações para pasta público de tema ser importada no build
* ajustes de eslint
* ajusta TAs embedded de normas para sapl-frontend
* migra botões de compilação para bootstrap4
* migra componente alert para bootstrap 4
* altera chamada a jQuery e resolve conflito com bootstrap
* altera travis.yaml
* corrige entrada doo sapl-oficial-theme para instalação trivial
* testa modo de definir versão do node no travis
* teste de configuração do travis
* ajuste de teste e das telas de erro 404 e 500
* Configura sapl-frontend e webpackloader
Configura sapl-frontend e webpack-loader com código de produção já
esportado para a sapl/static. Desta forma, tanto no travis como no
docker não existe a necessidade de instalação de node, npm e/ou yarn
* configura docker e localização do webpack-stats.json
* inicia migração da edição de dispositivos
* ajuste de chunks
* resume forma de lidar com com chunks css e js
* cria template tag para tratar chunk-vendors
* corrige menu de configuração dos TAs
* migra barra inferior da vigencia
* migra linha do tempo de vigências
* ajuste nos menus do topo da edição dinamica da compilação
* frontend produção
* ajuste de blocos
* migra layout da edição dinamica de dispositivos originais
* ajuste da seleção de tipos de vigências
* migra frontend de edição dinâmica de dispositivos
* ajst dropdown de seleção de editor de dispositivos
* migra subnav da edição avançada de dispositivos
* separa frontend em outro projeto
* Altera how-to de instalação do ambiente dev
Altera how-to de instalação do ambiente de desenvolvimento com novas instruções para colaboração com o sapl-frontend
* migra barra de navegação de parents de dispositivos
* Alterações no how-to para colab com sapl-frontend
Alterações no how-to para colab com sapl-frontend
* ajuste de docs
* sapl-frontend reinseriu language pt-br datepicker
* ajuste no form autoria multicreate para sapl-frontend
* add webpack blocks no index de painel
* refatora layout do painel para bootstrap4
* migra cadastro de autor
* migra frontend da manutenção de tipos de proposição
* migra tela de incorporação
* remove templates de compilação
* ajusta layout do form de pesquisa textual
* ajustes de layout no painel
* primeira versão checada do frontend
no caso da criação de um banco novo, os models ainda não existem no
banco e não é possivel fazer a consulta que é feita ao subir o código do
sapl pelo proprio migrate.
* Fix #2432
Insere verificação de serviço de email configurado. Assume que
EMAIL_HOST vazio é serviço desativado não enviando, assim, email na
edição/adição de autor, bem como desativando acesso via get/post e
por link de "Acompanhar Matéria" na lista de resultados da
pesquisa de matéria e na tela de detalhes de matérias.
Comportamento análogo para Documentos Administrativos.
* impl test de conexão
* Corrige tipo de remetente
rementente de um email é único e seu envio não é feito através de uma
lista... estudando a execução do send_mail descobri a RFC 2822 que
define rementente da seguinte forma:
From: "Joe Q. Public" <john.q.public@example.com>
portanto,
ou se envia uma string neste formato, o que faz com que mais execução
deva ser feita para um padrão interno de processamento, ou envia-se uma
tupla e não uma lista da seguinte forma
("Joe Q. Public", "john.q.public@exemple.com")
então por que com um servidor configurado o remetente estava
funcionando?
possivelmente ninguem ainda tinha seguindo o formato completo acima
apresentado na definição de EMAIL_SEND_USER...
fazendo isso:
EMAIL_SEND_USER = john.q.public@example.com
em vez disso:
EMAIL_SEND_USER = Joe Q. Public <john.q.public@example.com>
ocorre que esta segunda forma (a correta), melhor apresenta o email ao
usuário, colocando em sua caixa de entrada de email um nome
significativo e não o username.
* faz teste de conexão de email apenas no início do sapl
Foram desativadas as configurações superficiais e imprecisas não
condisentes com o sapl em produção. A impl atual estava causando
dificuldades na migração da versão do django, além disso não estava
tendo mínimo efeito para o mais urgente, registro claro de problemas na
produção.
Uma nova solução deve ser apresentada como tarefa da Issue #52, na qual
tomei a liberdade de adicionar a label 'prioridade alta' e alterar o
Milestone para 3.1... Por que? por não ser uma melhoria para usuário
final e sim uma demanda urgente dos devs e da infra.