<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">

    <title type="text">Journal</title>
    <subtitle type="text">Journal:</subtitle>
    <link rel="alternate" type="text/html" href="http://ee.nathanpitman.com/index.php" />
    <link rel="self" type="application/atom+xml" href="http://ee.nathanpitman.com/journal/atom/" />
    <updated>2009-01-02T10:04:26Z</updated>
    <rights>Copyright (c) 2009, Nathan Pitman</rights>
    <generator uri="http://expressionengine.com/" version="1.6.4">ExpressionEngine</generator>
    <id>tag:ee.nathanpitman.com,2009:01:01</id>


    <entry>
      <title>Whatever you do, don&#8217;t buy a Kia.</title>
      <link rel="alternate" type="text/html" href="http://ee.nathanpitman.com/site/kia-sedona-reliability/" />
      <id>tag:ee.nathanpitman.com,2009:index.php/2.405</id>
      <published>2009-01-01T22:44:19Z</published>
      <updated>2009-01-02T01:04:20Z</updated>
      <author>
            <name>Nathan Pitman</name>
            <email>hello@nathanpitman.com</email>
                  </author>

      <category term="Personal"
        scheme="http://ee.nathanpitman.com/site/C12/"
        label="Personal" />
      <category term="Chatter"
        scheme="http://ee.nathanpitman.com/site/C6/"
        label="Chatter" />
      <content type="html"><![CDATA[
        <p>15 months ago we purchased a brand spanking new <a href="http://www.kia.co.uk/sedonahome.asp">Kia Sedona</a> from our local dealership in Reading. Right from the day we took delivery of the car things have just not been right. Initially it was ill fitted and scratched dashboard panels but after a week we also noticed that there was an intermittent problem with the electric sliding doors.</p>

	<p>The electric doors simply failed to close correctly on regular occasions. This fault would manifest itself in a number of ways:</p>

<ol>
<li>On attempting to close the door from either the fob, handle or internal controls it would slide to a closed position and then open up fully immediately of it&#8217;s own accord. Sometimes it would take up to 18 attempts to get the door to close. So much for the convenience of an electric sliding door (one of the features that attracted us to the car in the first place).</li>
<li>On attempting to close the door (as above) it would close fully but then open by about 1 inch of it&#8217;s own accord some 5 or 6 seconds later. Giving you just enough time to get in the car and drive off with the children in the seats. The door then &#8216;flinging&#8217; fully open once in motion.</li>
</ol>

	<p>We reported the problems to the <a href="http://www.evanshalshaw.com/kia-cars.html">Evans Halshaw Kia</a> dealership and arranged for the vehicle to go back in for repair. The fit of the dashboard panels was rectified but the dealership claimed that they could not reproduce the problem with the doors yet for us it persisted.</p>

	<p>The car was booked in again, again returned without a solution and booked back in again and again and again&#8230; we even provided the dealership with video footage of the fault since we felt they simply did not beleive us.</p>

	<p>On one particular occasion we drove to the dealership to drop the car off and collect a courtesy vehicle with all 3 kids in tow only to discover that the courtesy car had no petrol and a faulty petrol cap, making it impossible for us to fill the vehicle.</p>

	<p>Again and again we were fobbed off by the <a href="http://www.evanshalshaw.com/kia-cars.html">Evans Halshaw Kia</a> dealership in Reading. We then discovered upon trying to book the car in one day that they had lost their franchise and that they would no longer be able to deal with the issues we had with the vehicle (Great!).</p>

	<p>It took us some time to find a new local dealership that could provide a courtesy car. <a href="http://www.kia.co.uk/westlondonkia/">West London Motor Group Kia</a> in High Wycombe in this case.</p>

	<p>We booked the car in with them to see if perhaps they could resolve the issues with the electric sliding doors. Initially we encountered the same problems, they were unable to reproduce the problem with the doors but did replace a number of parts. Another visit later and still no joy. By now as you can well imagine the situation was no longer in any way amusing. We were having to ferry our children about in a car which we simply no longer felt safe in and were well and truly fed up with the frequent visits to and from the dealership.</p>

	<p>We decided to contact Kia customer services in the vein hope that they might be able to sort things out for us and let us enjoy the car which we had paid good money for.</p>

	<p>After applying a fair degree of pressure we eventually convinced Kia customer services to provide us with a like for like replacement vehicle for a period of a week while they had our vehicle in to resolve the issues with the doors.</p>

	<p>Alas nothing with Kia is simple (or enjoyable)&#8230;</p>

	<p>On dropping our car of at the dealership we realised that the replacement vehicle that they had provided would not accommodate 3 children in car seats. We called Kia and informed them, they claimed that the rental company had contacted us to ask if the car was ok and I had confirmed that it would be fine (a complete lie). I requested that they provide us with a new rental car that would accommodate the children such that we could actually go out as a family in one car (not an unreasonable request when we have purchased a £20k family car from them). They claimed that they could not provide a suitable vehicle (not what I had been told when they promised a like for like replacement in the first place) so I suggested that I could find a suitable rental vehicle myself and they could reimburse us the cost of said vehicle.</p>

	<p>Whilst this seems like a reasonable suggestion and a logical solution which would leave them with a happy customer they initially refused to cover the costs. A couple of heated phone conversations later they <strong>finally</strong> did the right thing and agreed to pay for the rental vehicle that we had located. The rental firm that provided us with the unsuitable vehicle (via Kia) tried to sting us for damage to the rental car totaling £150 but that&#8217;s another story.</p>

	<p>By now I&#8217;ve spent a considerable amount of time and energy trying to resolve the issues with the car and have had to take time off work on numerous occasions to deliver the car to the dealership and collect it again. By perhaps what can only be described as a stroke of luck, after having the car for a full week, the dealership managed to fix the problems with the door. Ironically this was the result of following instructions from a technical bulletin that had been issued by Kia regarding the lot from which our car was born&#8230; something which we suggested that both dealerships investigate a number of times.</p>

	<p>You might think that this is the end of the story, alas it is not. Since collecting the car we have discovered that during icy weather the rear sliding doors now often refuse to open at all (again an intermittent issue) and the air conditioning has stopped working completely so we have the car booked in with the garage for &#8216;another&#8217; visit on the 2nd of January.</p>

	<p>Today (1st of January) whilst out with the whole family in the car I realised that the engine was not responding as it should, the car was loosing power on hills and struggling to maintain motorway speed. We managed to get off the motorway (not a great place to stop with 3 small children) and pulled up. With a burning smell and smoke emanating from the engine bay we decided not to proceed any further. Thank god we were following friends so they helped us to ferry the children back home and the very nice man from the AA came out to tow the car to the Kia dealership.</p>

	<p>So the question now is what next&#8230; can we really &#8216;endure&#8217; this car any more. We seem to have a lemon&#8230; a car built on a Friday perhaps? In any case the stress associated with this car has us considering our options&#8230; even if that means selling the car at a huge loss just to get into something reliable and safe for our family.</p>

	<p>Kia are unwilling to even consider replacing the vehicle or making any kind of good will payment to alleviate the trouble we have had&#8230; apparently all we can expect from them is a free service and I simply don&#8217;t think that&#8217;s good enough.</p>

	<p>Whilst dropping the car off at the dealership today with the nice man from the AA I happened across a chap eying some of the cars on the forecourt, he was looking to buy a new <a href="http://www.kia.co.uk/sorentohome.asp">Kia Sorento</a>. I advised him strongly against purchasing a Kia and relayed the story of how reliable and well built our Sedona is, he seemed convinced&#8230; so that&#8217;s about £20,000 I&#8217;ve just lost Kia.</p>

	<p>I&#8217;ll continue to relay my story to every person I know and meet until I&#8217;ve lost Kia at least £1,000,000 in sales. With 5,000 unique visitors to this blog every month and an extensive social networking contacts list I&#8217;m pretty confident in my quest.</p>

	<p><strong>Update:</strong> Join the <a href="http://www.facebook.com/group.php?gid=43198716087">I promise to never buy a Kia</a> Facebook group to show your support!</p> {extended}
      ]]></content>
    </entry>

    <entry>
      <title>Wired In To Recovery</title>
      <link rel="alternate" type="text/html" href="http://ee.nathanpitman.com/site/wired-in-to-recovery/" />
      <id>tag:ee.nathanpitman.com,2008:index.php/2.404</id>
      <published>2008-11-28T21:02:46Z</published>
      <updated>2008-11-28T21:02:47Z</updated>
      <author>
            <name>Nathan Pitman</name>
            <email>hello@nathanpitman.com</email>
                  </author>

      <category term="Personal"
        scheme="http://ee.nathanpitman.com/site/C12/"
        label="Personal" />
      <content type="html"><![CDATA[
        <p>It was probably the end of May last year when I first met <a href="http://wiredin.org.uk/member/profile/13/">David Clark</a> from the &#8216;Wired Initiative&#8217;. We (<a href="http://ninefour.co.uk">Nine Four</a>) had been put in touch with David by our good friends at <a href="http://voyagedesign.co.uk">Voyage Design</a> who were at the time working with David on a consultancy basis.</p>

	<p>During our first meeting David talked with great enthusiasm about the vision which he had to create an online recovery community for those affected by substance misuse.</p>

	<p>Although I don&#8217;t have a great deal of direct experience in the subject matter, the stories which David told me of instantly grabbed my attention and my interest. Since then we&#8217;ve been working with David and his amazing team (Kevin &amp; Lucie) to design and develop the first phase of the  &#8216;Wired In&#8217; online recovery community and late last week the site finally went live.</p>

	<p>I&#8217;ve been lucky enough to be involved with a number of content and community focused sites before, but the sheer volume and quality of content which the Wired In team have been pumping into the site over the past month or so has blown me away!</p>

	<p>Kudos to David because he has funded this <em>entirely</em> out of his own pocket, using his retirement money to build a community that will empower people to tackle their drug and alcohol use problems.</p>

	<p>Please take some time to visit <a href="http://wiredin.org.uk">Wired In</a> and pass the <span class="caps">URL</span> on to friends and family. <img src="http://ee.nathanpitman.com/images/smileys/smile.gif" width="19" height="19" alt="smile" style="border:0;" /></p> {extended}
      ]]></content>
    </entry>

    <entry>
      <title>ExpressionEngine Plug&#45;in: UK Counties Select</title>
      <link rel="alternate" type="text/html" href="http://ee.nathanpitman.com/site/expressionengine-plug-in-uk-counties-select/" />
      <id>tag:ee.nathanpitman.com,2008:index.php/2.403</id>
      <published>2008-10-24T08:21:52Z</published>
      <updated>2008-10-24T10:53:53Z</updated>
      <author>
            <name>Nathan Pitman</name>
            <email>hello@nathanpitman.com</email>
                  </author>

      <category term="ExpressionEngine"
        scheme="http://ee.nathanpitman.com/site/C4/"
        label="ExpressionEngine" />
      <content type="html"><![CDATA[
        <p>Another day, another little <a href="http://www.expressionengine.com/index.php?affiliate=nathanpitman">ExpressionEngine</a> Plug-in. I needed to return a list of UK counties in a standalone entry form. I could have simply flicked on <span class="caps">PHP</span> for the template and spewed forth a foreach from an array but I thought I&#8217;d wrap it all up in a plug-in instead, so here it is.</p>

	<p>The &#8216;UK Counties Select&#8217; plug-in simply renders a drop down select form element with an alphabetical list of UK counties. Usage of the plug-in is as follows:</p>

	<p><code>&#123;exp:np_uk_counties_select name=&quot;counties&quot;&#125;</code></p>

	<p>I could add options to specify a class, id etc but for now this does the job just fine for me.</p>

	<blockquote>
		<p><strong>Download:</strong> <a href="http://ee.nathanpitman.com/files/pi.np_uk_counties_select_.php_.zip">pi.np_uk_counties_select.php.zip</a></p>
	</blockquote>

	<p>Obviously let me know in the comments if you have any thoughts on how this can be improved. Enjoy!</p> {extended}
      ]]></content>
    </entry>

    <entry>
      <title>Migrating from TXP to EE &#45; Step 5</title>
      <link rel="alternate" type="text/html" href="http://ee.nathanpitman.com/site/migrating-from-txp-to-ee-step-5/" />
      <id>tag:ee.nathanpitman.com,2008:index.php/2.392</id>
      <published>2008-10-15T22:41:36Z</published>
      <updated>2008-11-01T12:25:37Z</updated>
      <author>
            <name>Nathan Pitman</name>
            <email>hello@nathanpitman.com</email>
                  </author>

      <category term="Textpattern"
        scheme="http://ee.nathanpitman.com/site/C27/"
        label="Textpattern" />
      <category term="ExpressionEngine"
        scheme="http://ee.nathanpitman.com/site/C4/"
        label="ExpressionEngine" />
      <content type="html"><![CDATA[
        <p><a href="http://www.expressionengine.com/index.php?affiliate=nathanpitman">ExpressionEngine</a> does not provide a &#8216;native&#8217; facility for recording links but the immense flexibility of ExpressionEngine Weblogs allows you to create your own links facility by just creating a new Weblog with the relevant custom fields (Title, <span class="caps">URL</span> &amp; Description) and then setting up a related category group.</p>

	<p>Just as we exported our article data from Textpattern we &#8216;could&#8217; also export our Link data and then use the same import process to pull it into ExpressionEngine.</p>

	<p>However this is not the route I&#8217;m going to take. Personally I would much rather maintain my &#8216;noteworthy&#8217; links using a tool like <a href="http://delicious.com">Delicious</a> so I&#8217;m going to show you how we can migrate our Textpattern links to Delicious and then have them displayed inline within an ExpressionEngine template.</p>

	<p>Luckily for us there&#8217;s a fantastic Textpattern Extension called <a href="http://compooter.org/2007/01/textpattern-plugin-ajw-bookmarks/">ajw_bookmarks</a> that provides us with a quick and easy way to export our Links to a &#8216;Bookmarks&#8217; file which most bookmark services and browsers can import.</p>

	<p>Download and install the Extension within Textpattern and then navigate to the Bookmarks tab within Extensions and select the first option &#8216;Export bookmarks&#8217;.</p>

	<p>Now that we have our locally saved Bookmarks file navigate to the <a href="https://secure.delicious.com/settings/bookmarks/import">Import Bookmarks</a> tool on the Delicious website (obviously you will need to log-in first) and then choose the &#8216;Custom import&#8217; option.</p>

	<p>Now we want our bookmarks to be visible to the public so check &#8216;make all my imported bookmarks public&#8217;. If you wish to use Delicious to record bookmarks for personal use and also for display on your website you may want to tag all the bookmarks you are going to import with a keyword such as &#8216;noteworthy&#8217; or similar. This is the approach I took. By adding this tag I can identify which bookmarks should be pulled out of Delicious for display on my website. Now click &#8216;Import Now&#8217;.</p>

	<p>Delicious should have a bit of a think, depending on the size of your links collection and then display your imported bookmarks.</p>

	<p>We&#8217;re going to use the ExpressionEngine &#8216;Magpie&#8217; plug-in to pull our Delicious links into our template and display them inline. The plug-in will also cache the data so if Delicious should go down our site won&#8217;t fall apart. The Magpie plug-in is a part of the default ExpressionEngine install so just open up a template file and drop in the following code:</p>

	<p><code>&#123;exp:magpie url=&quot;http://feeds.delicious.com/v2/rss/nathanpitman?count=10&amp;tag=noteworthy&quot; limit=&quot;10&quot; refresh=&quot;60&quot;&#125;
&lt;ul&gt;
&#123;items&#125;
&lt;li&gt;&lt;a href=&quot;&#123;link&#125;&quot; title=&quot;&#123;title&#125;&quot;&gt;&#123;title&#125;&lt;/a&gt;&lt;br /&gt;
&#123;description&#125;&lt;/li&gt;
&#123;/items&#125;
&lt;/ul&gt;
&#123;/exp:magpie&#125;</code></p>

	<p>Obviously you&#8217;ll have to replace &#8216;nathanpitman&#8217; in the feed <span class="caps">URL</span> with your own Delicious username and if you  want to pull back bookmarks with a particular tag then include the &#8216;&amp;tag=&#8217; parameter and variable in the querystring as I have above.</p>

	<p>You should now have a nice unordered list displaying your 10 most recent Delicious bookmarks or my 10 most recent Delicious bookmarks if you forgot to change the username in the <span class="caps">URL</span>. <img src="http://ee.nathanpitman.com/images/smileys/smile.gif" width="19" height="19" alt="smile" style="border:0;" /></p>

	<p>If you need to you can also tweak the number of minutes that the plug-in waits before it refreshes the feed display, I&#8217;d opt for 60 minutes. The Magpie plug-in defaults to 3 hours if you don&#8217;t specify a refresh value.</p> {extended}
      ]]></content>
    </entry>

    <entry>
      <title>The great Staples &#8216;OrderCare&#8217; scam</title>
      <link rel="alternate" type="text/html" href="http://ee.nathanpitman.com/site/the-great-staples-ordercare-scam/" />
      <id>tag:ee.nathanpitman.com,2008:index.php/2.391</id>
      <published>2008-10-06T20:47:21Z</published>
      <updated>2008-10-06T22:48:22Z</updated>
      <author>
            <name>Nathan Pitman</name>
            <email>hello@nathanpitman.com</email>
                  </author>

      <category term="Chatter"
        scheme="http://ee.nathanpitman.com/site/C6/"
        label="Chatter" />
      <content type="html"><![CDATA[
        <p>As a business (<a href="http://www.ninefour.co.uk">Nine Four</a>) we have used <a href="http://www.staples.co.uk">Staples</a> to purchase office supplies on a regular basis for the past couple of years. The last time I used the Staples website to place an order I noticed that the total for my goods was a little higher than I expected, I reviewed the basket again and noticed that a line had been added with the label &#8216;OrderCare&#8217; and a small additional sum, between 2 and 3 pounds if I remember rightly.</p>

	<p>What is &#8216;OrderCare&#8217; you may wonder&#8230; here&#8217;s what Staples say on their website:</p>

	<blockquote>
		<p>Staples OrderCare is a premium service which allows you to return unwanted items to us anytime within 12 months of purchase, for whatever reason.</p>
	</blockquote>

	<p>and a little later on the same page:</p>

	<blockquote>
		<p>If you are returning unwanted items between 3 and 12 months since your order, that are not in a resaleable condition, we reserve the right to charge a <strong>minimum</strong> restocking fee of £15 or 20% of the item’s selling price.</p>
	</blockquote>

	<p>So basically Staples are (without first asking) charging all online customers (not sure if this also applies to phone and mail orders) a small additional sum for a service which they have not opted in to and that will in 99% of cases be of zero use above and beyond what is already offered in the <a href="http://www.staples.co.uk/ENG/static/wrapper.asp?param=help_policie_sale.htm">basic returns service</a>.</p>

	<p>Now consider that I&#8217;m a scrooge and that as the business owner I look for every opportunity possible to reduce costs where suitable. In the vast majority of cases the individual ordering stationary will be an employee who does not really care if they are charged an additional small nominal sum (how do they calculate it!).</p>

	<p>Add to all of the above that there is no way to have &#8216;OrderCare&#8217; default to off on your account, you have to turn it off every time you make an order and this involves navigating to a pop-up window and checking a box to opt out rather than just giving the user the check box on the basket screen itself.</p>

	<p>Imagine how much cash Staples are making every day out of businesses that are totally unaware of the fact that they are paying an additional charge for something they did not ask for.</p>

	<p>I&#8217;ve taken our business elsewhere, perhaps you should do the same. <a href="http://www.viking-direct.co.uk">Viking Direct</a> also offer a similar &#8216;extended warranty&#8217; service but as you would expect, it defaults to off and can be set at an account level. <strong>Good job</strong>.</p> {extended}
      ]]></content>
    </entry>

    <entry>
      <title>Migrating from TXP to EE &#45; Step 4</title>
      <link rel="alternate" type="text/html" href="http://ee.nathanpitman.com/site/migrating-from-txp-to-ee-step-4/" />
      <id>tag:ee.nathanpitman.com,2008:index.php/2.390</id>
      <published>2008-10-03T20:33:44Z</published>
      <updated>2008-10-03T23:22:45Z</updated>
      <author>
            <name>Nathan Pitman</name>
            <email>hello@nathanpitman.com</email>
                  </author>

      <category term="Textpattern"
        scheme="http://ee.nathanpitman.com/site/C27/"
        label="Textpattern" />
      <category term="ExpressionEngine"
        scheme="http://ee.nathanpitman.com/site/C4/"
        label="ExpressionEngine" />
      <content type="html"><![CDATA[
        <p>Right so, a quick re-cap&#8230; we&#8217;ve exported our data from Textpattern, imported it into <a href="http://www.expressionengine.com/index.php?affiliate=nathanpitman">ExpressionEngine</a> and done a quick find and replace to fix up our embedded images.</p>

	<p>Next job on our list is to fix up any links to file assets which we have in our entries. Textpattern uses a file download manager which records total file downloads and obfuscates the actual file path in the <span class="caps">URL</span> which you place in your entry. ExpressionEngine, whilst being a fantastic <span class="caps">CMS</span>, does not provide support for file download counts or obfuscation (here&#8217;s hoping for EE2!) which is a shame but hey ho&#8230; let&#8217;s soldier on.</p>

	<p>We&#8217;re going to have to repair any links to files in our entries because the two systems link to file assets in different ways. So within the ExpressionEngine control panel navigate to the &#8216;Edit&#8217; tab and use the search tool at the top of the screen to search for the string &#8216;/file_download/&#8217; in &#8216;titles and entries&#8217;. This should give you a list of all the entries that you will need to fix up.</p>

	<p>Unfortunately we&#8217;re going to have to do this manually (unless you can think of a better way!) so download all your file assets from your Textpattern install and then upload them to your file upload destination in ExpressionEngine (Prob best done via <span class="caps">FTP</span>).</p>

	<p>Now we just need to amend the file paths in our entries so work through the list of entries that contain the &#8216;/file_download/&#8217; string and replace the old Textpattern file path references with the new ExpressionEngine file path references.</p>

	<p>Now, you can either use the &#8216;copy and paste info&#8217; that the &#8216;File Manager Module&#8217; provides you with (a standard href link) or hand craft a Textile based equivalent. The choice is yours.</p>

	<p>Ok so I ran out of time a little today and didn&#8217;t have a chance to  explain how we can migrate out Textpattern Links but I promise I&#8217;ll cover that in my next post! <img src="http://ee.nathanpitman.com/images/smileys/smile.gif" width="19" height="19" alt="smile" style="border:0;" /></p> {extended}
      ]]></content>
    </entry>

    <entry>
      <title>Migrating from TXP to EE &#45; Step 3</title>
      <link rel="alternate" type="text/html" href="http://ee.nathanpitman.com/site/migrating-from-txp-to-ee-step-3/" />
      <id>tag:ee.nathanpitman.com,2008:index.php/2.389</id>
      <published>2008-09-27T06:40:55Z</published>
      <updated>2008-09-27T08:40:56Z</updated>
      <author>
            <name>Nathan Pitman</name>
            <email>hello@nathanpitman.com</email>
                  </author>

      <category term="Textpattern"
        scheme="http://ee.nathanpitman.com/site/C27/"
        label="Textpattern" />
      <category term="ExpressionEngine"
        scheme="http://ee.nathanpitman.com/site/C4/"
        label="ExpressionEngine" />
      <content type="html"><![CDATA[
        <p>Now comes the exciting part. We&#8217;re going to import our old Textpattern artcicles into <a href="http://www.expressionengine.com/index.php?affiliate=nathanpitman">ExpressionEngine</a>!</p>

	<p>First off we will need to upload the text file that we generated in our export from Textpattern in Step 2. I just dropped my file into the web root of my server so I could get at it easily from ExpressionEngine.</p>

	<p>Once your file has uploaded log-in to your ExpressionEngine control panel and navigate to the &#8216;Admin&#8217; tab and then &#8216;Utilities&#8217; and &#8216;Import Utilities&#8217;. We&#8217;re going to use the &#8216;Movable Type Import Utility&#8217;.</p>

	<p>Complete all the fields on the import screen, your file path should be something like &#8216;../txpexport.txt&#8217;. Everything here should be pretty obvious, I just made sure I un-ticked the &#8216;Create members from commenters?&#8217; option but obviously you might want to do things differently.</p>

	<p>I&#8217;d suggest you do a few dry runs first of all with a small export from your Textpattern install to verify that everything is working as expected. I did an export of 10 entries from Textpattern initially just to test and then deleted all the entries and categories before performing my final import.</p>

	<p>Ok so we have all our articles imported now but we&#8217;re not quite done yet. We need to set up a &#8216;File Upload&#8217; location for our Textpattern Images. I decided to just use the default &#8216;Main Upload Directory&#8217; which is already configured in ExpressionEngine.</p>

	<p>I downloaded all my image assets from my Textpattern image upload folder and uploaded them all to my ExpressionEngine image upload folder. Now in my case the file paths are different (though you could always mimic the folder location which Textpattern uses in ExpressionEngine. If like me you didn&#8217;t you can quickly and easily do a find and replace on all your article image file paths.</p>

	<p>Navigate to &#8216;Admin&#8217; and then &#8216;Utilities&#8217; and select &#8216;Find and Replace&#8217;. In my case I entered &#8216;/images/&#8217; in the &#8216;Search for this text&#8217; field and &#8216;/images/uploads/&#8217; in the &#8216;replace with this text&#8217; field. Select the entry field that you want to affect and the click submit.</p>

	<p>All of your article entries should now include any inline images or media. Next we&#8217;ll be looking at how to deal with Textpattern &#8216;links&#8217; and &#8216;file assets&#8217;.</p> {extended}
      ]]></content>
    </entry>

    <entry>
      <title>Migrating from TXP to EE &#45; Step 2</title>
      <link rel="alternate" type="text/html" href="http://ee.nathanpitman.com/site/migrating-from-txp-to-ee-step-2/" />
      <id>tag:ee.nathanpitman.com,2008:index.php/2.388</id>
      <published>2008-09-26T21:16:16Z</published>
      <updated>2008-09-27T07:45:17Z</updated>
      <author>
            <name>Nathan Pitman</name>
            <email>hello@nathanpitman.com</email>
                  </author>

      <category term="Textpattern"
        scheme="http://ee.nathanpitman.com/site/C27/"
        label="Textpattern" />
      <category term="ExpressionEngine"
        scheme="http://ee.nathanpitman.com/site/C4/"
        label="ExpressionEngine" />
      <content type="html"><![CDATA[
        <p>So now we have our <a href="http://www.expressionengine.com/index.php?affiliate=nathanpitman">ExpressionEngine</a> install pretty much ready we need to export our data from Textpattern. At this point it may be wise to upgrade your Textpattern install to the <a href="http://www.textpattern.com/download">latest release</a>.</p>

	<p>During a bit of a <a href="http://expressionengine.com/forums/viewthread/52585/">forum tennis match</a> almost 3 years back(!) Jon Hicks and I managed to refine an export method which had been used for Textpattern previously to incorporate clean Textile and entry comments. I&#8217;ve summarised the steps you will need to take and the code you will need to use in your Textpattern templates below.</p>

	<p>Before you start you will need to install a couple of Textpattern plug-ins to ensure that we can get our data out in just the right format.</p>

	<p>First is a Textpattern plug-in called <a href="http://www.svihla.net/textpattern_plugins/">msv_show_article_field</a> which is written by Martin Švihla. This plug-in allows us to return the Textile formatted content for the articles instead of the <span class="caps">HTML</span> equivalent. This means that our articles will maintain their nice clean Textile formatting once imported into ExpressionEngine. Bonus!</p>

	<p>Next is a plug-in called <a href="http://textpattern.org/plugins/213/glx_thiscomment">glx_thiscomment</a> which is written by Johan Nilsson. This plug-in allows us to pull out the plain text name value for comments rather than the name wrapped in a &#8216;href&#8217; linking to the comment authors website <span class="caps">URL</span> or email (the default behavior for the built in Textpattern comment tag). This is essential if we want to maintain article comments.</p>

	<p>Now create 2 new Textpattern forms, one called &#8216;export&#8217; and one called &#8216;exportcomments&#8217;. Add the following code to your &#8216;export&#8217; form:</p>

	<p><code>TITLE: &lt;txp:title /&gt;
AUTHOR: &lt;txp:author /&gt;
DATE: &lt;txp:posted format=&quot;%m/%d/%G %I:%M:%S %p&quot; /&gt;
PRIMARY CATEGORY: &lt;txp:category1 /&gt;
CATEGORY: &lt;txp:category2 /&gt;
&lt;txp:php&gt;echo &quot;-----&quot;.&quot;\n&quot;;&lt;/txp:php&gt;
BODY:
&lt;txp:msv_show_article_field name=&quot;Body&quot; /&gt;
&lt;txp:php&gt;echo &quot;-----&quot;.&quot;\n&quot;;&lt;/txp:php&gt;
&lt;txp:if_excerpt&gt;
EXCERPT:&lt;txp:msv_show_article_field name=&quot;Excerpt&quot; /&gt;&lt;/txp:if_excerpt&gt;
&lt;txp:php&gt;echo &quot;-----&quot;.&quot;\n&quot;;&lt;/txp:php&gt;  
&lt;txp:if_comments&gt;
&lt;txp:comments form=&quot;exportcomments&quot; break=&quot;&quot; /&gt;
&lt;/txp:if_comments&gt;
&lt;txp:php&gt;echo &quot;--------&quot;.&quot;\n&quot;;&lt;/txp:php&gt;</code></p>

	<p>&#8230;and the following code to your &#8216;exportcomments&#8217; form:</p>

	<p><code>COMMENT:
AUTHOR: &lt;txp:glx_thiscomment key=&quot;name&quot; /&gt;
EMAIL: &lt;txp:comment_email /&gt;
URL: &lt;txp:comment_web /&gt;
DATE: &lt;txp:posted format=&quot;%m/%d/%G %I:%M:%S %p&quot; /&gt;
&lt;txp:message /&gt;
-----</code></p>

	<p>Finally we need to call our &#8216;export&#8217; form from a page template. Create a new page template called export and add the following code:</p>

	<p><code>&lt;txp:article_custom section=&quot;name-of-your-txp-section-here&quot; form=&quot;export&quot; limit=&quot;500&quot; offset=&quot;0&quot; /&gt;</code></p>

	<p>Obviously you will need to tweak the parameters in your page template to suit the number of blog entries you have and the section from which you wish to export entries.</p>

	<p>With all of the above done we should now be able to visit the public <span class="caps">URL</span> for this page template in our web browser (<a href="http://yourdomainname.com/export/">http://yourdomainname.com/export/</a>) and see the output. I had over 400 entries to export so the page took a while to load. Once fully loaded view source and save a copy to a plain text file on your local machine (txpexport.txt for example).</p>

	<p>I know I promised to cover how we import this data into ExpressionEngine but I&#8217;ve been rambling on for a while now so I&#8217;ll leave that until my next post. <img src="http://ee.nathanpitman.com/images/smileys/smile.gif" width="19" height="19" alt="smile" style="border:0;" /></p> {extended}
      ]]></content>
    </entry>

    <entry>
      <title>Migrating from TXP to EE &#45; Step 1</title>
      <link rel="alternate" type="text/html" href="http://ee.nathanpitman.com/site/migrating-from-txp-to-ee-step-1/" />
      <id>tag:ee.nathanpitman.com,2008:index.php/2.387</id>
      <published>2008-09-22T19:09:38Z</published>
      <updated>2008-09-22T21:14:39Z</updated>
      <author>
            <name>Nathan Pitman</name>
            <email>hello@nathanpitman.com</email>
                  </author>

      <category term="Textpattern"
        scheme="http://ee.nathanpitman.com/site/C27/"
        label="Textpattern" />
      <category term="ExpressionEngine"
        scheme="http://ee.nathanpitman.com/site/C4/"
        label="ExpressionEngine" />
      <content type="html"><![CDATA[
        <p>Ok so a lot of this will be obvious but hey, here we go&#8230; I&#8217;ve decided to tackle the migration by setting up an <a href="http://www.expressionengine.com/index.php?affiliate=nathanpitman">ExpressionEngine</a> Core Install on a sub domain (<a href="http://ee.nathanpitman.com">http://ee.nathanpitman.com</a>) where I will be able to get everything up and running before I switch from the old Textpattern install for good.</p>

	<p>First step quite obviously is to install ExpressionEngine Core (The free version of the <span class="caps">CMS</span>). I won&#8217;t explain how to do this, it&#8217;s dead easy and there are a ton of useful resources out there for you to look at if you&#8217;ve never used EE before.</p>

	<p>First thing to do after you&#8217;ve completed the install is to modify the default custom field group for the default weblog to match the fields which you have in Textpattern. Textpattern has a &#8216;Body&#8217; and &#8216;Excerpt&#8217; field so you could simply rename the default &#8216;extended&#8217; field if you want to feel at home.</p>

	<p>As we&#8217;re migrating from Textpattern all our posts that we will be importing will be formatted with Textile or <span class="caps">XHTML</span> so we&#8217;re going to need to mimic that environment in ExpressionEngine. To do so we&#8217;ll need to install a handy little 3rd party plug-in called &#8216;Textile&#8217;! You can download the <a href="http://expressionengine.com/downloads/details/textile/">Textile Plug-in</a> from the ExpressionEngine website. Once installed you will need to log-in to your ExpressionEngine control panel again and change the default formatting for the custom fields (body and excerpt) to use &#8216;Textile&#8217; rather than <span class="caps">XHTML</span>. Don&#8217;t worry if some of your Textpattern blog posts have <span class="caps">XHTML</span> in them, Textile will still render these just right.</p>

	<p>Finally, before we move on to exporting our blog entries from Textpattern we need to install a module that will allow us to more easily upload and manage files as we are used to doing so with the Textpattern &#8216;Files&#8217; tab. The nearest equivalent that I have found over the years is the <a href="http://loweblog.com/freelance/article/ee-file-manager-module/">Low File Manager Module</a>. It doesn&#8217;t provide download counts but it does pretty much everything else you could want and ties in beautifully with the ExpressionEngine File Upload preference settings.</p>

	<p>Next we&#8217;ll be looking at how to export all our blog entries from Textpattern and pull them into ExpressionEngine. <img src="http://ee.nathanpitman.com/images/smileys/smile.gif" width="19" height="19" alt="smile" style="border:0;" /></p> {extended}
      ]]></content>
    </entry>

    <entry>
      <title>Blogging the migration from Textpattern to ExpressionEngine</title>
      <link rel="alternate" type="text/html" href="http://ee.nathanpitman.com/site/blogging-the-migration-from-textpattern-to-expressionengine/" />
      <id>tag:ee.nathanpitman.com,2008:index.php/2.386</id>
      <published>2008-09-22T07:39:59Z</published>
      <updated>2008-10-16T00:41:00Z</updated>
      <author>
            <name>Nathan Pitman</name>
            <email>hello@nathanpitman.com</email>
                  </author>

      <category term="Textpattern"
        scheme="http://ee.nathanpitman.com/site/C27/"
        label="Textpattern" />
      <category term="ExpressionEngine"
        scheme="http://ee.nathanpitman.com/site/C4/"
        label="ExpressionEngine" />
      <content type="html"><![CDATA[
        <p>I have made a cast iron decision. I am migrating (this) my personal blog from Textpattern to <a href="http://www.expressionengine.com/index.php?affiliate=nathanpitman">ExpressionEngine</a>. I thought others might find it useful if I blogged my progress along the way.</p>

	<p>So, this is the first of a number of posts which will explain the how, why when and what in as much detail as I can muster. If you&#8217;re looking to do the same then perhaps you&#8217;d like to follow me&#8230;</p>

	<p><a href="http://ee.nathanpitman.com">http://ee.nathanpitman.com</a></p>

	<p><img src="http://ee.nathanpitman.com/images/smileys/smile.gif" width="19" height="19" alt="smile" style="border:0;" /></p>

	<p>Update: <a href="http://nathanpitman.com/journal/553/migrating-from-txp-to-ee-step-1">Step 1</a>, <a href="http://nathanpitman.com/journal/554/migrating-from-txp-to-ee-step-2">Step 2</a>, <a href="http://nathanpitman.com/journal/555/migrating-from-txp-to-ee-step-3">Step 3</a>, <a href="http://nathanpitman.com/journal/556/migrating-from-txp-to-ee-step-4">Step 4</a>, <a href="http://nathanpitman.com/journal/558/migrating-from-txp-to-ee-step-5">Step 5</a></p> {extended}
      ]]></content>
    </entry>

    <entry>
      <title>ExpressionEngine Extension: NoScript Messages</title>
      <link rel="alternate" type="text/html" href="http://ee.nathanpitman.com/site/expressionengine-extension-noscript-messages/" />
      <id>tag:ee.nathanpitman.com,2008:index.php/2.2</id>
      <published>2008-09-18T21:38:00Z</published>
      <updated>1999-11-30T00:00:00Z</updated>
      <author>
            <name>Nathan Pitman</name>
            <email>hello@nathanpitman.com</email>
                  </author>

      <category term="ExpressionEngine"
        scheme="http://ee.nathanpitman.com/site/C4/"
        label="ExpressionEngine" />
      <content type="html"><![CDATA[
        <p>While working on a project recently I noted that <a href="http://www.expressionengine.com/index.php?affiliate=nathanpitman">ExpressionEngine</a> uses a &#8216;JavaScript:history.go(-1)&#8217; within the &#8216;User Message&#8217; templates to allow you to return to the page from whence you came if you submit a form without completing all the required fields, perform a search and return no results etc.</p>

	<p>I wanted to &#8216;do the right thing&#8217; and &#8216;hacked&#8217; an alternative as documented in <a href="http://expressionengine.com/forums/viewthread/85472/">this thread</a> on the ExpressionEngine Forums. This hack picked up the referring page <span class="caps">URL</span> and passed that to the User Message template instead.</p>

	<p>I kept a note of my hack and when I had to upgrade this particular install to the latest point release I set about re-implementing it. At this point <a href="http://derekderekderek.com">Derek Jones</a> helpfully pointed out that I could create an ExpressionEngine Extension to do the same job, negating the need to &#8216;re-implement&#8217; the hack again and again. Thanks for the prod in the right direction Derek! Here&#8217;s my first ExpressionEngine Extension &#8211; &#8216;NoScript Messages&#8217;.</p>

	<blockquote>
		<p><strong>Download:</strong> <a href="http://nathanpitman.com/file_download/15">ext.noscript_messages.php.zip</a></p>
	</blockquote>

	<p>Obviously let me know in the comments if you have any thoughts on how this can be improved. Enjoy!</p> {extended}
      ]]></content>
    </entry>

    <entry>
      <title>Building websites with ExpressionEngine 1.6</title>
      <link rel="alternate" type="text/html" href="http://ee.nathanpitman.com/site/building-websites-with-expressionengine-16/" />
      <id>tag:ee.nathanpitman.com,2008:index.php/2.3</id>
      <published>2008-08-17T11:53:40Z</published>
      <updated>1999-11-30T00:00:00Z</updated>
      <author>
            <name>Nathan Pitman</name>
            <email>hello@nathanpitman.com</email>
                  </author>

      <category term="ExpressionEngine"
        scheme="http://ee.nathanpitman.com/site/C4/"
        label="ExpressionEngine" />
      <content type="html"><![CDATA[
        <p>This week I had a rather nice email from a lady called Alice at Packt Publishing here in the UK. Packt are a publishing company specialising in IT focused books and have just published a new book last month called &#8216;&#8220;Building websites with ExpressionEngine 1.6&#8221;:http://www.packtpub.com/building-websites-with-expressionengine-1.6/book&#8217;.</p>

	<p>The book, written by <a href="http://www.leonardmurphy.co.uk/">Leonard Murphy</a> is aimed at <a href="http://www.expressionengine.com/index.php?affiliate=nathanpitman">ExpressionEngine</a> beginners. Alice has been kind enough to send me a copy for review so once I&#8217;ve had a chance to read it I&#8217;ll report back and let you know my thoughts.</p>

	<p>In the mean time why not take a look at a <a href="http://nathanpitman.com/file_download/14">sample chapter</a>.</p> {extended}
      ]]></content>
    </entry>

    <entry>
      <title>Catching an expiring domain name</title>
      <link rel="alternate" type="text/html" href="http://ee.nathanpitman.com/site/catching-an-expiring-domain-name/" />
      <id>tag:ee.nathanpitman.com,2008:index.php/2.4</id>
      <published>2008-08-16T22:36:00Z</published>
      <updated>1999-11-30T00:00:00Z</updated>
      <author>
            <name>Nathan Pitman</name>
            <email>hello@nathanpitman.com</email>
                  </author>

      <category term="Branding"
        scheme="http://ee.nathanpitman.com/site/C5/"
        label="Branding" />
      <content type="html"><![CDATA[
        <p>From the moment that I decided to go it alone and start my own business with my wife 3 years back I was keen to ensure that I bagged a .com as our primary domain. However it very soon became obvious that the chances of settling on a name that we were happy with and it being available as a .com were pretty much nil.</p>

	<p>After what seemed like an age we settled on a name (<a href="http://www.ninefour.co.uk">Nine Four</a>) and purchased the only available domains, the .co.uk and .net. The .com was already registered but not in use so we held out some small hope that we might manage to get hold of it one day.</p>

	<h3>How much?</h3>

	<p>In October 2006, just over a year after we started the business I decided to approach the current domain name owner, hoping that a reasonable offer might be well received. However he was clearly not in the mood to be reasonable and wanted no less than $25,000. Obviously I declined.</p>

	<h3>Thanks for the reminder</h3>

	<p>Almost another 2 years passed and to be honest I had for the most part forgotten about the .com. Resigning myself to the fact that I would never be able to get hold of it and that perhaps it wasn&#8217;t so important after all.</p>

	<p>On the 6th of August I received an email from a company called Tripod UK Ltd alerting me to the fact that ninefour.com had not been renewed by it&#8217;s previous owner and that it was soon to be released. They claimed an 80% success rate in catching dropping domains but you know what&#8230; I fancied giving it a shot myself.</p>

	<p>So I read up on Mike Davidson&#8217;s Blog about <a href="http://www.mikeindustries.com/blog/archive/2005/03/how-to-snatch-an-expiring-domain">his experience snatching &#8216;newsvine.com&#8217;</a> and formulated a plan of attack.</p>

	<h3>Drop what?</h3>

	<p>After a certain period (usually 75 days) a domain name &#8216;drops&#8217; and becomes available for re-registration. The trick is to know exactly when the drop will occur. Unfortunately there&#8217;s no way of being privy to the exact time or date so as Mike suggests, your best bet is to enlist the services of a company that will continually monitor the status of the domain name for you and automatically attempt to register it as soon as it becomes available.</p>

	<p>Mike suggests using <a href="http://snapnames.com">SnapNames.com</a>, <a href="http://www.enom.com">Enom.com</a> and <a href="http://www.pool.com">Pool.com</a>. Enom.com didn&#8217;t seem to have an obvious option for back-ordering a domain name so in the end I went with <a href="http://www.namejet.com">NameJet.com</a>.</p>

	<p><strong>SnapNames</strong> seemed like it was going to be my best bet as they have a clear and open auction process and if there was no competition for the domain when it dropped they would automatically register it for me for just $60.</p>

	<p><strong>NameJet</strong> seemed to offer a similar service to SnapNames but <strong>Pool</strong> was a lot less enticing. Although I didn&#8217;t get to experience their auction process in the end, from what I read on Mikes blog it isn&#8217;t great for the buyer, only great for Pool.</p>

	<h3>The auction</h3>

	<p>I was one of the lucky ones I guess because SnapNames bagged ninefour.com. I soon discovered though that I was not the only bidder, there were two of us&#8230; I guess it could have been much worse.</p>

	<p>My counterpart had opened the bidding at $60. I had set a maximum bid amount of $300 prior to the auction so SnapNames had automatically bid on my behalf to $70. The auction process lasts between one and fourteen days, in this case the auction was 7 days so I made a note in the diary and got back to work.</p>

	<p>A week later I was regularly refreshing the SnapNames auction page to check the status of the order as the hours counted down. With no come back bid from my counterpart I was feeling confident. I did a little research online based on his/her SnapNames username and found that s/he had a history of opening the bidding on a number of names but didn&#8217;t seem to bid any further. This was all good. <img src="http://ee.nathanpitman.com/images/smileys/smile.gif" width="19" height="19" alt="smile" style="border:0;" /> </p>

	<h3>The last minutes</h3>

	<p>With less than 10 minutes to go I&#8217;m outbid. I was gutted, all of a sudden from nowhere the other bidder had upped the ante. After a few minutes Jo and I decided to up our maximum bid. SnapNames extends the auction end time by 5 minutes every time a new winning bid is placed so we knew we had to be bold. We entered a maximum bid of $800 and sat tight. 10 minutes or so later we were the proud new owners of <a href="http://www.ninefour.com">ninefour.com</a>, the final bid being $579.</p>

	<p>It was more than we had hoped to spend but I think it was worth it. As a business your brand is probably one of your most valuable assets (in addition to your employees!) so in that context $579 seems like a small price to pay. Certainly beats $25,000!</p> {extended}
      ]]></content>
    </entry>

    <entry>
      <title>Free &#8216;thinking&#8217; Breakfast, Reading, UK&#8230; Tmrw!</title>
      <link rel="alternate" type="text/html" href="http://ee.nathanpitman.com/site/free-thinking-breakfast-reading-uk-tmrw/" />
      <id>tag:ee.nathanpitman.com,2008:index.php/2.5</id>
      <published>2008-07-28T14:11:00Z</published>
      <updated>1999-11-30T00:00:00Z</updated>
      <author>
            <name>Nathan Pitman</name>
            <email>hello@nathanpitman.com</email>
                  </author>

      <category term="Chatter"
        scheme="http://ee.nathanpitman.com/site/C6/"
        label="Chatter" />
      <content type="html"><![CDATA[
        <p>My good friend Glen from <a href="http://www.sub-lime.co.uk">Sub Lime</a> is looking for people to come along to a free &#8216;thinking&#8217; Breakfast at Green Park in Reading tmrw AM&#8230;</p>

	<p><strong>Find out about the Current Economic Climate and how it is affecting small businesses.</strong></p>

	<p>The headline speaker is Entrepreneur &#8216;Jamie Martin&#8217; who was on the <span class="caps">BBC</span> show &#8216;Did they pay their mortgage off in 2 years&#8221;. You can see highlights on his <a href="http://www.youtube.com/user/jamiebusinessguru">YouTube channel</a>.</p>

	<p>The event is tomorrow (29th) and will start at 8:00 &#8211; 8:30 and finish at 10:00am &#8211; 10:30am.</p>

	<p><strong>Here is the agenda:</strong></p>

<ol><li>Welcome reception (Tea and coffee)</li><li>Introduction of Jamie Martin, Regus and Barclays</li><li>Results of questionnaire survey</li><li>Jamie Martin talks about success and failure in business.</li><li>Interviews Mike Garth, former engineer for Toyota F1</li><li>Barclays will provide expert knowledge about protecting your business during the economic downturn</li><li>Regus imparts their extensive knowledge of business overheads</li><li>Summary / Q&amp;A</li><li>Networking &#8211; Free breakfast (bacon rolls), tea, coffee and fruit juice.</li><li>Live Prize Draw; Barclays Credit Management Tool for a year, Regus Business World Card and21 days free UK accommodation</li></ol>

	<p><strong>Signup here:</strong> <a href="http://www.sub-lime.co.uk/regus">http://www.sub-lime.co.uk/regus</a></p> {extended}
      ]]></content>
    </entry>

    <entry>
      <title>ExpressionEngine Plug&#45;in: Encode/Decode</title>
      <link rel="alternate" type="text/html" href="http://ee.nathanpitman.com/site/expressionengine-plug-in-encode-decode/" />
      <id>tag:ee.nathanpitman.com,2008:index.php/2.6</id>
      <published>2008-07-21T23:41:07Z</published>
      <updated>1999-11-30T00:00:00Z</updated>
      <author>
            <name>Nathan Pitman</name>
            <email>hello@nathanpitman.com</email>
                  </author>

      <category term="ExpressionEngine"
        scheme="http://ee.nathanpitman.com/site/C4/"
        label="ExpressionEngine" />
      <content type="html"><![CDATA[
        <p>Every time I come up against something which I once would have resorted to <span class="caps">PHP</span> to solve, I end up writing a little plug-in these days instead. It just feels less dirty that way&#8230;</p>

	<p>Anyhow, this one was developed to help me out when I needed to pass a string of data from one page to another in the <span class="caps">URL</span>. The string in question would occasionally include a forward slash and as such the string would become split as <a href="http://www.expressionengine.com/index.php?affiliate=nathanpitman">Expression Engine</a> interpreted it as two separate <span class="caps">URL</span> segments.</p>

	<p>The &#8216;Encode/Decode&#8217; plug-in takes any string of text and encodes or decodes it. Typical usage of the plug-in is as follows:</p>

	<p><code>&#123;exp:np_encodedecode style=&quot;base64&quot; direction=&quot;encode&quot;&#125;&#123;title&#125;&#123;/exp:np_encodedecode&#125;</code></p>

	<p>The plug-in offers &#8216;base64&#8217; and &#8216;url&#8217; encoding and decoding but it would be easy to add more options. For me base64 seems to work best.</p>

	<blockquote>
		<p><strong>Download:</strong> <a href="http://nathanpitman.com/file_download/13">pi.np_encodedecode.php.zip</a></p>
	</blockquote>

	<p>Obviously let me know in the comments if you have any thoughts on how this can be improved. Enjoy!</p> {extended}
      ]]></content>
    </entry>


</feed>