{ "info": { "author": "Steve McMahon", "author_email": "steve@dcn.org", "bugtrack_url": null, "classifiers": [ "Environment :: Web Environment", "Framework :: Plone", "Framework :: Plone :: 5.0", "License :: OSI Approved :: GNU General Public License v2 (GPLv2)", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2.7" ], "description": "==============================================================================\ncollective.ambidexterity\n==============================================================================\n\ncollective.ambidexterity provides through-the-web editing of views, defaults, validators and vocabularies for Dexterity content types.\n\nDocumentation: http://collectiveambidexterity.readthedocs.io\n\nStatus of the package\n---------------------\n\nThe package currently only works in Plone 5.\n\nInstallation\n------------\n\nAdd `collective.ambidexterity` to the `eggs` list in your Plone 5 buildout.\nRun buildout.\n\nUse the add/remove addons option in site setup to activate the package for a particular Plone site.\n\nQuick operation\n---------------\n\nLook for the `Ambidexterity` option near the end of site setup.\nThis will open the Ambidexterity editor.\n\nYou should be able to add view templates for all Dexterity content types.\nView templates are standard Plone page templates using TAL for dynamic content.\n\nDefault, validator and vocabulary scripts may be added for all Dexterity content types that you have created through-the-web.\nYou may not add default, validator or vocabulary scripts for content types that have been set up via Python packages.\n(Exception: if the content-type's fields are definedd in a `model source` attribute of the FTI, you may add Ambidexterity scripts.)\n\nDefault, validator and vocabulary scripts are much like the Scripts (Python) that may be added via the Zope Management Interface.\nThey will execute in a Restricted Python environment with the privileges of the logged-in user.\nLimited imports are available.\n\nRestricted Python provides a safety net for programmers who don't know the details of the Zope/Plone security model.\nIf you are running up against the limitations of Restricted Python, you should consider migrating your Ambidexterity code to a Python package.\nIt 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.\nOnly highly trusted users should be allowed to use the Ambidexterity editor.\nIt is by default restricted to site managers.\n\nCautions\n--------\n\nThis package marks the `re`, `datetime` and `time` modules as safe for use in RestrictedPython.\nThat will affect all PythonScripts.\n\nTo do\n-----\n\nTest coverage: pretty good for the nuts and bolts.\nThe user interface is currently completely untested.\nIf you're up-to-date on robot testing, your assistance would be appreciated.\n\ni18n: Undeveloped.\n\nAccessibility: Undeveloped.\n\nContribute\n----------\n\n- Issue Tracker: https://github.com/collective/collective.ambidexterity/issues\n- Source Code: https://github.com/collective/collective.ambidexterity\n\nSupport\n-------\n\nPlone community forums: https://community.plone.org/\n\n\nLicense\n-------\n\nThe project is licensed under the GPLv2.\n\n\nContributors\n============\n\n- Steve McMahon, steve@dcn.org\n\n\nChangelog\n=========\n\n\n1.0 2017-12-03\n--------------\n\n- With no bug reports or pull requests in nearly two months, we're leaving beta.\n\n\n1.0 (2017-12-03)\n----------------\n\n- Pushing buttons in the editor would cause the field selection to be lost. Fixed.\n [smcmahon]\n\n\n1.0b4 (2017-10-10)\n------------------\n\n- Add tutorial. Elaborate 'Nuts and Bolts'. Add to readthedocs.org.\n [smcmahon]\n\n- Allow RestrictedPython access to datetime.timedelta type.\n [smcmahon]\n\n\n- 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().\n [smcmahon]\n\n\n1.0b3 (2017-10-03)\n------------------\n\n- Added no-cache headers to all AJAX responses.\n [smcmahon]\n\n- Fixed an error in a jQuery selector that would cause an editor error loading content-type information. Bug introduced in b2. Fixed.\n [smcmahon]\n\n\n1.0b2 (2017-10-02)\n------------------\n\n- The editor would sometimes fail to list any content types. Fixed.\n [smcmahon]\n\n- Most operations would not work on sites that didn't have an id of 'Plone'. Fixed.\n Thanks, Wayne Glover.\n [smcmahon]\n\n\n1.0b1 (2017-09-27)\n------------------\n\n- Initial release.\n [smcmahon]", "description_content_type": null, "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://pypi.python.org/pypi/collective.ambidexterity", "keywords": "Python Plone", "license": "GPL version 2", "maintainer": "", "maintainer_email": "", "name": "collective.ambidexterity", "package_url": "https://pypi.org/project/collective.ambidexterity/", "platform": "", "project_url": "https://pypi.org/project/collective.ambidexterity/", "project_urls": { "Homepage": "https://pypi.python.org/pypi/collective.ambidexterity" }, "release_url": "https://pypi.org/project/collective.ambidexterity/1.0/", "requires_dist": null, "requires_python": "", "summary": "TTW support for Dexterity", "version": "1.0" }, "last_serial": 4851589, "releases": { "1.0": [ { "comment_text": "", "digests": { "md5": "ac85e1db5ed496ceb3bae502aa298e65", "sha256": "cb974ec8b202a4872c82ccb85229a78b77204c059bdca26c3fceecc25bd1c780" }, "downloads": -1, "filename": "collective.ambidexterity-1.0.tar.gz", "has_sig": false, "md5_digest": "ac85e1db5ed496ceb3bae502aa298e65", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 666430, "upload_time": "2017-12-03T21:55:34", "url": "https://files.pythonhosted.org/packages/67/49/4dcd29a994e7956a5b077e6d52c1d420501b7f0647499dd260d762a0a45a/collective.ambidexterity-1.0.tar.gz" } ], "1.0b1": [ { "comment_text": "", "digests": { "md5": "bf4297267c333bf90795269e98c4217b", "sha256": "1cc9caf6b0f4e1d91936ee7525dafe14b5f82e480f46cf6d3669efa4b73fa29b" }, "downloads": -1, "filename": "collective.ambidexterity-1.0b1.tar.gz", "has_sig": false, "md5_digest": "bf4297267c333bf90795269e98c4217b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 38456, "upload_time": "2017-09-27T22:02:17", "url": "https://files.pythonhosted.org/packages/bc/b0/47317d033cd4aaf07333e15613c94b045f3ba42e5617899df32e5fc83a4c/collective.ambidexterity-1.0b1.tar.gz" } ], "1.0b2": [ { "comment_text": "", "digests": { "md5": "e8c287b4cb39df4ee314e58d184b9ae1", "sha256": "6dbe5aa164eaacf462db02e50180fc3fdffdee750280a8f46a44036ea14d9b6c" }, "downloads": -1, "filename": "collective.ambidexterity-1.0b2.tar.gz", "has_sig": false, "md5_digest": "e8c287b4cb39df4ee314e58d184b9ae1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 38475, "upload_time": "2017-10-02T22:19:49", "url": "https://files.pythonhosted.org/packages/e3/d2/87c34ec41b21c733a2049c65818d3a68fd6d800417d2e67d97bae1f21934/collective.ambidexterity-1.0b2.tar.gz" } ], "1.0b3": [ { "comment_text": "", "digests": { "md5": "79260c819c9c59a512371e1361144748", "sha256": "eb3469dd7d09bd829264d703c130a748258f6b60d87e712adbdfb10699c9ead8" }, "downloads": -1, "filename": "collective.ambidexterity-1.0b3.tar.gz", "has_sig": false, "md5_digest": "79260c819c9c59a512371e1361144748", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 38866, "upload_time": "2017-10-03T21:09:59", "url": "https://files.pythonhosted.org/packages/5a/cd/4b3ee66ccadd85578e6b196dc0d252087e5d3dc4db612997f9aa3f5041bf/collective.ambidexterity-1.0b3.tar.gz" } ], "1.0b4": [ { "comment_text": "", "digests": { "md5": "78005e0ec303ac706f4b43ac84165c3e", "sha256": "3fb1dae122590ae1e458b40ce545f41fd659fb2b1e38161af0e08e8f63312bc2" }, "downloads": -1, "filename": "collective.ambidexterity-1.0b4.tar.gz", "has_sig": false, "md5_digest": "78005e0ec303ac706f4b43ac84165c3e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 663883, "upload_time": "2017-10-10T17:29:14", "url": "https://files.pythonhosted.org/packages/85/cf/778cec2fecc51454075b2f81831ca96422a36883bc43884d2317a39cdbd2/collective.ambidexterity-1.0b4.tar.gz" } ], "1.0b5": [ { "comment_text": "", "digests": { "md5": "b21da96d6cfcd416e3f84dfb79eb61ca", "sha256": "3c32bc8ffcde6d049b387ee8fa2b789e9677ccef3f7d4683a6606640afdf183a" }, "downloads": -1, "filename": "collective.ambidexterity-1.0b5.tar.gz", "has_sig": false, "md5_digest": "b21da96d6cfcd416e3f84dfb79eb61ca", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 663987, "upload_time": "2017-10-10T21:25:34", "url": "https://files.pythonhosted.org/packages/fd/33/1708308cbf951079ed204f627ae878f0ddc841c2eca212e3e5b32eeff4b7/collective.ambidexterity-1.0b5.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "ac85e1db5ed496ceb3bae502aa298e65", "sha256": "cb974ec8b202a4872c82ccb85229a78b77204c059bdca26c3fceecc25bd1c780" }, "downloads": -1, "filename": "collective.ambidexterity-1.0.tar.gz", "has_sig": false, "md5_digest": "ac85e1db5ed496ceb3bae502aa298e65", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 666430, "upload_time": "2017-12-03T21:55:34", "url": "https://files.pythonhosted.org/packages/67/49/4dcd29a994e7956a5b077e6d52c1d420501b7f0647499dd260d762a0a45a/collective.ambidexterity-1.0.tar.gz" } ] }