Metadata-Version: 2.1
Name: brasil.gov.agenda
Version: 2.0b2
Summary: Agenda de membros do Governo Brasileiro
Home-page: https://github.com/plonegovbr/brasil.gov.agenda
Author: PloneGovBr
Author-email: gov@plone.org.br
License: GPLv2
Keywords: plonegovbr agenda brasil plone dexterity
Platform: UNKNOWN
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: Web Environment
Classifier: Framework :: Plone
Classifier: Framework :: Plone :: 4.3
Classifier: Intended Audience :: System Administrators
Classifier: License :: OSI Approved :: GNU General Public License v2 (GPLv2)
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: JavaScript
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 2.7
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Dist: Acquisition
Requires-Dist: collective.portlet.calendar
Requires-Dist: collective.cover
Requires-Dist: plone.api
Requires-Dist: plone.app.content
Requires-Dist: plone.app.contentlisting
Requires-Dist: plone.app.contenttypes
Requires-Dist: plone.app.dexterity
Requires-Dist: plone.app.form
Requires-Dist: plone.app.imaging
Requires-Dist: plone.app.portlets
Requires-Dist: plone.app.referenceablebehavior
Requires-Dist: plone.app.uuid
Requires-Dist: plone.app.versioningbehavior
Requires-Dist: plone.autoform
Requires-Dist: plone.batching
Requires-Dist: plone.behavior
Requires-Dist: plone.dexterity
Requires-Dist: plone.indexer
Requires-Dist: plone.namedfile
Requires-Dist: plone.portlets
Requires-Dist: plone.supermodel
Requires-Dist: plone.tiles
Requires-Dist: plone.uuid
Requires-Dist: Products.ATContentTypes
Requires-Dist: Products.CMFPlone (>=4.3)
Requires-Dist: Products.GenericSetup
Requires-Dist: setuptools
Requires-Dist: six
Requires-Dist: zope.component
Requires-Dist: zope.container
Requires-Dist: zope.event
Requires-Dist: zope.i18nmessageid
Requires-Dist: zope.interface
Requires-Dist: zope.lifecycleevent
Requires-Dist: zope.publisher
Requires-Dist: zope.schema
Provides-Extra: test
Requires-Dist: plone.app.robotframework ; extra == 'test'
Requires-Dist: plone.app.testing[robot] ; extra == 'test'
Requires-Dist: plone.app.textfield ; extra == 'test'
Requires-Dist: plone.browserlayer ; extra == 'test'
Requires-Dist: plone.namedfile ; extra == 'test'
Requires-Dist: plone.testing ; extra == 'test'
Requires-Dist: robotsuite ; extra == 'test'
Requires-Dist: transaction ; extra == 'test'
Requires-Dist: zope.site ; extra == 'test'

************************************************
.gov.br: Agenda de Membros do Governo Brasileiro
************************************************

.. contents:: Conteúdo
   :depth: 2

Introdução
-----------

Este pacote provê tipos de conteúdo necessários a gestão de Agendas de membros do Governo Brasileiro conforme disposto na `Lei 12.813, de 16 de Maio de 2013 <http://www.planalto.gov.br/ccivil_03/_Ato2011-2014/2013/Lei/L12813.htm>`_ artigos 2o. e 11o.

Estado deste pacote
---------------------

O **brasil.gov.agenda** tem testes automatizados e, a cada alteração em seu
código os testes são executados pelo serviço Travis.

O estado atual dos testes pode ser visto nas imagens a seguir:

.. image:: http://img.shields.io/pypi/v/brasil.gov.agenda.svg
    :target: https://pypi.python.org/pypi/brasil.gov.agenda

.. image:: https://img.shields.io/travis/plonegovbr/brasil.gov.agenda/master.svg
    :target: http://travis-ci.org/plonegovbr/brasil.gov.agenda

.. image:: https://img.shields.io/coveralls/plonegovbr/brasil.gov.agenda/master.svg
    :target: https://coveralls.io/r/plonegovbr/brasil.gov.agenda

.. image:: https://img.shields.io/codacy/grade/77956b9df8a34087bc7ac4079f0e2ae3.svg
    :target: https://www.codacy.com/project/plonegovbr/brasil.gov.agenda/dashboard

