{ "info": { "author": "JCU eResearch Centre", "author_email": "eresearch@jcu.edu.au", "bugtrack_url": null, "classifiers": [ "Programming Language :: Python" ], "description": ".. contents::\n\nIntroduction\n============\n\n.. image:: https://eresearch.jcu.edu.au/site-resources/spaces-logo.png\n :align: right\n\n.. image:: https://travis-ci.org/collective/collective.spaces.png?branch=master\n :target: https://travis-ci.org/collective/collective.spaces\n\n`collective.spaces` is a simple way of creating mini-sites within the Plone\nCMS, with each mini-site based on a fully-customisable template. \nThis product deploys a light-weight Dexterity-based content type\n(called a ``Space``) within Plone and provides various additions that would\nbe useful in a self-managed, collaborative environment. For instance:\n\n* Ability for users to self-create Spaces\n* Each Space appears as a sub-site\n* Customisable logo per-Space\n* Ability for site administration to customise a template used for new Spaces\n\nWhat this offers\n================\n\n* Simple Dexterity-based content type\n* Web-based forms built using ``plone.app.z3cform`` and friends\n* Leverages existing Plone tech (such as authentication, INavigationRoot and\n Dexterity behaviours)\n on offer.\n* Other options (such as ``collective.lineage``) provide unnecessary features \n or else introduce extra dependencies\n\nUse Case (aka when-to-use-this)\n===============================\n\n#. Desire to allow various groups of users to collaborate but without\n administrative overhead/intervention\n#. Users should be able to create new sub-sites at the Plone root, without\n the need for administrative intervention\n#. Each workspace should be able to be self-managed\n#. Each workspace can be allowed limited customisation\n#. Workspaces should be all contained within a single Plone site\n#. Desire for a template to be easily customisable, with arbitrary content\n attached within Plone.\n\nInstallation\n============\n\nBuildout\n--------\n\n``collective.spaces`` is compatible with recent version of Plone and is \ntested with Plone 4.2 and Dexterity 1.2.1. Add this egg to your Plone\ninstance in your buildout like so -- it's highly recommended that\nyou utilise a Known Good Set (KGS) for pinning versions of the form\nlibraries and Dexterity::\n\n [buildout]\n extends =\n ...\n http://good-py.appspot.com/release/dexterity/1.2.1?plone=4.2b2\n\n ...\n \n [instance]\n ...\n eggs =\n collective.spaces\n\nZCML registration is not necessary as this egg includes a \n``z3c.autoinclude`` entry point. Once you have added this to your buildout,\nre-run your ``./bin/buildout`` script.\n\nActivation within Plone\n-----------------------\n\n* Once buildout has completed, restart your Plone instance.\n* Load and login to your Plone instance, and go to `Add-ons` under `Site Setup`.\n* Locate ``collective.spaces`` in the add-ons list and `Activate` it.\n* Once complete, notice that:\n\n * There is `Create new Space` in your personal tools menu\n * A `Space Template` exists at the root of your portal\n * Site Administrators and Managers can manually add `Space` content anywhere\n\nSecurity defaults\n-----------------\n\nBy default:\n\n* All logged-in users (``Authenticated``) have the ability to create new Spaces \n via the `Create a new Space` form (``/@@create-space``). \n* Only Site Administrators and Managers can manually create Spaces via the\n `Add new` menu. Regular users, including `Contributor` users, cannot do this.\n\nTo change these defaults, load the `Manage Access` ZMI page \n(for instance, ``http://localhost:8080/Plone/manage_access``) and change the\nroles associated with the relevant ``collective.spaces`` permissions. You can\nalso use a GenericSetup profile in an extension product to modify these \npermissions (``rolemap.xml`` in your profile).\n\nSuggestions\n===========\n\nWhilst this product is opinionated regarding aspects like default security\npermissions, a configurator can use the rest of Plone's functionality\nto enhance Spaces (and reduce administration overhead). Some examples are:\n\n*Authentication*\n Enable user self-registration on Plone or enable\n another authentication mechanism to reduce administrative input needed\n (or both). Intertwining mechanisms like local authentication, LDAP, CAS, or \n Shibboleth can easily mean that users can self-manage collaboration with \n local and external users.\n\n*Navigation*\n If users are expected to be creating many Spaces, then the Plone portal\n tabs will quickly consume lots of space. To combat this, simply either turn\n off the ``Automatically generate tabs`` option in the ``Navigation\n settings`` control panel, or else de-select the ``Space`` content type from\n the ``Displayed content types`` option. If using this latter strategy, then\n consider how users will actually access their Space - hiding from\n navigation entirely likely means users need directly access their URL.\n\n*Email notification*\n A common situation may be where a site administrator\n wants to keep track of the Spaces being created. A Plone Content Rule is\n provided with this add-on to satisfy this use case. Using this Rule is \n completely optional -- it is installed but not enabled by default.\n\nCollaboration\n=============\n\nSource code is available within the `collective GitHub` at \nhttps://github.com/collective/collective.spaces for submission of issues, \nfixes, and improvements.\n\nIncompatibilties\n================\n\n* Products.CMFPlacefulWorkflow is currently incompatible due to policy\n traversal leading to an infinite loop when performing actions like adding\n or modifying comments on content. This issue is present with version 1.5.9\n and caused by this loop: Products/CMFPlacefulWorkflow/adapter.py (line 71)\n\nTo Do\n=====\n\n* Tests for email notification content rule (when enabled)\n* Handle issues with displaying ID field - can we sanely present users\n the ability to change their Space ID? In standard Plone machinery, being\n able to rename content in a context depends upon having the ``Copy or Move``\n permission on the folder context. \n\n\nContributors\n============\n\nDavid Beitey (davidjb), Author\n\nChangelog\n=========\n\n1.1 (2014-02-04)\n----------------\n\n- Fix type conversion preventing Unicode characters being entered when\n creating a Space.\n [davidjb]\n- Workaround folder type constraint inheritance issue by pretending Space\n content is like Archetypes. This handles `Plone issue \n #13792 `_.\n [davidjb]\n- Enable folder constraints on the Space content type via Dexterity behaviour.\n [davidjb]\n- Ensure we depend on plone.app.contentmenu for correct ZCML loading.\n [davidjb]\n- Ensure create space action is only visible to those with the correct\n permission.\n [davidjb]\n- Just create an empty space if the template doesn't exist.\n [davidjb]\n- Adding logging for exceptions on space creation.\n [davidjb]\n- Ensure ``plone.app.dexerity [grok]`` is installed upon installation of this\n package.\n [davidjb]\n- Updating URL in setup.py to be the correct GitHub address.\n [davidjb]\n\n\n1.0 (2012-03-26)\n----------------\n\n- Provide email content rule for when Spaces are created. This is not\n enabled by default.\n [davidjb]\n- Providing decorator for elevated contributor access on the portal.\n [davidjb]\n- Added doctests for Space self-creation form.\n [davidjb]\n- Adding ability to set custom logo on Space and set image scale.\n [davidjb]\n- Added basic Space self-creation form.\n [davidjb]\n- Package created using zopeskel\n [davidjb]", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://github.com/collective/collective.spaces", "keywords": "plone site space mini-site navigationroot", "license": "gpl", "maintainer": null, "maintainer_email": null, "name": "collective.spaces", "package_url": "https://pypi.org/project/collective.spaces/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/collective.spaces/", "project_urls": { "Download": "UNKNOWN", "Homepage": "http://github.com/collective/collective.spaces" }, "release_url": "https://pypi.org/project/collective.spaces/1.1/", "requires_dist": null, "requires_python": null, "summary": "Simple collaboration spaces for Plone", "version": "1.1" }, "last_serial": 989961, "releases": { "1.0": [ { "comment_text": "", "digests": { "md5": "266afdbf272febd86980434a68492648", "sha256": "0df4e02cb770e4ba289d32211ff796c1b92b6e406b7ea18079495af99a023765" }, "downloads": -1, "filename": "collective.spaces-1.0.zip", "has_sig": false, "md5_digest": "266afdbf272febd86980434a68492648", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 54291, "upload_time": "2012-03-26T04:32:29", "url": "https://files.pythonhosted.org/packages/44/06/f25f7f83e3a04e8ce7502163b3aa73b2c0afad8d55808f2fc538d1e0b2e5/collective.spaces-1.0.zip" } ], "1.1": [ { "comment_text": "", "digests": { "md5": "1038558a792a9f445844c971b2eb8526", "sha256": "a497d7528b110afc2171b93535e46e66180a9f2991dffedd5e278f55455915fb" }, "downloads": -1, "filename": "collective.spaces-1.1.zip", "has_sig": false, "md5_digest": "1038558a792a9f445844c971b2eb8526", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 55988, "upload_time": "2014-02-04T02:38:35", "url": "https://files.pythonhosted.org/packages/7d/4f/8ddea3ae9f2acf1b929f55ec893c9157f3eaadb2df63977ca43289a66aaf/collective.spaces-1.1.zip" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "1038558a792a9f445844c971b2eb8526", "sha256": "a497d7528b110afc2171b93535e46e66180a9f2991dffedd5e278f55455915fb" }, "downloads": -1, "filename": "collective.spaces-1.1.zip", "has_sig": false, "md5_digest": "1038558a792a9f445844c971b2eb8526", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 55988, "upload_time": "2014-02-04T02:38:35", "url": "https://files.pythonhosted.org/packages/7d/4f/8ddea3ae9f2acf1b929f55ec893c9157f3eaadb2df63977ca43289a66aaf/collective.spaces-1.1.zip" } ] }