Metadata-Version: 2.4
Name: eea.banner
Version: 1.8
Summary: volto-banner backend support
Home-page: https://github.com/eea/eea.banner
Author: European Environment Agency: IDM2 A-Team
Author-email: eea-edw-a-team-alerts@googlegroups.com
License: GPL version 2
Keywords: EEA Add-ons Plone Zope
Classifier: Environment :: Web Environment
Classifier: Framework :: Plone
Classifier: Framework :: Plone :: Addon
Classifier: Framework :: Plone :: 5.2
Classifier: Framework :: Plone :: 6.0
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Operating System :: OS Independent
Classifier: License :: OSI Approved :: GNU General Public License v2 (GPLv2)
Description-Content-Type: text/x-rst
Requires-Dist: setuptools
Provides-Extra: test
Requires-Dist: plone.app.testing; extra == "test"
Dynamic: author
Dynamic: author-email
Dynamic: classifier
Dynamic: description
Dynamic: description-content-type
Dynamic: home-page
Dynamic: keywords
Dynamic: license
Dynamic: provides-extra
Dynamic: requires-dist
Dynamic: summary

==========================
eea.banner
==========================
.. image:: https://ci.eionet.europa.eu/buildStatus/icon?job=eea/eea.banner/develop
  :target: https://ci.eionet.europa.eu/job/eea/job/eea.banner/job/develop/display/redirect
  :alt: Develop
.. image:: https://ci.eionet.europa.eu/buildStatus/icon?job=eea/eea.banner/master
  :target: https://ci.eionet.europa.eu/job/eea/job/eea.banner/job/master/display/redirect
  :alt: Master

The eea.banner is a Plone add-on

.. contents::


Main features
=============

1. Easy to install/uninstall via Site Setup > Add-ons
2.
3.

Install
=======

* Add eea.banner to your eggs section in your buildout and
  re-run buildout::

    [buildout]
    eggs +=
      eea.banner

* You can download a sample buildout from:

  - https://github.com/eea/eea.banner/tree/master/buildouts/plone4
  - https://github.com/eea/eea.banner/tree/master/buildouts/plone5

* Or via docker::

    $ docker run --rm -p 8080:8080 -e ADDONS="eea.banner" plone

* Install *eea.banner* within Site Setup > Add-ons


Buildout installation
=====================

- `Plone 4+ <https://github.com/eea/eea.banner/tree/master/buildouts/plone4>`_
- `Plone 5+ <https://github.com/eea/eea.banner/tree/master/buildouts/plone5>`_


Source code
===========

- `Plone 4+ on github <https://github.com/eea/eea.banner>`_
- `Plone 5+ on github <https://github.com/eea/eea.banner>`_


Eggs repository
===============

- https://pypi.python.org/pypi/eea.banner
- http://eggrepo.eea.europa.eu/simple


Plone versions
==============
It has been developed and tested for Plone 4 and 5. See buildouts section above.


How to contribute
=================
See the `contribution guidelines (CONTRIBUTING.md) <https://github.com/eea/eea.banner/blob/master/CONTRIBUTING.md>`_.

Copyright and license
=====================

eea.banner (the Original Code) is free software; you can
redistribute it and/or modify it under the terms of the
GNU General Public License as published by the Free Software Foundation;
either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
for more details.

You should have received a copy of the GNU General Public License along
with this program; if not, write to the Free Software Foundation, Inc., 59
Temple Place, Suite 330, Boston, MA 02111-1307 USA.

The Initial Owner of the Original Code is European Environment Agency (EEA).
Portions created by Eau de Web are Copyright (C) 2009 by
European Environment Agency. All Rights Reserved.


Funding
=======

EEA_ - European Environment Agency (EU)

.. _EEA: https://www.eea.europa.eu/
.. _`EEA Web Systems Training`: http://www.youtube.com/user/eeacms/videos?view=1

Secret Scanning
===============

This repository uses the Betterleaks GitHub Action to scan the current
repository content on every push and pull request. The scan uses the rules in
``.gitleaks.toml`` and uploads a ``betterleaks-report`` artifact when a finding
is detected.

If the optional SMTP secrets are configured, failed scans also send an email to
the last commit committer. The workflow expects these repository or
organization secrets:

- ``SMTP_URL``
- ``SMTP_PORT`` (optional, defaults to ``25``)
- ``SMTP_EMAIL``
- ``SMTP_PASSWORD`` (optional if the SMTP server does not require authentication)

Port ``465`` is sent with direct TLS; other ports use the default SMTP
handshake. The email includes a short finding summary from the redacted
Betterleaks report, including the redacted matched line from each finding.

There are three common outcomes:

1. Everything is OK. The ``Betterleaks / Scan for secrets`` check is green and
   no action is needed. Regular references to runtime values are OK, for example::

     token_from_cookie = request.cookies.get("auth_token")

2. A real secret was found. The check is red and the workflow log asks you to
   download the ``betterleaks-report`` artifact. Open the artifact from the
   GitHub Actions run and check the reported file, line and rule. Remove the
   committed value, move it to the proper secret store, and rotate it if it was
   exposed. A report entry looks like this::

     {
       "RuleID": "secret-literal-assignment",
       "File": "src/config.py",
       "StartLine": 12,
       "Secret": "[REDACTED]"
     }

3. The finding is a false positive. Keep the value only if it is clearly not
   sensitive, such as a test fixture, placeholder, or public example. Add
   ``betterleaks:allow`` on the same line and include a short explanation in the
   pull request::

     test_password = "admin"  #betterleaks:allow

Do not add ``betterleaks:allow`` to real credentials.

Changelog
=========

1.8 - (2026-07-13)
---------------------------
* Change: fix: SonarQube report - refs #305404
  [avoinea]

1.7 - (2026-04-14)
---------------------------
* Change: Add unit tests for isTrue function
  [avoinea]

1.6 - (2026-04-14)
---------------------------
* Change: Add unit tests for isTrue function
  [avoinea]

1.5 - (2025-11-18)
---------------------------
* Change: Replace Python linting to ruff
  [mihaidobrescu1111 = refs #286821]
* Change: Add plone6 tests
  [mihaidobrescu1111 = refs #293593]

1.4 - (2022-08-29)
---------------------------
* Change: Changed how eea.banner gets STATIC/DYNAMIC env vars
  [iulianpetchesi #153089]

1.3 - (2022-02-17)
---------------------------
* Change: Fix api when addon not installed
  [razvanMiu]

1.2 - (2022-02-16)
---------------------------
* Change: Banner can be enabled from env
  [razvanMiu]

1.1 - (2022-02-16)
---------------------------
* Change: Check if dynamic_banner_enabled before getting rancher state.
  [razvanMiu]

1.0 - (2022-02-14)
---------------------------
* Change: [Feature #142078] Volto banner enhancements [razvanMiu]

1.0 - (2022-02-14)
-----------------------

* Initial release.
  [eea]
