Plumi is a video-sharing web-app built using Plone. It extends Plone with various features, customisations and add-on products to create what we think an average video-sharing site might need. However every site is different, and we also model this largely on the engagemedia.org use-case.
How can we make Plumi more useful to other video-sharing projects, by optimising its feature-set? We think we should split it into these four types of features:
- Plumi Default - these features and configurations are those we think the average video community might want to use, tending towards the minimal feature-set
- EngageMedia.org specific - these are stripped out of the Plumi package, and put into EM specific code, as we think only EM will really find them useful
- Plumi Options - these are optional extras, which will be factored out as configurable add-on functionalities, using a control panel
- Standalone Products - these should be elements split out from Plumi that make sense to include as a different egg/product, such as Callouts, however they can be included in the package by default
In addition to this, we may include notes in the Plumi Manual about tips for extra add-ons or common extensions, such as Captchas.
Let's start splitting features and customisations into these three basic areas. This list is a to-do, not a survey of current availability.
Plumi is not just Plone plus video. It is a suite of products & customisations that would be useful to run a video-sharing community. It includes things like locking-down Plone features that would be confusing to those who aren't using the site as an intranet, or organisational CMS, but as a place to share their videos.
However, all the elements that go into Plumi that might be useful as independent components, should be factored out. This gives the Plone community the greatest flexibility in using the code that is written as part of the Plumi project.
Also, many of these extended customisations and products should be made easy to remove from Plumi, if they are not wanted. They can be included in a configuration panel, for easy removal. We can also expect that this will prevent those who are upgrading their sites to the new Plumi release will not "break" the functionality they have developed that contradicts these customisations, or if so, they can easily reverse it.
EngageMedia on the other hand, should include every customisation that we think will be useful for our users, as part of additional code such as em.skin and em.taxonomies which is added to Plumi.
Thoughts at the moment also include renaming Plumi Content to Plumi Video - which could be installed separately. Plumi App would include both Plumi Video and Plumi Callouts (which would be factored out as a separate product).
- EngageMedia theme
- EngageMedia taxonomies - genres, topics & country list specific to EM (ticket #405)
- Ticket #411 - Re-insert history button on plumi video view template - This is a theme modification as per this documentation
- Captcha - refer ticket #511 and #540. Not even sure it fits here as it probably should at best just be mentioned in the book. Plumi should not promote one version of captcha over another or restrict users to one captcha. It is a simple matter to install captcha for any admin.
- Override Plone Configurations (ENABLE BY DEFAULT) - group together these things
- Ticket #153 - Producer Donations - Add PayPal? Account to Profile, List on Video View and Author Pages - Not sure whether again this should be plugged into Plumi at all. There are many payment systems, and many conflicting thoughts over PayPal? as well. Locking PayPal? into Plumi does not seem like a good thing to do, this may be better as it's own standalone plugin that could be extended with other options. THIS SHOULD BE IN CONFLIGLET AS "REMOVE PAYPAL DONATIONS FOR MEMBERS" - i.e. this should be activated by default
Standalone Products - Installed by Default but Removable