Instalação
------------

Para habilitar a instalação deste produto em um ambiente que utilize o buildout:

1. Editar o arquivo buildout.cfg (ou outro arquivo de configuração) e adicionar o pacote ``brasil.gov.agenda`` à lista de eggs da instalação::

        [buildout]
        ...
        eggs =
            brasil.gov.agenda

2. Após alterar o arquivo de configuração é necessário executar ''bin/buildout'', que atualizará sua instalação.

3. Reinicie o Plone

4. Acesse o painel de controle e instale o produto **Brasil.gov.br: Agenda de Membros do Governo Brasileiro**.

Atualização de 1.x a 2.x
------------------------

.. Warning::
    Só atualize para a versão 2.x do pacote depois de atualizar à versão mais recente da branch 1.x.

As atualizações da versão 1.x à 2.x só são suportadas das versões mais recentes de cada branch.
Antes de atualizar confira que você está efetivamente utilizando a última versão da branch 1.x e que não existem upgrade steps pendentes de serem aplicados.

Foi removida a dependência no collective.portlet.calendar pois o layout do IDG 2.x não faz uso de portlets.
Remova manualmente todos os portlets de calendario estendido e desinstale esse pacote antes de atualizar.

O portlet de Busca de Agenda foi inabilitado e será completamente removido na versão 3.0.
Remova manualmente todos os portlets de Busca de Agenda de seu site.

Rodando o buildout de uma tag antiga do pacote
----------------------------------------------

