Skip to main content

TTW support for Dexterity

Project description

collective.ambidexterity provides through-the-web editing of views, defaults, validators and vocabularies for Dexterity content types.

Documentation: http://collectiveambidexterity.readthedocs.io

Status of the package

collective.ambidexterity is in early beta. It is not yet recommended for use in production sites.

The package currently only works in Plone 5.

Installation

Add collective.ambidexterity to the eggs list in your Plone 5 buildout. Run buildout.

Use the add/remove addons option in site setup to activate the package for a particular Plone site.

Quick operation

Look for the Ambidexterity option near the end of site setup. This will open the Ambidexterity editor.

You should be able to add view templates for all Dexterity content types. View templates are standard Plone page templates using TAL for dynamic content.

Default, validator and vocabulary scripts may be added for all Dexterity content types that you have created through-the-web. You may not add default, validator or vocabulary scripts for content types that have been set up via Python packages. (Exception: if the content-type’s fields are definedd in a model source attribute of the FTI, you may add Ambidexterity scripts.)

Default, validator and vocabulary scripts are much like the Scripts (Python) that may be added via the Zope Management Interface. They will execute in a Restricted Python environment with the privileges of the logged-in user. Limited imports are available.

Restricted Python provides a safety net for programmers who don’t know the details of the Zope/Plone security model. If you are running up against the limitations of Restricted Python, you should consider migrating your Ambidexterity code to a Python package. It is important that you understand that the safety net is not perfect: it is not adequate to protect your site from coding by an untrusted user. Only highly trusted users should be allowed to use the Ambidexterity editor. It is by default restricted to site managers.

Cautions

This package marks the re, datetime and time modules as safe for use in RestrictedPython. That will affect all PythonScripts.

To do

Test coverage: pretty good for the nuts and bolts. The user interface is currently completely untested. If you’re up-to-date on robot testing, your assistance would be appreciated.

i18n: Undeveloped.

Accessibility: Undeveloped.

Contribute

Support

Plone community forums: https://community.plone.org/

License

The project is licensed under the GPLv2.

Contributors

Changelog

1.0b4 (2017-10-10)

  • Add tutorial. Elaborate ‘Nuts and Bolts’. Add to readthedocs.org. [smcmahon]

  • Allow RestrictedPython access to datetime.timedelta type. [smcmahon]

  • Make sure RestrictedPython allows datetime.date and datetime.datetime class types and not just instance types. This is so we can get at date.today() and datetime.now(). [smcmahon]

1.0b3 (2017-10-03)

  • Added no-cache headers to all AJAX responses. [smcmahon]

  • Fixed an error in a jQuery selector that would cause an editor error loading content-type information. Bug introduced in b2. Fixed. [smcmahon]

1.0b2 (2017-10-02)

  • The editor would sometimes fail to list any content types. Fixed. [smcmahon]

  • Most operations would not work on sites that didn’t have an id of ‘Plone’. Fixed. Thanks, Wayne Glover. [smcmahon]

1.0b1 (2017-09-27)

  • Initial release. [smcmahon]

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

collective.ambidexterity-1.0b4.tar.gz (663.9 kB view details)

Uploaded Source

File details

Details for the file collective.ambidexterity-1.0b4.tar.gz.

File metadata

File hashes

Hashes for collective.ambidexterity-1.0b4.tar.gz
Algorithm Hash digest
SHA256 3fb1dae122590ae1e458b40ce545f41fd659fb2b1e38161af0e08e8f63312bc2
MD5 78005e0ec303ac706f4b43ac84165c3e
BLAKE2b-256 85cf778cec2fecc51454075b2f81831ca96422a36883bc43884d2317a39cdbd2

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page