Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/collective/collective.geotransform
Graceful E-mail Obfuscation for Plone
https://github.com/collective/collective.geotransform
Last synced: 2 months ago
JSON representation
Graceful E-mail Obfuscation for Plone
- Host: GitHub
- URL: https://github.com/collective/collective.geotransform
- Owner: collective
- Created: 2014-10-03T12:07:21.000Z (over 10 years ago)
- Default Branch: master
- Last Pushed: 2023-11-02T21:45:55.000Z (about 1 year ago)
- Last Synced: 2024-11-02T18:41:29.819Z (2 months ago)
- Language: Python
- Size: 141 KB
- Stars: 2
- Watchers: 117
- Forks: 2
- Open Issues: 2
-
Metadata Files:
- Readme: README.rst
Awesome Lists containing this project
- awesome-plone - collective.geotransform - Graceful E-mail Obfuscation for Plone. (Security)
README
Introduction
============.. image:: https://travis-ci.org/collective/collective.geotransform.svg?branch=master
:target: https://travis-ci.org/github/collective/collective.geotransformGEO stands for "Gracefully E-mail Obfuscation". This package implements the solution exposed in this post of List Apart web site authored by Roel Van Gils:
http://www.alistapart.com/articles/gracefulemailobfuscation/
collective.geotransform uses plone.transformchain to transform the response output from Zope before it reaches your browser. It searches for all "mailto:" occurences inside the response and transform them into encoded harmless links.
It also searches for plain email addresses (without links) inside the response and transform them into encrypted spans.
This codification is done via a simple base64 encoding, but enough to fool a spam robot.This is the form of the encoded mailto link:
While this is the form of the encoded span for plain email address:
dmljdG9yLmZlcm5hbmRlejJAdXBjbmV0LmVz
On the browser side, the encoded links and spans are decoded to their original form by using a Javascript that restores them to normal "mailto:" links and decrypted plain text emails.
Authenticated responses are NOT affected by this transform. Only anonymous responses are modified.
Compatibility
=============The versions 3.x (build from the master-branch) are compatible with Plone 6 / Python 3 only.
Other branches / versions support old Plone versions :
- Plone 5: versions 2.x
- Plone 4: versions 1.xTODO
====
* Accessibility form and validators