Para atender ao relato de ter vários jobs de integração contínua em pacotes brasil.gov.* (ver https://github.com/plonegovbr/portalpadrao.release/issues/11), no fim da seção extends do buildout.cfg de todos os pacotes brasil.gov.* temos a seguinte linha:

.. code-block:: cfg

    https://raw.githubusercontent.com/plonegovbr/portal.buildout/master/buildout.d/versions.cfg

Hoje, esse arquivo contém sempre as versões pinadas de um release a ser lançado. Por esse motivo, quando é feito o checkout de uma tag mais antiga provavelmente você não conseguirá rodar o buildout. Dessa forma, após fazer o checkout de uma tag antiga, recomendamos que adicione, na última linha do extends, o arquivo de versões do IDG compatível com aquela tag, presente no repositório https://github.com/plonegovbr/portalpadrao.release/.

Exemplo: você clonou o repositório do brasil.gov.portal na sua máquina, e deu checkout na tag 1.0.5. Ao editar o buildout.cfg, ficaria dessa forma, já com a última linha adicionada:

.. code-block:: cfg

    extends =
        https://raw.github.com/collective/buildout.plonetest/master/test-4.3.x.cfg
        https://raw.github.com/collective/buildout.plonetest/master/qa.cfg
        http://downloads.plone.org.br/release/1.0.4/versions.cfg
        https://raw.githubusercontent.com/plonegovbr/portal.buildout/master/buildout.d/versions.cfg
        https://raw.githubusercontent.com/plone/plone.app.robotframework/master/versions.cfg
        https://raw.githubusercontent.com/plonegovbr/portalpadrao.release/master/1.0.5/versions.cfg

Para saber qual arquivo de versões é compatível, no caso do brasil.gov.portal, é simples pois é a mesma versão (no máximo um bug fix, por exemplo, brasil.gov.portal é 1.1.3 e o arquivo de versão é 1.1.3.1). Para os demais pacotes, recomendamos comparar a data da tag do pacote e a data nos changelog entre uma versão e outra para adivinhar a versão compatível.

Desenvolvimento
---------------

Utilizamos `webpack <https://webpack.js.org/>`_ para gerenciar o conteúdo estático do tema,
tomando vantagem das diversas ferramentas e plugins disponíveis para suprir nossas necessidades.

Utilizamos a receita de buildout `sc.recipe.staticresources <https://github.com/simplesconsultoria/sc.recipe.staticresources>`_ para integrar o `webpack`_ no Plone.

Ao desenvolver os temas iniciamos o watcher do `webpack`_ e trabalhamos somente na pasta "webpack" alterando os arquivos;
o `webpack`_ se encarrega de processar e gerar os arquivos em seu endereço final.

Este pacote adiciona os seguintes comandos na pasta bin do buildout para processar automaticamente os recursos estáticos:

.. code-block:: console

    $ bin/env-brasilgovagenda

Este comando adiciona no terminal o node do buildout no PATH do sistema,
dessa forma voce pode trabalhar com webpack conforme a documentação oficial.

.. code-block:: console

    $ bin/watch-brasilgovagenda

Este comando instrui ao `webpack`_ para esperar por qualquer mudança nos arquivos SASS e gera a versão minificada do CSS para a aplicação.

.. code-block:: console

    $ bin/debug-brasilgovagenda

Este comando faz o mesmo que o comando watch, mas não minifica o CSS final.
Utilizado para debugar a geração do CSS.

.. code-block:: console

    $ bin/build-brasilgovagenda

Este comando cria os recursos minificados, mas não espera por mudanças.

Fazendo releases com o zest.releaser
------------------------------------

Os recursos estáticos do pacote são gerados usando o `webpack`_ e não são inclusos no VCS.
Se você está fazendo release usando o zest.releaser, você precisa fazer `upload manual dos arquivos no PyPI <https://github.com/zestsoftware/zest.releaser/issues/261>`_ ou você vai criar uma distribuição quebrada:

* execute ``longtest``, como de costume
* execute ``fullrelease``, como de costume, respondendo "não" a pergunta "Check out the tag?" para evitar o upload ao PyPI
* faça checkout na tag do release que você está liberando
* execute ``bin/build-brasilgovagenda`` para criar os recursos estáticos
* crie os arquivos da distribuição usando ``python setup.py sdist bdist_wheel``, como de costume
* faça o upload manual dos arquivos usando ``twine upload dist/*``

Em caso de erro você terá que criar um novo release pois o PyPI Warehouse `não permite reutilizar um nome de arquivo <https://upload.pypi.org/help/#file-name-reuse>`_.

Colaboradores
---------------

* Érico Andrei (ericof)
* Felipe Duardo (felipeduardo)
* Danilo Barbato (dbarbato)
* Eduardo Goulart
* Héctor Velarde (hvelarde)
* Rodrigo Ferreira de Souza (rodfersou)

Changelog
---------

2.0b2 (2019-04-05)
^^^^^^^^^^^^^^^^^^

- Acrestenta o campo 'Solicitante' no tipo de conteúdo ``Compromisso``. 
  (closes `#plonegovbr/brasil.gov.agenda#153 <https://github.com/plonegovbr/brasil.gov.agenda/issues/153>`_).
  [idgserpro]

- Remove o campo ``subjects`` do tipos de conteúdo ``Compromisso`` por ser considerado `desnecessário <https://listas.interlegis.gov.br/pipermail/plonegov-br/2018-June/004767.html>`_.
  [hvelarde]


2.0b1 (2018-11-23)
^^^^^^^^^^^^^^^^^^

- Remove registro de recursos estaticos dos resource registries;
  agora utilizamos um viewlet para incluir eles simplificando a manutenção do complemento.
  [rodfersou]

- Atualiza configuração do webpack.
  [rodfersou]

- Corrige o tile de Agenda quando a lingua é diferente de Português Brasileiro (fecha `#149 <https://github.com/plonegovbr/brasil.gov.agenda/issues/149>`_).
  [rodfersou]


2.0a7 (2018-09-28)
^^^^^^^^^^^^^^^^^^

.. warning::
    Este release atualiza as dependências do processamento de recursos estáticos.
    Em ambiente de desenvolvimento pode ser necessário remover as pastas ``parts`` e ``webpack/node_modules`` para efetivar a atualização de ambiente.

- Atualiza traduções ao Português Brasileiro.
  [hvelarde]

- Simplifica visão de agenda.
  [rodfersou]

- Corrige título da agenda diária caso o nome da pessoa no cargo mudar (fecha `#142 <https://github.com/plonegovbr/brasil.gov.agenda/issues/142>`_).
  [hvelarde]

- Evita a emissão de source maps dos recursos estáticos.
  [hvelarde]

- Atualiza versões do `Node.js <https://nodejs.org/>`_ e sc.recipe.staticresources.
  [rodfersou]


2.0a6 (2018-08-31)
^^^^^^^^^^^^^^^^^^

- Evita ``UnicodeDecodeError`` no título da agenda diária.
  [hvelarde]

- Adiciona dependência soft no collective.portlet.calendar para remover browser layer obsoleto (fecha `#137 <https://github.com/plonegovbr/brasil.gov.agenda/issues/137>`_).
  [hvelarde]


2.0a5 (2018-07-20)
^^^^^^^^^^^^^^^^^^

- Corrige o campo atualização ao navegar pelos dias.
  [rodfersou]


2.0a4 (2018-07-06)
^^^^^^^^^^^^^^^^^^

.. Warning::
    Esta versão inabilita o uso do portlet de Busca de Agenda.
    Remova manualmente todos os portlets de Busca de Agenda antes de atualizar.

- Ajustes gerais de layout.
  [agnogueira, rodfersou]

- O portlet de Busca de Agenda foi inabilitado e será completamente removido na versão 3.0.
  [hvelarde]

- Corrige dependências do pacote.
  [hvelarde]

- Limpeza e reorganização do código.
  [hvelarde, rodfersou]


2.0a3 (2018-06-28)
^^^^^^^^^^^^^^^^^^

- Remove o registro condicional de subscribers incluído no release 2.0a1.
  [hvelarde]

- Marca dias com compromissos nos calendários (fecha `#118 <https://github.com/plonegovbr/brasil.gov.agenda/issues/118>`_).
  [rodfersou]

- Adiciona listagem de agendas diárias ao acessar agenda quando estiver autenticado.
  [rodfersou]

- Corrige ações para editar e apagar compromisso.
  [rodfersou]

- Corrige alinhamento do titulo do calendário.
  [rodfersou]


2.0a2 (2018-06-18)
^^^^^^^^^^^^^^^^^^

.. Warning::
    Esta versão remove todos os upgrade steps do branch 1.x.
    Atualizações só serão suportadas da versão mais recente desse branch.
    Esta versão também remove a dependência no collective.portlet.calendar.
    Remova manualmente todos os portlets de calendario estendido e desinstale o pacote antes de atualizar.

- Corrige mensagem de agenda vazia quando não existem compromissos.
  [rodfersou]

- Corrige a busca de compromissos na agenda.
  [hvelarde]

- Corrige funcionamento da view padrão do tipo de conteúdo ``AgendaDiaria`` para evitar `problemas com proxies intermediárias <https://community.plone.org/t/6658>`_.
  [rodfersou]

- Remove dependência no collective.portlet.calendar;
  o layout do IDG 2.x não faz uso de portlets.
  [hvelarde]

- Remove upgrade steps do branch 1.x.
  [hvelarde]

- Esconde checkbox de seleção de tipo compromisso na busca da agenda diária.
  [rodfersou]

- Remove parametros GET sem utilidade na agenda diária.
  [rodfersou]

- Melhora a compatibilidade futura com o Python 3;
  adiciona dependência no `six <https://pypi.python.org/pypi/six>`_.
  [hvelarde]

- Remove dependência no five.grok.
  [hvelarde]

- Remove atalhos para adicionar agendas diárias e compromissos.
  [hvelarde]

- Corrige tratamento de fuso horário na view padrão do tipo de conteúdo ``AgendaDiaria``;
  isso evita mudanças na hora dos compromissos em browsers com um fuso horário diferente do vigente no Brasil.
  [rodfersou, hvelarde]


2.0a1 (2018-06-06)
^^^^^^^^^^^^^^^^^^

- Atualiza layout e funcionalidades da view de Agenda.
  [rodfersou]

- Remove registro de subscribers durante migração de conteúdo;
  isso evita erros na importação dos compromissos de uma agenda.
  [hvelarde]

- Remove dependência no five.grok da declaração de subscribers.
  [hvelarde]

- Atualiza layout e funcionalidades do tile de Agenda.
  [rodfersou]

- Adiciona suporte para processamento de recursos estáticos usando o `webpack`_.
  [rodfersou]


