Die Webmeister haben ein neues Vereinsheim unter webmeisterei.com. Unsere alte Seite bleibt auf unbestimmte Zeit unter archiv.webmeisterei.com erreichbar.

Searching the ideal commenting product for Plone

We plan to add commenting infrastructure to a portal currently running on plone 3.3.x so I did some research and came up with a (probably uncomplete) list of candidates that will be described below in more detail.

  • iqpp.plone.commenting (aka EasyCommenting)
  • collective.disqus
  • quintagroup.plonecomments (aka qPloneComments)
  • collective.discussionplus
  • plone.app.discussion

Hope this will kick off a discussion with the product authors / people using them and will help others to decide which package (not) to use.

Summary

I did not look really deep into all of these packages (installed and tested plonecomments and plone.app.discussion) so please feel free to comment and put me into the right direction.

collective.disqus looks promising and has great advantages in the area of social web.
on the other side comments are not as well integrated into plone (eg search) and it’s hard or even impossible? to implement custom notifications or other additional features within your application.

quintagroup.plonecomments is a very mature product with lots of configuration options and notification features.
Editing of comments is possible (maybe there should be a way to turn this evil? feature off).
Comments are compatible with standard plone comments (right?) so they might be migrateable to the new commenting system for plone 4.x (plone.app.discussion).

collective.discussionplus peps up plone’s standard discussion items with workflow while keeping them migrateable to plone.app.discussion later. it’s more leight-weight than plonecomments with the downside of no notifications and less configuration options.

plone.app.discussion is currently in alpha state but offers basic configuration options and a moderation view for batch managing comments. Its much more leightweight than standard plone comment types (plonecomments and collective.dicsussionplus are using). I don’t know how many people are contrubuting currently and i hope timo is still motivated after his plip did not make it into plone 4.0.

I’m not sure if it’s a good idea to use plone.app.discussion in alpha1 state on production servers (comment of the authors welcome). But it seems by using collective.discussionplus or quintagroup.plonecomments (not sure about that) one can migrate all comments with the migration script of plone.app.discussion as soon as there is a more stable release or it even is shipped with plone 4.x

This is just a quick overview, more details for each package follow below. There is a project on coactivate about commenting in plone, too. Founded in 2007 it currently seems to be not very active or completely up to date (eg products like disqus missing) but there are reviews of some other commenting products and a collection of commenting related usecases.

(more…)

Control production buildouts with supervisor

Yesterday i tried to integrate varnish into a plone3 buildout using plone.recipe.varnish.
This works like a charm. I added /bin/instance to rc.d and tried to do the same with varnish to make it start automatically.
When asking for a solution to stop varnish on #plone, wiggy and aclark suggested to use supervisor.

Aclark recently worte a blogpost about supervisor and asked for a way to make buildout generate the supervisord.conf and a paster template that includes supervisor.

Wiggy just checked in ZopeSkel2.0 with supervisor added to the plone_hosting template.

Since it’s added using zc.recipe.egg the supervisord.conf has to be created and modified manually and is not generated with bin/buildout.

This is what collective.recipe.supervisor does for you.

The following setup worked fine for me:

[varnish-build]
;find newer versions on http://varnish.projects.linpro.no/
recipe = plone.recipe.varnish:build
url = http://switch.dl.sourceforge.net/sourceforge/varnish/varnish-1.1.2.tar.gz

[varnish]
recipe = plone.recipe.varnish:instance
bind = *:6181
backends = 127.0.0.1:8180
cache-size = 512M
# foreground is needed for supervisor to control varnish correctly
mode = foreground

[supervisor]
#recipe = zc.recipe.egg
#eggs = supervisor
recipe = collective.recipe.supervisor

port = localhost:9001
user = admin
password = admin

programs =
    10 zope ${instance:location}/bin/runzope ${instance:location} true
    20 varnish  ${buildout:directory}/bin/varnish  true

Make sure you’re starting supervisor with root privileges.
Otherwhise varnish will be started but supervisor won’t recognice it’s running.

Now you just add supervisor to your default runlevels, instead of adding every service of your instance.:

cd /etc/init.d/
ln -s INSTANCE_HOME/bin/supervisord project-supervisord
ln -s INSTANCE_HOME/bin/supervisorctl project-supervisorctl
update-rc.d project-supervisord defaults

control the services using /etc/init.d/project-supervisorctl

shutdown supervisor and all started services: /etc/init.d/project-supervisorctl shutdown

Advanced sorting features for plone folders

Since plone2.5 we’ve got drag&drop support for sorting items in folder_contents view (as long as your content’s meta_type does not contain spaces ;-) .

However, drag an drop has the limitation that in a batched view (20 items per page), you can’t move the item on position 20 to 21. You can swith off batching in folder_contents view in recent versions, and there are also patches that enable drag&drop again (see plone3 user manual and issue 7202).

When handling a lot of items in a container, i can think of other useful options such as “move to top”, “move to bottom”, “move n items up/down” or even “sort alphabetically asc/desc”.

In 2006 i wrote a python script for making this (except of sorting) possible for a customer.
It has been ‘released’ in our public svn repository today and I hope this will make other people’s live easier, too:

https://svn.webmeisterei.com/repos/public/plone-tools/moveObjToPos/trunk/

I’m thinking of a more polished version as a small plone package (maybe even with i18n) and adding support for sorting items alphabetically.

Does anybody know if there are already products available that do the same thing?

Are there plans that plone will support a feature like “show items alphabetically sorted” or “ordered reversed” in a folder’s views?