<?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>littled.net &#187; plone</title>
	<atom:link href="http://www.littled.net/new/category/plone/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.littled.net/new</link>
	<description>David Little&#039;s home on the Web</description>
	<lastBuildDate>Mon, 02 Aug 2010 11:57:57 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>New Plone-specific blog</title>
		<link>http://www.littled.net/new/2010/01/23/new-plone-specific-blog/</link>
		<comments>http://www.littled.net/new/2010/01/23/new-plone-specific-blog/#comments</comments>
		<pubDate>Sat, 23 Jan 2010 09:51:31 +0000</pubDate>
		<dc:creator>David</dc:creator>
				<category><![CDATA[plone]]></category>

		<guid isPermaLink="false">http://www.littled.net/new/2010/01/23/new-plone-specific-blog/</guid>
		<description><![CDATA[
&#8220;Sorry, there seems to be an error&#8221; is my new Plone-specific blog. Well, there&#8217;s not much new about it &#8212; at the moment it&#8217;s mainly made up of archival posts taken from this site.
The name is taken from the message I seem to get the most when I&#8217;m creating new Plone sites.
Posts will concentrate on [...]]]></description>
			<content:encoded><![CDATA[<p id="top" />
<p>&#8220;<a href="http://sorryerror.posterous.com">Sorry, there seems to be an error</a>&#8221; is my new Plone-specific blog. Well, there&#8217;s not much new about it &#8212; at the moment it&#8217;s mainly made up of archival posts taken from this site.</p>
<p>The name is taken from the message I seem to get the most when I&#8217;m creating new Plone sites.</p>
<p>Posts will concentrate on Plone theming, integration and any other random Plone-related stuff I stumble across.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.littled.net/new/2010/01/23/new-plone-specific-blog/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Interesting stuff I&#8217;ve learned at the Plone Conference 2009 (days 	1-2)</title>
		<link>http://www.littled.net/new/2009/10/29/interesting-stuff-ive-learned-at-the-plone-conference-2009-days-1-2/</link>
		<comments>http://www.littled.net/new/2009/10/29/interesting-stuff-ive-learned-at-the-plone-conference-2009-days-1-2/#comments</comments>
		<pubDate>Thu, 29 Oct 2009 17:43:11 +0000</pubDate>
		<dc:creator>David</dc:creator>
				<category><![CDATA[UI]]></category>
		<category><![CDATA[blog-post]]></category>
		<category><![CDATA[plone]]></category>
		<category><![CDATA[usability]]></category>

		<guid isPermaLink="false">http://www.littled.net/new/2009/10/29/interesting-stuff-ive-learned-at-the-plone-conference-2009-days-1-2/</guid>
		<description><![CDATA[There&#8217;s been lots of interesting stuff going on at this year&#8217;s Plone conference, but what&#8217;s really excited me are the user interface and general front-end developments taking place, particularly the Dexterity / Deco editing user interfaces and a sensible approach to site theming that doesn&#8217;t make your brain melt.
It&#8217;s great that there have been so [...]]]></description>
			<content:encoded><![CDATA[<p id="top" />There&#8217;s been lots of interesting stuff going on at this year&#8217;s Plone conference, but what&#8217;s really excited me are the user interface and general front-end developments taking place, particularly the Dexterity / Deco editing user interfaces and a sensible approach to site theming that doesn&#8217;t make your brain melt.</p>
<p>It&#8217;s great that there have been so many sessions focusing on these things as it demonstrates how seriously this stuff is being taken in Plone. Designers and integrators certainly have no need to feel like the poor cousins of the hardcore Python programmers and sys admins.</p>
<p>Here are some of the highlights so far:</p>
<p>1. <a href="http://tinymce.moxiecode.com/">TinyMCE</a></p>
<p>This is going to be used as the replacement page editor for Kupu in Plone 4 and upwards, although it&#8217;s also available to install as an add-on product in Plone 3.</p>
<p>This is great news as we&#8217;ve started to identify some serious usability problems with Kupu and we&#8217;re keen to get away from using the third-party commercial editor we&#8217;ve been using, Editon-Pro.</p>
<p>Whilst Editon-Pro is a great tool, its reliance on running in a Java Applet makes it slow, especially on older computers and it has no simple integration into the main Plone setup. The main advantage Kupu offered was its ability to insert links and images by browsing Plone&#8217;s folder structure and to allow users to upload images directly.</p>
<p>Unfortunately, Kupu doesn&#8217;t do many of the things that Editon-Pro does quite well, for instance handling page anchors. Kupu&#8217;s implementation of this is frankly baffling but TinyMCE&#8217;s handling is far closer to Editon-Pro&#8217;s and doesn&#8217;t require users to adjust their mental model (in Editon-Pro and TinyMCE users can insert their anchors; in Kupu users can only link to anchors which have been automatically created for them).</p>
</p>
<p>Another nice feature in TinyMCE is the paste from Word option which is something that Kupu doesn&#8217;t seem able to handle at all &#8212; Editon-Pro allowed users to &#8220;paste as plain text&#8221; which may have removed all formatting but at least it worked.</p>
<p>2. collective.xdv and Deliverance</p>
<p>Plone 3 theming is horrible. Just horrible I tell you! Luckily, this is a view shared with everyone else who has ever done Plone theming so two very similar new approaches have been developed: <a href="http://plone.org/documentation/manual/theming/referencemanual-all-pages">collective.xdv</a> and <a href="http://www.coactivate.org/projects/deliverance/introduction">Deliverance</a>.</p>
<p>These both use rules-based theming to map sections of a Plone page to a custom-built HTML/CSS theme. In essence this means you create your own design and just display the bits of Plone you want in it (i.e. the content). The mapping is done via a XML rules file which in collective.xdv&#8217;s case needs to be created manually. For Deliverance these rules can also be created manually but there is also an exciting new project called <a href="http://www.coactivate.org/projects/banjo/project-home">Banjo</a> (see what they did there?) which is a GUI for generating the rules and which also provides real-time previews of the integrated theme.</p>
<p>So, what&#8217;s the difference? In essence it appears that Deliverance is not just Plone-specific &#8212; it can be used to theme any third-party system whereas collective.xdv is completely Plone-specific. Xdv is a little easier to get started with as it&#8217;s integrated fully into the Plone architecture (as an add-on product) and Deliverance runs as a proxy on a webserver so has a higher installation / configuration overhead.</p>
<p>The good news is that they basically use the same syntax (statements such as &#8220;drop&#8221;, &#8220;replace&#8221; etc.) so it should be able to move easily between the two. However, xdv uses XPath to write rules (it&#8217;s XSLT-based) whereas Deliverance uses a slightly more designer-friendly CSS-style syntax.</p>
<p>3. <a href="http://code.google.com/p/plone-deco/">Deco</a></p>
<p>Slightly confusingly there seem to two elements to Plones 4 and 5 called Deco. One is the basic grid layout CSS used for the new default Plone theme which is similar to other CSS layout tools such as <a href="http://960.gs">960.gs</a>. The other part of the Deco framework is a drag-and-drop UI which allows content editors to add different elements to their pages without having to do complex things in the page editor.</p>
<p>From a UI perspective it&#8217;s a great approach, although the pessimist in me sees it could also be a recipe for some pretty horrendous looking pages.</p>
<p>4. <a href="http://flowplayer.org/tools/index.html">jQuery tools</a></p>
<p>More UI loveliness &#8211;jQuery tools is a lightweight jQuery plugin which provides a lot of the functionality supplied by jQuery UI at a fraction of the download overhead.</p>
<p>In Plone 4+ this is used to provide some great UI controls such as login boxes in stay-on-the-page overlays and dialogues, tabs and carousels.</p>
<p>5. <a href="http://plone.org/products/dexterity">Dexterity</a></p>
<p>Dexterity is a replacement for Archetypes (Plone&#8217;s framework for creating content types) which can be installed as an add-on product for Plone 3. Whilst statements like that might usually make me run in horror, this is great news for a simple reason: it provides through the web content type creation, just as it should be. Basically, another great UI improvement &#8212; no more fiddling around with lots of Python code to create your content types.</p>
<p>So, overall there&#8217;s some great stuff here &#8212; many of the annoyances faced by designers and integrators have been addressed and it&#8217;s great to see such an emphasis put on usability.</p>
<p style="font-size: 10px;"><a href="http://posterous.com">Posted via email</a> from <a href="http://littled.posterous.com/interesting-stuff-ive-learned-at-the-plone-co">What&#8217;s this for?</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.littled.net/new/2009/10/29/interesting-stuff-ive-learned-at-the-plone-conference-2009-days-1-2/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Review of Plone 3 Theming by Veda Williams</title>
		<link>http://www.littled.net/new/2009/09/27/review-of-plone-3-theming-by-veda-williams/</link>
		<comments>http://www.littled.net/new/2009/09/27/review-of-plone-3-theming-by-veda-williams/#comments</comments>
		<pubDate>Sun, 27 Sep 2009 17:13:11 +0000</pubDate>
		<dc:creator>David</dc:creator>
				<category><![CDATA[blog-post]]></category>
		<category><![CDATA[books]]></category>
		<category><![CDATA[plone]]></category>
		<category><![CDATA[plone-themes]]></category>
		<category><![CDATA[plone3]]></category>
		<category><![CDATA[reviews]]></category>
		<category><![CDATA[web design]]></category>
		<category><![CDATA[web development]]></category>

		<guid isPermaLink="false">http://www.littled.net/new/?p=367</guid>
		<description><![CDATA[
Veda Williams&#8216; Plone 3 Theming (Packt, 2009) [Amazon UK &#124; Amazon US &#124; Packt] is a useful reference for anyone involved in customising the look and feel of their Plone-based website. Used alongside the various online resources on the plone.org website, particularly the Plone Theme Reference,  it should ease  most of the pain that Plone [...]]]></description>
			<content:encoded><![CDATA[<p id="top" /><a href="http://www.packtpub.com/plone-3-theming-create-flexible-powerful-professional-templates/mid/190809x2p4v1?utm_source=littled.net/new&amp;utm_medium=affiliate&amp;utm_content=blog&amp;utm_campaign=mdb_000310"><img class="alignright" style="border: 0px initial initial;" title="Plone 3 theming" src="http://www.littled.net/new/wp-content/uploads/2009/09/Plone-3-theming.jpg" alt="Plone 3 theming" width="203" height="250" /></a></p>
<p><a href="http://www.404-notfound.com">Veda Williams</a>&#8216; Plone 3 Theming (Packt, 2009) [<a href="http://www.amazon.co.uk/Plone-3-Theming-Veda-Williams/dp/1847193870/ref=sr_1_1?ie=UTF8&amp;s=books&amp;qid=1254067008&amp;sr=8-1">Amazon UK</a> | <a href="http://www.amazon.com/Plone-3-Theming-Veda-Williams/dp/1847193870/ref=sr_1_1?ie=UTF8&amp;s=books&amp;qid=1254067090&amp;sr=8-1">Amazon US</a> | <a href="http://www.packtpub.com/plone-3-theming-create-flexible-powerful-professional-templates/mid/190809x2p4v1?utm_source=littled.net%2Fnew&amp;utm_medium=affiliate&amp;utm_content=blog&amp;utm_campaign=mdb_000310">Packt</a>] is a useful reference for anyone involved in customising the look and feel of their Plone-based website. Used alongside the various online resources on the plone.org website, particularly the <a href="http://plone.org/documentation/manual/theme-reference">Plone Theme Reference</a>,  it should ease  most of the pain that Plone themers experience. Unfortunately (and this is not a criticism of the author), the book is let down by some poor copy-editing. It also contains a <a href="http://plone.org/documentation/faq/plone-3-theming-errata">number of errata</a>, which the author is gathering on the plone.org website.</p>
<p>The book is broken down into fifteen chapters, the most useful of which I found were chapters seven to twelve which deal with the day-to-day business of Plone theming.  These chapters cover customising viewlets and portlets, an overview of the Zope templating language ( ZPT), the creation and installation of a Plone theme, template changes, custom page views and theming tips. Although I&#8217;ve done a fair amount of Plone theming, I still find it quite esoteric and complex so it&#8217;s certainly very useful to have these chapters to refer back to.</p>
<p>Chapter fifteen, written by <a href="http://limi.net">Alex Limi</a>, gives an overview of the future of Plone theming using products such as <a href="http://pypi.python.org/pypi/collective.xdv">collective.xdv</a> and Deliverance. These seem an ultimately saner way to proceed and should allow non-Plone specialists to theme a site without getting too bogged down in Plone specifics. <a href="http://plone.org/documentation/manual/theming/referencemanual-all-pages">This article is also freely available on the Plone website</a> where it will be updated as the project develops.</p>
<p>I did wonder if the second chapter was really necessary &#8212; this provides an overview of the main graphic design, browser and text editing tools. I imagine that most web designers and developers already know about these and the complete beginner would be encouraged to to stay away from Plone until they are a little more experienced.</p>
<p>That aside, the only real complaint I have about the book is the quality of the copy-editing. I think the text would in places benefit from a little slimming down or rephrasing. I occasionally struggled with some of the explanations , although it must be borne in mind that Plone 3 theming is complex so is by its very nature difficult to explain in simple terms. Some other examples: it&#8217;s probably not necessary to have sentences like, &#8220;now what, you ask?&#8221; in a tutorial book and I&#8217;m not sure why there is a lengthy code sample from Plone 2 on pages 129-30 which is really only produced to show how things were done the &#8220;old way&#8221;.</p>
<p>Anyone who has been involved in Plone theming will know how hard Veda Williams has worked on it: in addition to this book, she coordinated the <a href="http://www.coactivate.org/projects/ootb-plone-themes/project-home">Out of the Box Plone Themes</a> project. For her work I&#8217;m sure she has the gratitude of every Plone themer. Hopefully subsequent editions of the book will address the editorial issues and errata.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.littled.net/new/2009/09/27/review-of-plone-3-theming-by-veda-williams/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Fancy helping with plonetheme.hamnavoe?</title>
		<link>http://www.littled.net/new/2009/04/10/fancy-helping-with-plonethemehamnavoe/</link>
		<comments>http://www.littled.net/new/2009/04/10/fancy-helping-with-plonethemehamnavoe/#comments</comments>
		<pubDate>Fri, 10 Apr 2009 11:07:19 +0000</pubDate>
		<dc:creator>David</dc:creator>
				<category><![CDATA[UI]]></category>
		<category><![CDATA[blog-post]]></category>
		<category><![CDATA[plone]]></category>
		<category><![CDATA[plone-themes]]></category>
		<category><![CDATA[plone3]]></category>
		<category><![CDATA[web design]]></category>

		<guid isPermaLink="false">http://www.littled.net/new/?p=181</guid>
		<description><![CDATA[Hamnavoe is one of my contributions to the Out of the Box Plone Themes project and has had almost 500 downloads since its release last October.
I&#8217;ve been meaning to do some minor fixes (mainly CSS) on it for a while now but am too bogged down with other things to be able to give it [...]]]></description>
			<content:encoded><![CDATA[<p id="top" /><a href="/hamnavoe/">Hamnavoe</a> is one of my contributions to the <a href="http://www.openplans.org/projects/ootb-plone-themes/summary">Out of the Box Plone Themes</a> project and has had almost 500 downloads since its release last October.</p>
<p>I&#8217;ve been meaning to do some <a href="http://plone.org/products/hamnavoe/issues">minor fixes (mainly CSS)</a> on it for a while now but am too bogged down with other things to be able to give it any time.</p>
<p>So &#8230; this could be where you come in. If you&#8217;re a budding Plone themer and would like to have a poke around with an existing Plone 3 theme before starting on your own, then this could be an opportunity for you to help out. It&#8217;s for the community (i.e. it&#8217;s not my own private project!), so the reward would really just be in doing it (and getting your name in the documentation obviously).</p>
<p>Ok, so don&#8217;t all rush at once. But, seriously, if you&#8217;re interested, drop me an email at my Gmail address: d.little1971 (at gmail.com) or send me a Tweet: <a href="http://twitter.com/djlittle">@djlittle</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.littled.net/new/2009/04/10/fancy-helping-with-plonethemehamnavoe/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Plone theming: some minor annoyances and victories</title>
		<link>http://www.littled.net/new/2009/01/17/plone-theming-some-minor-annoyances-and-victories/</link>
		<comments>http://www.littled.net/new/2009/01/17/plone-theming-some-minor-annoyances-and-victories/#comments</comments>
		<pubDate>Sat, 17 Jan 2009 09:34:33 +0000</pubDate>
		<dc:creator>David</dc:creator>
				<category><![CDATA[blog-post]]></category>
		<category><![CDATA[plone]]></category>
		<category><![CDATA[plone-themes]]></category>
		<category><![CDATA[plone3]]></category>
		<category><![CDATA[web design]]></category>
		<category><![CDATA[web development]]></category>

		<guid isPermaLink="false">http://www.littled.net/new/?p=112</guid>
		<description><![CDATA[I&#8217;ve started work in earnest on theming a Plone 3 site this week and have come up against some minor annoyances. But, this was balanced out by some of the cool things I learned too.
Portlets.xml
One of the great things about generic setup is that you can configure your site through the web and then export [...]]]></description>
			<content:encoded><![CDATA[<p id="top" />I&#8217;ve started work in earnest on theming a Plone 3 site this week and have come up against some minor annoyances. But, this was balanced out by some of the cool things I learned too.</p>
<p><strong>Portlets.xml</strong></p>
<p>One of the great things about generic setup is that you can configure your site through the web and then export your settings as a series of xml files to your filesystem theme product. However, configuring my portlets and then exporting the resulting portlets.xml file caused some problems when re-installing the product.</p>
<p>I&#8217;d customised my navigation following the steps outlined in the article <a href="http://transcyberia.info/archives/39-customizing-navigation-in-Plone3.html">Customising navigation in Plone 3</a>. This was fine. But when I re-installed my theme product containing an exported portlets.xml file I got a &#8220;ConstraintNotSatisfied&#8221; error. I didn&#8217;t get very far with finding a solution to this on Google, but by trial and error found out that this disappeared if I removed the following from the &lt;assignment name=&#8221;navigation&#8221; &#8230;/&gt; directive:</p>
<div>&lt;property name=&#8221;name&#8221; /&gt;</div>
<div>&lt;property name=&#8221;bottomlevel&#8221;/&gt;</div>
<div>&lt;property name=&#8221;root&#8221; /&gt;</div>
<p>Secondly, default portlets (login, news, recent etc.) I&#8217;d removed via &#8220;manage portlets&#8221; weren&#8217;t reflected in my portlets.xml file so I had to enter this manually into my portlets.xml file:</p>
<div>&lt;assignment remove=&#8221;true&#8221; name=&#8221;login&#8221; category=&#8221;context&#8221; key=&#8221;/&#8221;</div>
<div><span style="white-space: pre;"> </span>manager=&#8221;plone.leftcolumn&#8221; type=&#8221;portlets.Login&#8221; /&gt;</div>
<div>&lt;assignment remove=&#8221;true&#8221; name=&#8221;calendar&#8221; category=&#8221;context&#8221; key=&#8221;/&#8221;</div>
<div><span style="white-space: pre;"> </span>manager=&#8221;plone.rightcolumn&#8221; type=&#8221;portlets.Calendar&#8221; /&gt;</div>
<div>&lt;assignment remove=&#8221;true&#8221; name=&#8221;events&#8221; category=&#8221;context&#8221; key=&#8221;/&#8221;</div>
<div><span style="white-space: pre;"> </span>manager=&#8221;plone.rightcolumn&#8221; type=&#8221;portlets.Events&#8221; /&gt;</div>
<div>&lt;assignment remove=&#8221;true&#8221; name=&#8221;news&#8221; category=&#8221;context&#8221; key=&#8221;/&#8221;</div>
<div><span style="white-space: pre;"> </span>manager=&#8221;plone.rightcolumn&#8221; type=&#8221;portlets.News&#8221; /&gt;</div>
<div>&lt;assignment remove=&#8221;true&#8221; name=&#8221;recent-items&#8221; category=&#8221;context&#8221; key=&#8221;/&#8221;</div>
<div><span style="white-space: pre;"> </span>manager=&#8221;plone.rightcolumn&#8221; type=&#8221;portlets.recent&#8221; /&gt;</div>
<div>&lt;assignment remove=&#8221;true&#8221; name=&#8221;review-list&#8221; category=&#8221;context&#8221; key=&#8221;/&#8221;</div>
<div><span style="white-space: pre;"> </span>manager=&#8221;plone.rightcolumn&#8221; type=&#8221;portlets.review&#8221; /&gt;</div>
<p><strong>CSS Registry</strong></p>
<p>To ensure that the order of CSS files in the CSS Registry was honoured I had to enable the auto grouping property (which didn&#8217;t exist in Plone 2.5.3). In the cssregistry.xml you can set this via:</p>
<p><span class="Apple-style-span" style="border-collapse: collapse; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; font-family: arial; color: #000000;">&lt;object name=&#8221;portal_css&#8221; meta_type=&#8221;Stylesheets Registry&#8221; autogroup=&#8221;True&#8221;&gt; &#8230; &lt;/object&gt;</span></p>
<p>The order seemed to go a bit haywire again if I enabled debug mode in the CSS Registry.</p>
<p><strong>More positive things</strong></p>
<p>It&#8217;s pretty straightforward to override viewlets for different content types. For instance, I didn&#8217;t want the breadcrumb trail to appear on my home page. In my browser/configure.zcml I simply added this directive:</p>
<div><span style="white-space: pre;"> </span>&lt;browser:viewlet</div>
<div><span style="white-space: pre;"> </span>name=&#8221;bbkschool.path_bar&#8221;</div>
<div><span style="white-space: pre;"> </span>manager=&#8221;plone.app.layout.viewlets.interfaces.IContentViews&#8221;</div>
<div><span style="white-space: pre;"> </span>for=&#8221;Products.BBKHomePage.interfaces.IBBKHomePage&#8221;</div>
<div><span style="white-space: pre;"> </span>layer=&#8221;.interfaces.IThemeSpecific&#8221;</div>
<div><span style="white-space: pre;"> </span>template=&#8221;nopath_bar.pt&#8221;</div>
<div><span style="white-space: pre;"> </span>permission=&#8221;zope2.View&#8221; /&gt;</div>
<p>In the &#8220;for&#8221; attribute I specify the interface of the content type I want this to apply to. The template, &#8220;nopath_bar.pt&#8221; is simply an empty template in my browser directory.</p>
<p>Lastly, <a href="http://plone.org/products/gloworm">Gloworm</a> came in really handy as did <a href="http://pypi.python.org/pypi/plone.reload">plone.reload</a> (although I found this a little unpredictable at times).</p>
]]></content:encoded>
			<wfw:commentRss>http://www.littled.net/new/2009/01/17/plone-theming-some-minor-annoyances-and-victories/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Migrating from Zope 2.6.4 to Plone 2.5.3</title>
		<link>http://www.littled.net/new/2008/12/11/migrating-from-zope-264-to-plone-253/</link>
		<comments>http://www.littled.net/new/2008/12/11/migrating-from-zope-264-to-plone-253/#comments</comments>
		<pubDate>Thu, 11 Dec 2008 17:21:24 +0000</pubDate>
		<dc:creator>David</dc:creator>
				<category><![CDATA[blog-post]]></category>
		<category><![CDATA[plone]]></category>
		<category><![CDATA[zope]]></category>

		<guid isPermaLink="false">http://www.littled.net/new/?p=100</guid>
		<description><![CDATA[I&#8217;m currently working on the roll-out of Plone 2.5.3 sites to replace our old Zope 2.6.4 / CMF 1.4.2 sites (Plone 3 to come for new sites in the new year hopefully). I can safely say that after doing this a few times, migrating from such an old version of plain Zope/CMF to a relatively [...]]]></description>
			<content:encoded><![CDATA[<p id="top" />I&#8217;m currently working on the roll-out of Plone 2.5.3 sites to replace our old Zope 2.6.4 / CMF 1.4.2 sites (Plone 3 to come for new sites in the new year hopefully). I can safely say that after doing this a few times, migrating from such an old version of plain Zope/CMF to a relatively new version of Plone is a complete nightmare.</p>
<p>The number of steps I&#8217;ve had to go through to get this working seems to get larger every time I do it. I&#8217;ve now got to stage where I&#8217;m not 100% sure if a step is needed or not, but what the hell I&#8217;m going to do it anyway. To be honest, I&#8217;d probably recite incantations backwards over a boiling cauldron if I thought that was going to help.</p>
<p>Here&#8217;s a summary of what I&#8217;ve had to do:</p>
<ul>
<li>Export the content from the old Zope 2.6.4 site</li>
<li>Create a new CMF site on a Zope 2.9.7 instance</li>
<li>Run through a load of Zope upgrade routines,  including fixing the catalog and adding a load of new folder actions</li>
<li>Export the folder(s) containing the content you want to migrate</li>
<li>Create a new Plone site somewhere on a trashable Zope 2.9.7 instance</li>
<li>Set this up with a theme / policy product</li>
<li>Import the converted Zope/CMF folders</li>
<li>Clear and rebuild the Plone site&#8217;s portal catalog</li>
<li>Go to portal_atct / Type migration and click on &#8220;Fix&#8221; under &#8220;Fix portal names&#8221;</li>
<li>Click on &#8220;Migrate&#8221; under &#8220;Type migration&#8221;</li>
<li>This should fix all old CMF documents, links and files</li>
<li>Now, I&#8217;ve got the fix the old CMF Folders. Oh, this is a good one. The only way to get these into the catalog is to go to portal_catalog and go to &#8220;Find Objects&#8221;. I leave the search fields blank to get absolutely everything into the catalog, even stuff that doesn&#8217;t really belong there</li>
<li>I create a migration script that handles the transfer of old &#8220;Portal Folders&#8221; to Plone Folders (not at the ATFolders stage yet). It also does some other minor migrations I need to do (e.g. converting ATDocuments to a custom content type)</li>
<li>Here&#8217;s another great one: now make sure your folders don&#8217;t contain any objects with the IDs of &#8220;language&#8221; or &#8220;subject&#8221;. This causes the migration to fail (I found this out by trial and mainly error). There may be some more IDs that cause this problem, I don&#8217;t know.  Rename any <em>verboten</em> IDs.</li>
<li>Go back to portal_catalog and do a Clear and Rebuild</li>
<li>Go back to portal_atct and re-rerun Migrate Types. My Plone Folders now become ATFolders (woohoo!). Oh hang on, they don&#8217;t have any titles!</li>
<li>I write a script that gives the folders the same titles as their index_html documents. Luckily, by and large the titles of folders and their index pages are the same, so this usually works.</li>
</ul>
<p>That&#8217;s it. Simple and pain-free it&#8217;s not. But it is a good advert for not leaving it so long between upgrading your Zope/Plone versions, or being a better programmer.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.littled.net/new/2008/12/11/migrating-from-zope-264-to-plone-253/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Plone and Flash Player 10: Opera&#8217;s revenge</title>
		<link>http://www.littled.net/new/2008/10/30/plone-and-flash-player-10-operas-revenge/</link>
		<comments>http://www.littled.net/new/2008/10/30/plone-and-flash-player-10-operas-revenge/#comments</comments>
		<pubDate>Thu, 30 Oct 2008 12:22:14 +0000</pubDate>
		<dc:creator>David</dc:creator>
				<category><![CDATA[blog-post]]></category>
		<category><![CDATA[flash]]></category>
		<category><![CDATA[plone]]></category>

		<guid isPermaLink="false">http://www.littled.net/new/?p=98</guid>
		<description><![CDATA[An addendum to the problems I was having with Plone and Flash Player 10. Looks like another problem occurs with Opera if you change the content disposition header to &#8220;inline&#8221;. Basically, screeds of nonsense displaying instead of the Flash movie or the fall-back image. I&#8217;m not sure how widespread this problem is and I&#8217;m not [...]]]></description>
			<content:encoded><![CDATA[<p id="top" />An addendum to the problems I was having with <a href="new/2008/10/17/plone-and-flash-player-10/">Plone and Flash Player 10</a>. Looks like another problem occurs with Opera if you change the content disposition header to &#8220;inline&#8221;. Basically, screeds of nonsense displaying instead of the Flash movie or the fall-back image. I&#8217;m not sure how widespread this problem is and I&#8217;m not prepared to do lots of testing but for the record this was happening with Plone 2.5.3 / SWFObject to embed the Flash file.  Various versions of Opera were tested &#8212; for instance I&#8217;m running version 9.10 on Windows.</p>
<p>I got round it with a bit of old-fashioned browser detection. Basically, Opera&#8217;s quite happy to have the content-disposition header left alone, so I needed a direct path to the Flash file for Opera and a path that took in my header setting script for everyone else:</p>
<pre>if (navigator.userAgent.indexOf('Opera')&gt;-1) {
   swfurl = '&amp;dtml-portal_url;/path/to/flash/myflash.swf' }  else {
   swfurl = '&amp;dtml-portal_url;/path/to/flash/showflash?flashvid=myflash.swf'
}
swfobject.embedSWF(swfurl, "my-dom-id", "435", "290", "9.0.115");
</pre>
<p>Not sure why Opera should behave differently to other browsers here.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.littled.net/new/2008/10/30/plone-and-flash-player-10-operas-revenge/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>My Plone themes: some stats</title>
		<link>http://www.littled.net/new/2008/10/19/my-plone-themes-some-stats/</link>
		<comments>http://www.littled.net/new/2008/10/19/my-plone-themes-some-stats/#comments</comments>
		<pubDate>Sun, 19 Oct 2008 13:16:20 +0000</pubDate>
		<dc:creator>David</dc:creator>
				<category><![CDATA[blog-post]]></category>
		<category><![CDATA[plone]]></category>
		<category><![CDATA[plone-themes]]></category>
		<category><![CDATA[plone3]]></category>

		<guid isPermaLink="false">http://www.littled.net/new/?p=97</guid>
		<description><![CDATA[Just been looking at the download statistics for my Plone themes via PyPi. I&#8217;m not sure how they should be read or if they&#8217;ve been skewed by me doing various tests, but they&#8217;re quite interesting:



Theme name
Egg downloads (.egg)
Source downloads (.tar.gz)


Hamnavoe
71
5


Simplicity
59
N/A


Andreas02
15
13



I recently updated the source download for Hamnavoe which explains the discrepancy between Egg and source [...]]]></description>
			<content:encoded><![CDATA[<p id="top" />Just been looking at the download statistics for my Plone themes via PyPi. I&#8217;m not sure how they should be read or if they&#8217;ve been skewed by me doing various tests, but they&#8217;re quite interesting:</p>
<table border="1">
<tbody>
<tr>
<th>Theme name</th>
<th>Egg downloads (.egg)</th>
<th>Source downloads (.tar.gz)</th>
</tr>
<tr>
<td><a href="http://pypi.python.org/pypi/plonetheme.hamnavoe">Hamnavoe</a></td>
<td>71</td>
<td>5</td>
</tr>
<tr>
<td><a href="http://pypi.python.org/pypi/plonetheme.simplicity">Simplicity</a></td>
<td>59</td>
<td>N/A</td>
</tr>
<tr>
<td><a href="http://pypi.python.org/pypi/plonetheme.andreas02">Andreas02</a></td>
<td>15</td>
<td>13</td>
</tr>
</tbody>
</table>
<p>I recently updated the source download for Hamnavoe which explains the discrepancy between Egg and source downloads for that theme, but in general it seems that the Eggs are the clear winners, which is due, I assume, to the themes being installed via buildout rather than direct download and installation via setup.py. Simplicity doesn&#8217;t even include a source download. I think this was to due to the fact that this was the first product I&#8217;d uploaded to PyPi and was having problems uploading it via setup.py from my Windows laptop, so I did the upload manually via the PyPi website.</p>
<p>I&#8217;m glad to see they&#8217;re being downloaded at all, and particularly pleased to see Hamnavoe on top as it&#8217;s my own design <img src='http://www.littled.net/new/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  As far as I know I can&#8217;t get these kind of stats for downloads via plone.org.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.littled.net/new/2008/10/19/my-plone-themes-some-stats/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Plone and Flash Player 10</title>
		<link>http://www.littled.net/new/2008/10/17/plone-and-flash-player-10/</link>
		<comments>http://www.littled.net/new/2008/10/17/plone-and-flash-player-10/#comments</comments>
		<pubDate>Fri, 17 Oct 2008 16:10:07 +0000</pubDate>
		<dc:creator>David</dc:creator>
				<category><![CDATA[UI]]></category>
		<category><![CDATA[blog-post]]></category>
		<category><![CDATA[flash]]></category>
		<category><![CDATA[non-plone]]></category>
		<category><![CDATA[plone]]></category>
		<category><![CDATA[web design]]></category>
		<category><![CDATA[web development]]></category>
		<category><![CDATA[zope]]></category>

		<guid isPermaLink="false">http://www.littled.net/new/?p=94</guid>
		<description><![CDATA[Another pyrrhic victory maybe, but something that has made me exceptionally happy this afternoon. Basically, yesterday I upgraded my version of Flash Player to version 10 only to find that the Flash files on our Plone-powered site no longer worked.
The lovely folks at SWFObject helped to identify why this was happening &#8212; nothing to do [...]]]></description>
			<content:encoded><![CDATA[<p id="top" />Another pyrrhic victory maybe, but something that has made me exceptionally happy this afternoon. Basically, yesterday I upgraded my version of Flash Player to version 10 only to find that the Flash files on our Plone-powered site no longer worked.</p>
<p>The lovely folks at <a href="http://code.google.com/p/swfobject/">SWFObject</a> helped to identify why this was happening &#8212; nothing to do with SWFObject at all but the fact that <a href="http://www.adobe.com/devnet/flashplayer/articles/fplayer10_security_changes.html">Flash Player 10 implements some new security &#8220;features&#8221;</a>. I managed to isolate it to the fact that Plone serves up ATFiles with the header, &#8220;Content-Disposition: attachment&#8221;. Flash Player 10 ignores files served up with this header, so you need to override this and set it to &#8220;Content-Disposition: inline;&#8221;.</p>
<p>I came up with this solution which may not be overly elegant but at least it works. I created a skin-level Python script that sets response headers before returning the file:</p>
<p>showflash.py</p>
<pre>request = container.REQUEST
RESPONSE =  request.RESPONSE
flashvid = request['flashvid']
cd = 'inline; filename=%s' %(context.id)
RESPONSE.setHeader('Content-Disposition', cd)
return context[flashvid]</pre>
<p>Then, when I embed the video with SWFObject I call it thus,</p>
<pre>&lt;script type="text/javascript"&gt;
   swfobject.embedSWF("&amp;dtml-portal_url;/path/to/flash/showflash?flashvid=myflash.swf", "my-dom-id", "435", "290", "9.0.115");
&lt;/script&gt;</pre>
<p>This may be better handled by a product like Plone4Artists Video but it certainly works as a fix for us.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.littled.net/new/2008/10/17/plone-and-flash-player-10/feed/</wfw:commentRss>
		<slash:comments>13</slash:comments>
		</item>
		<item>
		<title>Fame at last&#8230;</title>
		<link>http://www.littled.net/new/2008/10/15/fame-at-last/</link>
		<comments>http://www.littled.net/new/2008/10/15/fame-at-last/#comments</comments>
		<pubDate>Wed, 15 Oct 2008 16:22:13 +0000</pubDate>
		<dc:creator>David</dc:creator>
				<category><![CDATA[blog-post]]></category>
		<category><![CDATA[plone]]></category>
		<category><![CDATA[plone-themes]]></category>
		<category><![CDATA[plone3]]></category>

		<guid isPermaLink="false">http://www.littled.net/new/?p=93</guid>
		<description><![CDATA[Veda William&#8217;s presentation slides about the OOTB Theming project [PDF] from this year&#8217;s Plone conference in Washington have been posted to Openplans. I was pleased to see both Simplicity and Hamnavoe included in the screenshots at the end of the presentation. Woohoo!
]]></description>
			<content:encoded><![CDATA[<p id="top" /><a href="http://www.404-notfound.com/blog/">Veda William</a>&#8217;s presentation <a href="http://www.openplans.org/projects/ootb-plone-themes/project-home/ootb_presentation.pdf">slides about the OOTB Theming project</a> [PDF] from this year&#8217;s Plone conference in Washington have been posted to Openplans. I was pleased to see both Simplicity and Hamnavoe included in the screenshots at the end of the presentation. Woohoo!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.littled.net/new/2008/10/15/fame-at-last/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
