Welcome, guest | Sign In | My Account | Store | Cart

Notice! PyPM is being replaced with the ActiveState Platform, which enhances PyPM’s build and deploy capabilities. Create your free Platform account to download ActivePython or customize Python with the packages you require and get automatic updates.

Download
ActivePython
INSTALL>
pypm install collective.spaces

How to install collective.spaces

  1. Download and install ActivePython
  2. Open Command Prompt
  3. Type pypm install collective.spaces
 Python 2.7Python 3.2Python 3.3
Windows (32-bit)
1.0 Available View build log
Windows (64-bit)
1.0 Available View build log
Mac OS X (10.5+)
1.0 Available View build log
Linux (32-bit)
1.0 Available View build log
Linux (64-bit)
1.0 Available View build log
 
License
gpl
Lastest release
version 1.0 on May 23rd, 2012

Introduction

https://eresearch.jcu.edu.au/site-resources/spaces-logo.png

collective.spaces is a simple way of creating mini-sites within the Plone CMS, with each mini-site based on a fully-customisable template. This product deploys a light-weight Dexterity-based content type (called a Space) within Plone and provides various additions that would be useful in a self-managed, collaborative environment. For instance:

  • Ability for users to self-create Spaces
  • Each Space appears as a sub-site
  • Customisable logo per-Space
  • Ability for site administration to customise a template used for new Spaces

What this offers

  • Simple Dexterity-based content type
  • Web-based forms built using plone.app.z3cform and friends
  • Leverages existing Plone tech (such as authentication, INavigationRoot and Dexterity behaviours) on offer.
  • Other options (such as collective.lineage) provide unnecessary features or else introduce extra dependencies

Use Case (aka when-to-use-this)

  1. Desire to allow various groups of users to collaborate but without administrative overhead/intervention
  2. Users should be able to create new sub-sites at the Plone root, without the need for administrative intervention
  3. Each workspace should be able to be self-managed
  4. Each workspace can be allowed limited customisation
  5. Workspaces should be all contained within a single Plone site
  6. Desire for a template to be easily customisable, with arbitrary content attached within Plone.

Installation

Buildout

collective.spaces is compatible with recent version of Plone and is tested with Plone 4.2 and Dexterity 1.2.1. Add this egg to your Plone instance in your buildout like so -- it's highly recommended that you utilise a Known Good Set (KGS) for pinning versions of the form libraries and Dexterity:

[buildout]
extends =
    ...
    http://good-py.appspot.com/release/dexterity/1.2.1?plone=4.2b2

...

[instance]
...
eggs =
    collective.spaces

ZCML registration is not necessary as this egg includes a z3c.autoinclude entry point. Once you have added this to your buildout, re-run your ./bin/buildout script.

Activation within Plone
  • Once buildout has completed, restart your Plone instance.
  • Load and login to your Plone instance, and go to Add-ons under Site Setup.
  • Locate collective.spaces in the add-ons list and Activate it.
  • Once complete, notice that:
    • There is Create new Space in your personal tools menu
    • A Space Template exists at the root of your portal
    • Site Administrators and Managers can manually add Space content anywhere
Security defaults

By default:

  • All logged-in users have the ability to create new Spaces via the Create a new Space form (/@@create-space).
  • Only Site Administrators and Managers can manually create Spaces via the Add new menu. Regular users, including Contributor users, cannot do this.

To change these defaults, load the Manage Access ZMI page (for instance, http://localhost:8080/Plone/manage_access) and change the roles associated with the relevant collective.spaces permissions.

Suggestions

Whilst this product is opinionated regarding aspects like default security permissions, a configurator can use the rest of Plone's functionality to enhance Spaces (and reduce administration overhead). Some examples are:

Authentication
Enable user self-registration on Plone or enable another authentication mechanism to reduce administrative input needed (or both). Intertwining mechanisms like local authentication, LDAP, CAS, or Shibboleth can easily mean that users can self-manage collaboration with local and external users.
Navigation
If users are expected to be creating many Spaces, then the Plone portal tabs will quickly consume lots of space. To combat this, simply either turn off the Automatically generate tabs option in the Navigation settings control panel, or else de-select the Space content type from the Displayed content types option. If using this latter strategy, then consider how users will actually access their Space - hiding from navigation entirely likely means users need directly access their URL.
Email notification
A common situation may be where a site administrator wants to keep track of the Spaces being created. A Plone Content Rule is provided with this add-on to satisfy this use case. Using this Rule is completely optional -- it is installed but not enabled by default.

Collaboration

Source code is available within the collective GitHub at https://github.com/collective/collective.spaces for submission of issues, fixes, and improvements.

To Do

  • Tests for email notification content rule (when enabled)
  • Handle issues with displaying ID field - can we sanely present users the ability to change their Space ID?

Contributors

David Beitey (davidjb), Author

Changelog

1.0 (2012-03-26)
  • Provide email content rule for when Spaces are created. This is not enabled by default. [davidjb]
  • Providing decorator for elevated contributor access on the portal. [davidjb]
  • Added doctests for Space self-creation form. [davidjb]
  • Adding ability to set custom logo on Space and set image scale. [davidjb]
  • Added basic Space self-creation form. [davidjb]
  • Package created using zopeskel [davidjb]

Subscribe to package updates

Last updated May 23rd, 2012

Download Stats

Last month:1

What does the lock icon mean?

Builds marked with a lock icon are only available via PyPM to users with a current ActivePython Business Edition subscription.

Need custom builds or support?

ActivePython Enterprise Edition guarantees priority access to technical support, indemnification, expert consulting and quality-assured language builds.

Plan on re-distributing ActivePython?

Get re-distribution rights and eliminate legal risks with ActivePython OEM Edition.