<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Webmeisterei GmbH - Büro für Netzfragen &#187; Plone</title>
	<atom:link href="http://archiv.webmeisterei.com/category/plone/feed/" rel="self" type="application/rss+xml" />
	<link>http://archiv.webmeisterei.com</link>
	<description>Webmeisterei,  Plone, Housing, Hosting, Premium, Portalentwicklung, Programmierung</description>
	<lastBuildDate>Sat, 25 Dec 2010 12:40:11 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.4</generator>
		<item>
		<title>Searching the ideal commenting product for Plone</title>
		<link>http://archiv.webmeisterei.com/friessnegger/2009/12/03/commenting-in-plone/</link>
		<comments>http://archiv.webmeisterei.com/friessnegger/2009/12/03/commenting-in-plone/#comments</comments>
		<pubDate>Thu, 03 Dec 2009 10:23:57 +0000</pubDate>
		<dc:creator>fRiSi</dc:creator>
				<category><![CDATA[Plone]]></category>
		<category><![CDATA[commenting]]></category>

		<guid isPermaLink="false">http://www.webmeisterei.com/?p=456</guid>
		<description><![CDATA[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 [...]]]></description>
			<content:encoded><![CDATA[<p>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.</p>
<ul>
<li>iqpp.plone.commenting (aka EasyCommenting)</li>
<li>collective.disqus</li>
<li>quintagroup.plonecomments (aka qPloneComments)</li>
<li>collective.discussionplus</li>
<li>plone.app.discussion</li>
</ul>
<p>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.</p>
<h2>Summary</h2>
<p>I did not look really deep into <strong>all</strong> of these packages (installed and tested plonecomments and plone.app.discussion) so please feel free to comment and put me into the right direction.</p>
<p><strong>collective.disqus</strong> looks promising and has great advantages in the area of social web.<br />
on the other side comments are not as well integrated into plone (eg search) and it&#8217;s hard or even impossible? to implement custom notifications or other additional features within your application.</p>
<p><strong>quintagroup.plonecomments</strong> is a very mature product with lots of configuration options and notification features.<br />
Editing of comments is possible (maybe there should be a way to turn this evil? feature off).<br />
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).</p>
<p><strong>collective.discussionplus</strong> peps up plone&#8217;s standard discussion items with workflow while keeping them migrateable to plone.app.discussion later. it&#8217;s more leight-weight than plonecomments with the downside of no notifications and less configuration options.</p>
<p><strong>plone.app.discussion</strong> 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&#8217;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.</p>
<p>I&#8217;m not sure if it&#8217;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</p>
<p>This is just a quick overview, more details for each package follow below. There is a <a href="http://www.coactivate.org/projects/plonecommenting/">project on coactivate about commenting in plone</a>, 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.</p>
<p><span id="more-456"></span></p>
<h2>iqpp.plone.commenting</h2>
<p>Seems unmaintained (has not been updated on pypi since october 2007), so i did not look into that further.</p>
<p>Martin mentioned in his <a href="http://www.martinaspeli.net/articles/commenting-in-plone">blogpost on commenting</a> that its comparable to PloneComments and he used it for a big deployment.</p>
<h2>collective.disqus</h2>
<p>homepage: <a href="http://plone.org/products/collective.disqus">http://plone.org/products/collective.disqus</a><br />
demo: <a href="http://lichota.pl/blog/plone-discussion-mechanism-replaced-by-collective.disqus">http://lichota.pl/blog/</a></p>
<p>Uses the webservice <a href="http://disqus.com/">disqus.com/</a> so your comments are stored &#8220;somewhere in the cloud&#8221;.<br />
There is an export for comments though, so you&#8217;re able to migrate back to plone comments with some coding.</p>
<p>Seems that you can only set one language in the account settings, so it might won&#8217;t work for multilingual sites.</p>
<p>Users can comment using their twitter, facebook, openid,&#8230; accounts and choose whether or not to get email notifications on new comments / replies. Comments can be posted on Social Networks with might generate more interest and therefore visits to your site.</p>
<p>Comments are centrally managed using disqus.com.</p>
<p>Since comments are not stored in your plonesite they are not searchable by default.</p>
<h2>quintagroup.plonecomments</h2>
<p>actively developed (latest release 4.1.1 nov, 2009) and already there for many years.</p>
<p>has it&#8217;s own api but pretends to internally use plone&#8217;s standard commenting types so migrating to plone.app.discussion might work.</p>
<p>captcha support via quintagroup.plonecaptchas (did not test that)</p>
<p>Configlet for configuring settings (eg activate moderation, or enable anonymous comments) and managing pending comments .</p>
<p>Users with role DiscussionManager can publish comments via publish button below the comments, and can access the configlet and review list (/prefs_recent_comments_form) too.</p>
<p>Notifications for new pending comments are only sent to one single address configured in the control panel.<br />
After Managers have approved the comment users get a notification that their content has been commented and commenter that his comment got published. Commenters get notifications for replies to their comment too (these notifications can be turned on/off in configlet)</p>
<p>Logged in or respectively anonymous users can report spam comments. A configuration option enables an &#8220;abuse&#8221; button that opens a form users can submit with an optional comment why they consider this comment spam. An email is sent to the notification address.</p>
<h2>collective.discussionplus</h2>
<p>Martin&#8217;s interim solution to enable moderation of standard plone comments.</p>
<p>Uses DCWorkflow, adds indexes to catalog to search for comments of a certain author or the number of comments for a content item. Events are fired for comment creation and removal, so on can hook up email notifications on workflow transitions and/or these events.</p>
<p>In his <a href="http://www.martinaspeli.net/articles/commenting-in-plone">blogpost on commenting in plone</a> Martin outlined the reasons for not using EasyComment or PloneComments and writing discussionplus.</p>
<p>According to the readme it&#8217;s likely not to work with plone4.<br />
However comments should be migrateable to plone.app.discussion since they&#8217;re standard plone comments.</p>
<h2>plone.app.discussion</h2>
<p>Google summer of code project <a href="http://www.martinaspeli.net/articles/commenting-in-plone">outlined and mentored by martin</a> and mainly developed by timo.</p>
<p>Aimed to be the new default commenting solution for plone 4.0 but the <a href="http://dev.plone.org/plone/ticket/9288">plip9288</a> has been rejected in october since the framework team considered it not finished enought.</p>
<p>project page: <a href="http://plone.org/products/plone.app.discussion/">http://plone.org/products/plone.app.discussion/</a><br />
tracker: <a href="http://www.pivotaltracker.com/projects/15135">http://www.pivotaltracker.com/projects/15135</a><br />
online demo: <a href="http://gsoc.timostollenwerk.net/">http://gsoc.timostollenwerk.net/</a></p>
<p>For my research I used version 1.0a2 (rev31840) in the <a href="http://svn.plone.org/svn/plone/plone.app.discussion/buildouts/dev">development buildout</a></p>
<p>Configlet to configure if anon comments are allowed, which captcha to use, whether or not to show the commenter&#8217;s image and a toggle to switch commenting off globally.</p>
<p>Moderation is configured in the types control panel by setting the workflow of the Comment type.</p>
<p>Captcha support via plone.formwidget.(re)captcha</p>
<p>Migration script for importing existing plone comments is in place (did not test it)</p>
<p>Moderating comments is done using a site action (@@moderate-comments)</p>
<p>Email notifications are not yet available, but planned for 2010 (according to the tracker)</p>
]]></content:encoded>
			<wfw:commentRss>http://archiv.webmeisterei.com/friessnegger/2009/12/03/commenting-in-plone/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Control production buildouts with supervisor</title>
		<link>http://archiv.webmeisterei.com/friessnegger/2008/06/03/control-production-buildouts-with-supervisor/</link>
		<comments>http://archiv.webmeisterei.com/friessnegger/2008/06/03/control-production-buildouts-with-supervisor/#comments</comments>
		<pubDate>Tue, 03 Jun 2008 10:54:27 +0000</pubDate>
		<dc:creator>fRiSi</dc:creator>
				<category><![CDATA[Plone]]></category>

		<guid isPermaLink="false">http://www.webmeisterei.com/friessnegger/2008/06/03/control-production-buildouts-with-supervisor/</guid>
		<description><![CDATA[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 [...]]]></description>
			<content:encoded><![CDATA[<p>Yesterday i tried to integrate varnish into a plone3 buildout using <tt class="docutils literal"><span class="pre">plone.recipe.varnish</span></tt>.<br />
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.<br />
When asking for a solution to stop varnish on #plone, wiggy and aclark suggested to use <a class="reference" href="http://supervisord.org/manual/">supervisor</a>.</p>
<p>Aclark recently worte a <a class="reference" href="http://www.aclark.net/Members/aclark/supervisor-rocks">blogpost about supervisor</a> and asked for a way to make buildout generate the supervisord.conf and a paster template that includes supervisor.</p>
<p>Wiggy just checked in <a class="reference" href="http://dev.plone.org/collective/browser/ZopeSkel/tags/2.0/zopeskel/templates/plone_hosting/etc/supervisord.conf_tmpl">ZopeSkel2.0</a> with supervisor added to the plone_hosting template.</p>
<p>Since it&#8217;s added using <tt class="docutils literal"><span class="pre">zc.recipe.egg</span></tt> the supervisord.conf has to be created and modified manually and is not generated with bin/buildout.</p>
<p>This is what <tt class="docutils literal"><span class="pre">collective.recipe.supervisor</span></tt> does for you.</p>
<p>The following setup worked fine for me:</p>
<pre class="literal-block">[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
</pre>
<p>Make sure you&#8217;re starting supervisor with root privileges.<br />
Otherwhise varnish will be started but supervisor won&#8217;t recognice it&#8217;s running.</p>
<p>Now you just add supervisor to your default runlevels, instead of adding every service of your instance.:</p>
<pre class="literal-block">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
</pre>
<p>control the services using <tt class="docutils literal"><span class="pre">/etc/init.d/project-supervisorctl</span></tt></p>
<p>shutdown supervisor and all started services: <tt class="docutils literal"><span class="pre">/etc/init.d/project-supervisorctl</span> <span class="pre">shutdown</span></tt></p>
]]></content:encoded>
			<wfw:commentRss>http://archiv.webmeisterei.com/friessnegger/2008/06/03/control-production-buildouts-with-supervisor/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Advanced sorting features for plone folders</title>
		<link>http://archiv.webmeisterei.com/friessnegger/2008/05/29/advanced-sorting-features-for-plone-folders/</link>
		<comments>http://archiv.webmeisterei.com/friessnegger/2008/05/29/advanced-sorting-features-for-plone-folders/#comments</comments>
		<pubDate>Thu, 29 May 2008 10:28:41 +0000</pubDate>
		<dc:creator>fRiSi</dc:creator>
				<category><![CDATA[Plone]]></category>

		<guid isPermaLink="false">http://www.webmeisterei.com/friessnegger/2008/05/29/advanced-sorting-features-for-plone-folders/</guid>
		<description><![CDATA[Since plone2.5 we&#8217;ve got drag&#38;drop support for sorting items in folder_contents view (as long as your content&#8217;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&#8217;t move the item on position 20 to 21. You can swith off batching in [...]]]></description>
			<content:encoded><![CDATA[<p>Since plone2.5 we&#8217;ve got drag&amp;drop support for sorting items in folder_contents view (as long as your content&#8217;s meta_type <a class="reference" href="http://www.webmeisterei.com/friessnegger/2008/05/26/meta_types-containing-spaces-break-folder_contents-sorting/">does not contain spaces</a> <img src='http://archiv.webmeisterei.com/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> .</p>
<p>However, drag an drop has the limitation that in a batched view (20 items per page), you can&#8217;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&amp;drop again (see <a class="reference" href="http://plone.org/documentation/manual/plone-3-user-manual/managing-content/reordering-items">plone3 user manual</a> and <a class="reference" href="http://dev.plone.org/plone/ticket/7202">issue 7202</a>).</p>
<p>When handling <em>a lot of</em> items in a container, i can think of other useful options such as &#8220;move to top&#8221;, &#8220;move to bottom&#8221;, &#8220;move <em>n</em> items up/down&#8221; or even &#8220;sort alphabetically asc/desc&#8221;.</p>
<p>In 2006 i wrote a python script for making this (except of sorting) possible for a customer.<br />
It has been &#8216;released&#8217; in our public svn repository today and I hope this will make other people&#8217;s live easier, too:</p>
<p><a class="reference" href="https://svn.webmeisterei.com/repos/public/plone-tools/moveObjToPos/trunk/">https://svn.webmeisterei.com/repos/public/plone-tools/moveObjToPos/trunk/</a></p>
<p>I&#8217;m thinking of a more polished version as a small plone package (maybe even with i18n) and adding support for sorting items alphabetically.</p>
<p>Does anybody know if there are already products available that do the same thing?</p>
<p>Are there plans that plone will support a feature like &#8220;show items alphabetically sorted&#8221; or &#8220;ordered reversed&#8221; in a folder&#8217;s views?</p>
]]></content:encoded>
			<wfw:commentRss>http://archiv.webmeisterei.com/friessnegger/2008/05/29/advanced-sorting-features-for-plone-folders/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>meta_types containing spaces break folder_contents sorting</title>
		<link>http://archiv.webmeisterei.com/friessnegger/2008/05/26/meta_types-containing-spaces-break-folder_contents-sorting/</link>
		<comments>http://archiv.webmeisterei.com/friessnegger/2008/05/26/meta_types-containing-spaces-break-folder_contents-sorting/#comments</comments>
		<pubDate>Mon, 26 May 2008 15:06:20 +0000</pubDate>
		<dc:creator>fRiSi</dc:creator>
				<category><![CDATA[Plone]]></category>

		<guid isPermaLink="false">http://www.webmeisterei.com/friessnegger/2008/05/26/meta_types-containing-spaces-break-folder_contents-sorting/</guid>
		<description><![CDATA[If you experience problems with sorting/reordering items in folder_contents as i did recently this might save you from spending > 2 hrs with debugging. If your folder does contain custom or third party content types that have a space &#8221; &#8221; in their meta_type (see portal_type/ &#8216;Product meta type&#8217;) you most probably ran into the [...]]]></description>
			<content:encoded><![CDATA[<p>If you experience problems with sorting/reordering items in folder_contents as i did recently<br />
this might save you from spending > 2 hrs with debugging.</p>
<p>If your folder does contain custom or third party content types that have a space &#8221; &#8221; in their meta_type (see portal_type/<type> &#8216;Product meta type&#8217;) you most probably ran into the same problem:</p>
<p>If you defined the meta_type of your content type in <cite>profiles/default/types/My_Type.xml</cite> like that:</p>
<pre class="literal-block">&lt;object name="My Type"&gt;
  ...
  &lt;property name="content_meta_type"&gt;My Type&lt;/property&gt;
  ...
</pre>
<p>objects of your type will have &#8216;MyType&#8217; as meta_type:</p>
<pre class="literal-block">>>> _ = folder.invokeFactory('My Type', 'mytype')
>>> folder.mytype.meta_type
'MyType'
</pre>
<p>Products.Archetypes.OrderedBaseFolder.moveObjectsByDelta only takes CMF-Types into account.</p>
<p>This is done by using only those ids returned by <cite>getCMFObjectsSubsetIds</cite> which lists all meta_types registered in portal_types and compares them to the meta_type of the objects contained in the folder.</p>
<p>Since these differ for meta types containing spaces you&#8217;ll experience very strange behaviour when  reordering items in a folder containing some objects of type &#8216;My Type&#8217;.</p>
<div class="section">
<h2>Solution:</h2>
<p>In case you&#8217;re responsible for the product, simply change the GS profile for the portal type from <code>&lt;property name="content_meta_type"&gt;My Type&lt;/property&gt;</code> to <code>&lt;property name="content_meta_type"&gt;MyType&lt;/property&gt;</code> and reinstall the product.</p>
<p>In case you&#8217;re using a third party product you&#8217;re out of luck.<br />
This is why I filed a bug (<a href="https://dev.plone.org/plone/ticket/8161" class="reference">https://dev.plone.org/plone/ticket/8161</a>)</p>
]]></content:encoded>
			<wfw:commentRss>http://archiv.webmeisterei.com/friessnegger/2008/05/26/meta_types-containing-spaces-break-folder_contents-sorting/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>.installed.cfg can be evil</title>
		<link>http://archiv.webmeisterei.com/friessnegger/2008/04/14/installedcfg-can-be-evil/</link>
		<comments>http://archiv.webmeisterei.com/friessnegger/2008/04/14/installedcfg-can-be-evil/#comments</comments>
		<pubDate>Mon, 14 Apr 2008 08:19:02 +0000</pubDate>
		<dc:creator>fRiSi</dc:creator>
				<category><![CDATA[Plone]]></category>

		<guid isPermaLink="false">http://www.webmeisterei.com/friessnegger/2008/04/14/installedcfg-can-be-evil/</guid>
		<description><![CDATA[In case you experience strange VersionConflicts on your buildout, this might save you some time: Today i wanted to update a plone3.0 buildout to plone3.1-rc1, since i needed static portlets in a project and plone.portlet.static does not work on plone3.0 (see http://plone.org/documentation/how-to/creating-static-text-portlets-in-plone-3.0) I changed the version numbers in the plone recipe: [plone] #recipe = plone.recipe.plone&#62;=3.0,&#60;3.1dev [...]]]></description>
			<content:encoded><![CDATA[<p><img src='http://www.webmeisterei.com/wp-content/uploads/2008/04/rm-installed-cfg.png' alt='rm .installed.cfg' /></p>
<p>In case you experience strange <cite>VersionConflicts</cite> on your buildout, this might save you some time:</p>
<p>Today i wanted to update a <cite>plone3.0</cite> buildout to <cite>plone3.1-rc1</cite>,<br />
since i needed static portlets in a project and <cite>plone.portlet.static</cite> does not work on <cite>plone3.0</cite> (see <a class="reference" href="http://plone.org/documentation/how-to/creating-static-text-portlets-in-plone-3.0">http://plone.org/documentation/how-to/creating-static-text-portlets-in-plone-3.0</a>)</p>
<p>I changed the version numbers in the plone recipe:</p>
<pre class="literal-block">
[plone]
#recipe = plone.recipe.plone&gt;=3.0,&lt;3.1dev
recipe = plone.recipe.plone &gt;=3.1rc1, &lt; 3.2dev
</pre>
<p>Changing the version number in a <em>fresh</em> buildout worked out fine, but when running <tt class="docutils literal"><span class="pre">bin/buildout</span></tt> on my existing project i got a version conflict:</p>
<pre class="literal-block">

VersionConflict:
(plone.recipe.plone 3.1-rc1 (.../plone.recipe.plone-3.1_rc1-py2.4.egg), Requirement.parse('plone.recipe.plone&gt;=3.0,&lt;3.1dev'))
</pre>
<p>The root of all evli was <tt class="docutils literal"><span class="pre">.installed.cfg</span></tt> in my case. This file contains the dependend eggs and their versions.<br />
In a plone3.0 buildout you can find the following line in <tt class="docutils literal"><span class="pre">.installed.cfg</span></tt>:</p>
<pre class="literal-block">
recipe = plone.recipe.plone&gt;=3.0,&lt;3.1dev
</pre>
<div class="section">
<p><strong>Solution</strong></p>
<p>delete <tt class="docutils literal"><span class="pre">.installed.cfg</span></tt> and run your buildout again.<br/><br />
<br/><br />
Update: This is a <a href="https://bugs.launchpad.net/zc.buildout/+bug/163776">bug</a> and might be fixed soon.</p>
]]></content:encoded>
			<wfw:commentRss>http://archiv.webmeisterei.com/friessnegger/2008/04/14/installedcfg-can-be-evil/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

