<?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>matthewkenny.com</title>
	<atom:link href="http://www.matthewkenny.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.matthewkenny.com</link>
	<description></description>
	<lastBuildDate>Sun, 20 Dec 2009 23:10:28 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=abc</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Setting Sitecore ImageField</title>
		<link>http://www.matthewkenny.com/2009/12/setting-sitecore-imagefield/</link>
		<comments>http://www.matthewkenny.com/2009/12/setting-sitecore-imagefield/#comments</comments>
		<pubDate>Sun, 20 Dec 2009 23:10:28 +0000</pubDate>
		<dc:creator>Matthew Kenny</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[.net]]></category>
		<category><![CDATA[asp.net]]></category>
		<category><![CDATA[c#]]></category>
		<category><![CDATA[sitecore]]></category>

		<guid isPermaLink="false">http://www.matthewkenny.com/?p=106</guid>
		<description><![CDATA[Recently I had to write something to allow users to upload their own content on a Sitecore site.  Not an unusual, or especially difficult, piece of functionality but one thing that did give me a bit of trouble was associating uploaded images (in the media library with the Sitecore item&#8217;s image field.
Originally I tried [...]]]></description>
			<content:encoded><![CDATA[<p>Recently I had to write something to allow users to upload their own content on a Sitecore site.  Not an unusual, or especially difficult, piece of functionality but one thing that did give me a bit of trouble was associating uploaded images (in the media library with the Sitecore item&#8217;s image field.<span id="more-106"></span></p>
<p>Originally I tried setting the media ID and the media path properties, but that didn&#8217;t quite work.  Eventually I found that you have to set the media ID, media path, source, and a custom attribute (&#8220;<tt>showineditor</tt>&#8220;).  I was surprised that it wasn&#8217;t easier to assign a media file to an <tt>ImageField</tt> object, but that&#8217;s easily resolved using extension methods introduced in .Net 3.5.  For the lazier among us, I&#8217;ve included a small snippet of code that does the important stuff.  This code is written for Sitecore 5.3, but should work on Sitecore 6.x with minor tweaking if some nicer methods haven&#8217;t already been put in place.  Obviously, production code should be made a bit robust than what&#8217;s below, which has no exception handling and <em>assumes the item is already in editing mode</em>.</p>
<pre name="code" class="c-sharp">
public void AssignMediaItem(ImageField field, Item mediaItem)
{
    field.MediaID = mediaItem.ID;
    MediaUrlOptions options = new MediaUrlOptions();
    field.Src = MediaManager.GetMediaUrl(mediaItem, options);
    field.MediaPath = mediaItem.Paths.MediaPath;
    field.SetAttribute("showineditor", "1");
}</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.matthewkenny.com/2009/12/setting-sitecore-imagefield/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Quick Update</title>
		<link>http://www.matthewkenny.com/2009/11/quick-update/</link>
		<comments>http://www.matthewkenny.com/2009/11/quick-update/#comments</comments>
		<pubDate>Mon, 30 Nov 2009 21:32:29 +0000</pubDate>
		<dc:creator>Matthew Kenny</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[Home]]></category>
		<category><![CDATA[Work]]></category>
		<category><![CDATA[bit10]]></category>
		<category><![CDATA[home move]]></category>
		<category><![CDATA[london]]></category>

		<guid isPermaLink="false">http://www.matthewkenny.com/?p=99</guid>
		<description><![CDATA[So, I thought I&#8217;d ease into what will (hopefully) be another flurry of posting activity with a quick update on what&#8217;s been going on here recently.  If you&#8217;ve read through earlier posts on this blog then you may well know that I started working at bit10 in September 2007.  I&#8217;ve had a fantastic time working [...]]]></description>
			<content:encoded><![CDATA[<p>So, I thought I&#8217;d ease into what will (hopefully) be another flurry of posting activity with a quick update on what&#8217;s been going on here recently.  If you&#8217;ve read through earlier posts on this blog then you may well know that I started working at bit10 in September 2007.  I&#8217;ve had a fantastic time working at bit10; I&#8217;ve learned a great deal and met many people with whom I&#8217;m hoping to keep in contact.  However, as with all things, I think that it&#8217;s become time to move on.<span id="more-99"></span></p>
<p>I have had the good fortune of receiving an offer of employment from a London-based company, specialising in both Sitecore and ASP.Net MVC solutions (so, right up my street).  I&#8217;ll be starting there in February next year.  I&#8217;m really excited about it and am looking forward to getting stuck in.</p>
<p>As for what this means for me, it does mean that I&#8217;ll be moving to London in a few months.  Until then I&#8217;ll be commuting by train from Coventry, which isn&#8217;t quite as bad as it sounds &#8211; the train to Euston takes only an hour, and then there&#8217;s a short tube trip.  All very manageable in the short term.  Once everything settles down, I&#8217;ll start the process of moving (again).  Fortunately I haven&#8217;t quite unpacked from last time, so there isn&#8217;t quite as much work to be done this time around!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.matthewkenny.com/2009/11/quick-update/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Back on the &#8216;Net</title>
		<link>http://www.matthewkenny.com/2009/08/back-on-the-net/</link>
		<comments>http://www.matthewkenny.com/2009/08/back-on-the-net/#comments</comments>
		<pubDate>Thu, 13 Aug 2009 19:44:31 +0000</pubDate>
		<dc:creator>Matthew Kenny</dc:creator>
				<category><![CDATA[Home]]></category>

		<guid isPermaLink="false">http://www.matthewkenny.com/?p=96</guid>
		<description><![CDATA[After almost a month I&#8217;m finally back on the internet.  I&#8217;ve got a lot of catching up to do, I might finally get back to posting at some point soon.
Right now I&#8217;ve got a fair bit on my plate as I&#8217;m currently following up a couple of issues with my new place with the lettings [...]]]></description>
			<content:encoded><![CDATA[<p>After almost a month I&#8217;m finally back on the internet.  I&#8217;ve got a lot of catching up to do, I might finally get back to posting at some point soon.</p>
<p>Right now I&#8217;ve got a fair bit on my plate as I&#8217;m currently following up a couple of issues with my new place with the lettings agent which are dragging along somewhat, but not to the point where I want to go into details on here at the moment.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.matthewkenny.com/2009/08/back-on-the-net/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>House Move</title>
		<link>http://www.matthewkenny.com/2009/07/house-move/</link>
		<comments>http://www.matthewkenny.com/2009/07/house-move/#comments</comments>
		<pubDate>Sat, 25 Jul 2009 17:10:59 +0000</pubDate>
		<dc:creator>Matthew Kenny</dc:creator>
				<category><![CDATA[Home]]></category>

		<guid isPermaLink="false">http://www.matthewkenny.com/?p=94</guid>
		<description><![CDATA[In case anyone&#8217;s been wondering why I&#8217;ve been a bit quiet recently, it&#8217;s just because I&#8217;ve moved house and haven&#8217;t managed to get internet sorted at my new place yet.  Once I get myself back online, I should be able to resume normal posting.  When that&#8217;s going to be depends on the irritatingly recalcitrant BT.
]]></description>
			<content:encoded><![CDATA[<p>In case anyone&#8217;s been wondering why I&#8217;ve been a bit quiet recently, it&#8217;s just because I&#8217;ve moved house and haven&#8217;t managed to get internet sorted at my new place yet.  Once I get myself back online, I should be able to resume normal posting.  When that&#8217;s going to be depends on the irritatingly recalcitrant BT.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.matthewkenny.com/2009/07/house-move/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Overactive Akismet</title>
		<link>http://www.matthewkenny.com/2009/06/overactive-akismet/</link>
		<comments>http://www.matthewkenny.com/2009/06/overactive-akismet/#comments</comments>
		<pubDate>Sun, 28 Jun 2009 23:24:43 +0000</pubDate>
		<dc:creator>Matthew Kenny</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.matthewkenny.com/?p=91</guid>
		<description><![CDATA[I&#8217;ve always really ignored the comment moderation queue, generally trusting Akismet to filter out the spam and only let real comments through.  I&#8217;ve actually been very pleased with it as it has stopped comment spam coming through, which was initially quite a nuisance.  This evening though (as I currently can&#8217;t get to sleep) I decided [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve always really ignored the comment moderation queue, generally trusting Akismet to filter out the spam and only let real comments through.  I&#8217;ve actually been very pleased with it as it has stopped comment spam coming through, which was initially quite a nuisance.  This evening though (as I currently can&#8217;t get to sleep) I decided to have a look through the comments that Akismet has marked as spam.<span id="more-91"></span></p>
<p>While a lot of the stuff in there <em>was</em> spam, there were a few comments that were genuine.  I know the comments are held in the queue for a few days before actually being deleted, so I&#8217;ve gone back as far as I can.  I&#8217;d just like to quickly apologise to anyone who has posted a comment and not had it show up; it&#8217;s nice to get some feedback and I do appreciate it.  I&#8217;m also going to be more vigilant in the future, and try to make sure I check it every so often.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.matthewkenny.com/2009/06/overactive-akismet/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>IE8 &#8220;feature comparison&#8221;</title>
		<link>http://www.matthewkenny.com/2009/06/ie8-feature-comparison/</link>
		<comments>http://www.matthewkenny.com/2009/06/ie8-feature-comparison/#comments</comments>
		<pubDate>Sat, 20 Jun 2009 16:16:23 +0000</pubDate>
		<dc:creator>Matthew Kenny</dc:creator>
				<category><![CDATA[Rants]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[browser]]></category>
		<category><![CDATA[ie6]]></category>
		<category><![CDATA[ie8]]></category>
		<category><![CDATA[marketing]]></category>
		<category><![CDATA[microsoft]]></category>

		<guid isPermaLink="false">http://www.matthewkenny.com/?p=83</guid>
		<description><![CDATA[I&#8217;ll admit straight up that I haven&#8217;t really used IE8.  I&#8217;ll also happily concede that IE8 is probably a good deal better at rendering standards-compliant things than IE6 and IE7.  I&#8217;m also happy that with the release of IE8, the death of IE6 is that little bit closer (something that will make any web developer [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ll admit straight up that I haven&#8217;t really used IE8.  I&#8217;ll also happily concede that IE8 is probably a good deal better at rendering standards-compliant things than IE6 and IE7.  I&#8217;m also happy that with the release of IE8, the death of IE6 is that little bit closer (something that will make any web developer happy, I believe).  I have to say, though, that I was highly disappointed by Microsoft when they released <a rel="nofollow" href="http://www.microsoft.com/windows/internet-explorer/get-the-facts/browser-comparison.aspx" target="_blank">this article</a>.  I feel it&#8217;s sad that whoever wrote the article felt that IE8 could not stand on its own merits and so had to do some, ah, <em>creative</em> spinning of the truth to promote it instead.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.matthewkenny.com/2009/06/ie8-feature-comparison/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Sitecore v6.0</title>
		<link>http://www.matthewkenny.com/2009/06/sitecore-v6-0/</link>
		<comments>http://www.matthewkenny.com/2009/06/sitecore-v6-0/#comments</comments>
		<pubDate>Thu, 18 Jun 2009 17:40:42 +0000</pubDate>
		<dc:creator>Matthew Kenny</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[asp.net]]></category>
		<category><![CDATA[bit10]]></category>
		<category><![CDATA[cms]]></category>
		<category><![CDATA[scd]]></category>
		<category><![CDATA[sitecore]]></category>

		<guid isPermaLink="false">http://www.matthewkenny.com/?p=81</guid>
		<description><![CDATA[Yesterday I took my &#8220;upgrade&#8221; certification exam to upgrade my Sitecore 5.3 certification that I obtained last August to to the recently released version 6.0.  Sitecore is a highly adaptable and extremely powerful CMS that bit10 chose as its CMS of choice.  After reviewing a fair number of competing offerings (including Amaxus and Ektron), [...]]]></description>
			<content:encoded><![CDATA[<p>Yesterday I took my &#8220;upgrade&#8221; certification exam to upgrade my Sitecore 5.3 certification that I obtained last August to to the recently released version 6.0.  <a title="Sitecore website" href="http://www.sitecore.net" target="_blank">Sitecore</a> is a highly adaptable and extremely powerful CMS that bit10 chose as its CMS of choice.  After reviewing a fair number of competing offerings (including Amaxus and Ektron), we found Sitecore to be a superior offering.<span id="more-81"></span></p>
<p>Version 6 brings some excellent new features to the table; some which have been present in many other CMS products and others which are pretty unique.  I&#8217;m looking forward to working with it in July/August, which is when I&#8217;ve been scheduled to redevelop the <a title="bit10 website" href="http://www.bit10.net/" target="_blank">bit10</a> website (the final designs for which have been described as &#8220;funky but clean&#8221;).  We&#8217;ll see how it goes; expect to hear more on the topic of Sitecore when the project is done.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.matthewkenny.com/2009/06/sitecore-v6-0/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ASP.Net MVC Framework &#8211; Initial Thoughts</title>
		<link>http://www.matthewkenny.com/2009/06/asp-net-mvc-framework-initial-thoughts/</link>
		<comments>http://www.matthewkenny.com/2009/06/asp-net-mvc-framework-initial-thoughts/#comments</comments>
		<pubDate>Tue, 16 Jun 2009 11:24:11 +0000</pubDate>
		<dc:creator>Matthew Kenny</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[Work]]></category>
		<category><![CDATA[ASP]]></category>
		<category><![CDATA[asp.net]]></category>
		<category><![CDATA[Framework]]></category>
		<category><![CDATA[MVC]]></category>
		<category><![CDATA[Ruby on Rails]]></category>

		<guid isPermaLink="false">http://www.matthewkenny.com/?p=68</guid>
		<description><![CDATA[Having just completed a relatively large project using the newly released ASP.Net MVC Framework, I thought this would be a good time to post my thoughts on the framework.  I have to say that the bulk of my experience with MVC framework comes from my time using Ruby on Rails, so many of my perceptions [...]]]></description>
			<content:encoded><![CDATA[<p>Having just completed a relatively large project using the newly released ASP.Net MVC Framework, I thought this would be a good time to post my thoughts on the framework.  I have to say that the bulk of my experience with MVC framework comes from my time using Ruby on Rails, so many of my perceptions will be coloured by this.<span id="more-68"></span></p>
<p>First of all, for anyone who isn&#8217;t familiar with MVC (or Model View Controller), it&#8217;s a design pattern that emphasises the separation of concerns within the application, essentially: presentation data is kept separate from the application data, which &#8211; in turn &#8211; is separated from the logic relating to data storage, manipulation and retrieval.  The result is &#8211; for the most part &#8211; an application that is surprisingly easy to maintain and adapt.</p>
<p>The idea is to have a controller class, which exposes several public methods &#8211; or, actions &#8211; which can be called by a web request.  These actions execute a task, often involving communication with data storage through the model layer, and then finally pass data to a view, which renders the data and returns that to the user.  Some actions may have filters that run at various stages in the request, and can alter the end result of the request (a common example is to ensure a user is authenticated before processing an action).</p>
<p>For the most part, I have been pleased with the ASP.Net MVC Framework.  It bears striking resemblances in many places to Ruby on Rails, however it is often apparent that the framework is in its early stages as it is not as polished as Ruby on Rails.</p>
<p>Filters were one thing that irritated me somewhat, however they also had some features that I thought were original.  First, I thought that the usage of filters was cumbersome and quite inelegant: filters can be placed either on an action or an all actions in a controller class by decorating the method or class with the appropriate filter attribute.  The result of this method is that your controllers can become a hodgepodge of filter attributes.  I wish I had the syntactic sugar of Ruby on Rails&#8217; <tt>before_filter</tt> function, where it&#8217;s possible to write:</p>
<blockquote><p><tt>before_filter :require_admin, :only =&gt; [:delete, :create, :edit]</tt><br />
<tt>before_filter :require_logged_in, :except =&gt; [:login, :register]</tt></p></blockquote>
<p>I think that something based on the above would be a much neater way of specifying filters.</p>
<p>I liked having access to the &#8220;request context&#8221; from all the main parts of the application.  It serves as a rather straight-forward method of passing data between the layers and of accessing the original request information.  Something that can be difficult to do when you get deep into Rails applications: you lose the context of the request; you can&#8217;t get the original controller action or other request data.</p>
<p>I thought that the approach of using the <tt>ActionResult</tt> type to offload the work of processing each type of result was an excellent idea.  It actually neatly avoids a common source of errors encountered during the development or Rails applications: the &#8220;double render&#8221; error.  This error happens when, for example, a redirect is issued but then the controller continues to issue a view result also (caused because Ruby on Rails controller functions responsible for issuing results do not cause the controller action to return).  Returning the <tt>ActionResult </tt>neatly avoids that issue.</p>
<p>Initially I took great issue with the typical method of passing data into views via the <tt>ViewData</tt> dictionary.  I didn&#8217;t like the lack of strong-typing, the messiness this introduced into the view code, nor the ease with which certain things could be omitted from the dictionary.  I&#8217;m aware that the first and last really also apply to Ruby on Rails: the first I can ignore because Ruby, unlike C#, is dynamically typed; the second however, remains equally valid.  I would like to have some sort of contract between the View and the Controller that specified what data will be supplied, although I&#8217;m aware this is heading more toward the MCP design pattern.</p>
<p>Shortly after my disappointment over the <tt>ViewData</tt> dictionary, I discovered the existence of page models.  The ASP.Net MVC framework allows you to create strongly typed views by use of a page model (in most cases, a class that exposes a number of properties containing information that would normally be passed via the <tt>ViewData</tt>.  It doesn&#8217;t allow you to <em>require </em>values to be passed into the view, but it&#8217;s much better than the alternative.</p>
<p>Then finally we have the Model Binding of the ASP.Net Framework.  This is still a bit of a black art to me; I&#8217;ve not yet had time to sufficiently examine its workings, but it is rather nifty.  It enables the binding of values to objects in the controller and views; this allows controller actions to use model objects (<em>e.g.</em> a user object) as a parameter rather than having a parameter for each field of the user.  It also allows &#8220;sticky fields&#8221; to be implemented very easily in the View.</p>
<p>That&#8217;s all that&#8217;s come to mind right now &#8211; although I&#8217;m certainly sure there are other things that I&#8217;ve overlooked.  You may notice that I&#8217;ve omitted practically any reference to the Model part of MVC; this isn&#8217;t a co-incidence, it&#8217;s an avenue that I&#8217;m leaving open to the possibility of future posts given the fact that the ASP.Net MVC framework does not tie you to one particular ORM like Ruby on Rails does (generally speaking).  It would make the scope of the post far too large, and I feel that this post is pushing the bounds of length regardless.</p>
<p>Anyway, these are my thoughts; if anyone has some other views, contributions or corrections, I look forward to reading them in the comments.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.matthewkenny.com/2009/06/asp-net-mvc-framework-initial-thoughts/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Chocolate Brownies</title>
		<link>http://www.matthewkenny.com/2009/06/chocolate-brownies/</link>
		<comments>http://www.matthewkenny.com/2009/06/chocolate-brownies/#comments</comments>
		<pubDate>Sat, 13 Jun 2009 16:04:34 +0000</pubDate>
		<dc:creator>Matthew Kenny</dc:creator>
				<category><![CDATA[Cooking]]></category>
		<category><![CDATA[Home]]></category>
		<category><![CDATA[baking]]></category>
		<category><![CDATA[brownies]]></category>
		<category><![CDATA[chocolate]]></category>
		<category><![CDATA[chocolate brownies]]></category>
		<category><![CDATA[recipe]]></category>

		<guid isPermaLink="false">http://www.matthewkenny.com/?p=56</guid>
		<description><![CDATA[After doing a bit of baking this weekend I came up with an &#8211; if I do say so myself &#8211; especially good batch of chocolate brownies.  I thought that I&#8217;d share the recipe on here because I know that not everyone who reads this blog is interested in the techie stuff&#8230; and they really [...]]]></description>
			<content:encoded><![CDATA[<p>After doing a bit of baking this weekend I came up with an &#8211; if I do say so myself &#8211; especially good batch of chocolate brownies.  I thought that I&#8217;d share the recipe on here because I know that not everyone who reads this blog is interested in the techie stuff&#8230; and they really are delicious.<span id="more-56"></span></p>
<p>Anyhow, you&#8217;ll need:</p>
<ol>
<li>8oz dark chocolate (I use fairly cheap Tesco own 74% cocoa solids bars)</li>
<li>8oz butter</li>
<li>12oz castar sugar</li>
<li>4 large eggs</li>
<li>6oz flour</li>
</ol>
<p>To make the brownies is pretty easy:</p>
<ol>
<li>Preheat your oven to about 180°C</li>
<li>Break the chocolate up and melt with the butter.  Personally, I find it easier to do this in the microwave &#8211; pop it in for 30 seconds then stir and repeat until the chocolate is all melted.</li>
<li>While you&#8217;re doing that, put the sugar into a big bowl, add the eggs and whisk.</li>
<li>Gradually mix the chocolate into the egg and sugar mixture (keep in mind that, at this point, the mixture will start to cook so don&#8217;t take ages)</li>
<li>Gradually mix in the flour.</li>
<li>Pour the mixture into a baking tray.  I use silicon baking trays, which are flexible and non-stick; if you don&#8217;t have one of these, consider greasing the tray or using greaseproof paper.</li>
<li>Bake in the pre-heated oven for approximately 30-40 minutes (or until cooked).</li>
</ol>
<p>Couldn&#8217;t be easier, and it makes plenty.  If you want gooier centres, then you can probably reduce the cooking time or generally tweak the ratios.  Just don&#8217;t forget to let them cool before you try to dig in!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.matthewkenny.com/2009/06/chocolate-brownies/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>TinyMCE and jQuery validation</title>
		<link>http://www.matthewkenny.com/2009/05/tinymce-and-jquery-validation/</link>
		<comments>http://www.matthewkenny.com/2009/05/tinymce-and-jquery-validation/#comments</comments>
		<pubDate>Thu, 07 May 2009 07:19:58 +0000</pubDate>
		<dc:creator>Matthew Kenny</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[textarea]]></category>
		<category><![CDATA[textbox]]></category>
		<category><![CDATA[tinyMCE]]></category>
		<category><![CDATA[validation]]></category>

		<guid isPermaLink="false">http://www.matthewkenny.com/?p=41</guid>
		<description><![CDATA[I&#8217;ve recently been working on a project using the ASP.Net MVC framework (more on that in a later post perhaps), where the TinyMCE editor was used as the rich text input method of choice.  We hit a snag when it came to applying client-side validation through jQuery: jQuery was validating the textarea before TinyMCE [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve recently been working on a project using the ASP.Net MVC framework (more on that in a later post perhaps), where the TinyMCE editor was used as the rich text input method of choice.  We hit a snag when it came to applying client-side validation through jQuery: jQuery was validating the <tt>textarea</tt> before TinyMCE was filling it in with the editor content.<br />
<span id="more-41"></span><br />
A quick search for &#8216;<tt>TinyMCE jQuery validation</tt>&#8216; turned up a <em>very</em> helpful article by Rebecca Murphy (<a title="jQuery validation and TinyMCE" href="http://blog.rebeccamurphey.com/2009/01/12/jquery-validation-and-tinymce/" target="_blank">link</a>).  This was a godsend for us, as we were worried about having to either scrap TinyMCE or have no client-side validation for any rich text boxes (the horror).  However, it wasn&#8217;t quite what we needed.  We had a page that contained a number of TinyMCE boxes, so we needed to make sure that each one would be properly updated when its associated form submit button was pressed.</p>
<p>Fortunately, after my own trip to the TinyMCE API, I spotted the <tt>init_instance_callback</tt> option, which allowed a function to be called upon the creation of a new editor.  Perfect.  The initial version of the code is below, hopefully if anyone else finds themselves in a tight spot, it might help them out.</p>
<pre name="code" class="javascript">tinyMCE.init({
    mode : 'textareas',
    theme : 'advanced',
    theme_advanced_buttons1 : 'bold,italic,underline',
    theme_advanced_buttons2 : '',
    theme_advanced_buttons3 : '',
    theme_advanced_toolbar_location : 'top',
    theme_advanced_toolbar_align : 'left',
    theme_advanced_statusbar_location : 'bottom',
    init_instance_callback : "initialiseInstance"
});

function initialiseInstance(editor)
{
    //Get the textarea
    var container = $('#' + editor.editorId);

    //Get the form submit buttons for the textarea
    $(editor.formElement).find("input[type=submit]").click(
        function(event)
        {
            container.val(editor.getContent());
        }
    );
}</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.matthewkenny.com/2009/05/tinymce-and-jquery-validation/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>PHP4, IIS6 and 64-bit Windows 2003 Server</title>
		<link>http://www.matthewkenny.com/2008/12/php4-iis6-and-64-bit-windows-2003-server/</link>
		<comments>http://www.matthewkenny.com/2008/12/php4-iis6-and-64-bit-windows-2003-server/#comments</comments>
		<pubDate>Sun, 14 Dec 2008 15:37:02 +0000</pubDate>
		<dc:creator>Matthew Kenny</dc:creator>
				<category><![CDATA[Work]]></category>
		<category><![CDATA[iis]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://www.matthewkenny.com/?p=35</guid>
		<description><![CDATA[
If anyone had asked me how to put these three things together a week ago, I would have cringed; my next reaction would be to suggest upgrading to PHP5, using Apache, and one flavour or another of Linux.  Unfortunately that wasn&#8217;t possible at this point so, armed with the usual developer tools (that is, the [...]]]></description>
			<content:encoded><![CDATA[<div>
<p>If anyone had asked me how to put these three things together a week ago, I would have cringed; my next reaction would be to suggest upgrading to PHP5, using Apache, and one flavour or another of Linux.  Unfortunately that wasn&#8217;t possible at this point so, armed with the usual developer tools (that is, the F1 key and Google), I set out to get things set up&#8230; after all, how hard could it be?<br />
<span id="more-35"></span><br />
While I&#8217;m sure I didn&#8217;t say that last bit out loud, I must have tempted fate as I spent the next day or so spouting obscenities at my poor computer whilst flitting about the internet looking for solutions to one problem or another.  My first suggestion is that you read the <a title="PHP installation instructions" href="http://uk3.php.net/manual/en/install.windows.iis.php" target="_blank">instructions</a> in the PHP manual thoroughly; I glanced over them filled with false bravado based on having installed it on Apache many times, but didn&#8217;t really take note of the specifics.  This proved to be my downfall, as points five and nine of the general considerations were especially important.</p>
<p>Once everything had been done, though, it <em>still</em> didn&#8217;t work &#8211; requests just resulted in a 500 error code.  After investigating the issue, I found that (on some machines) installing a particular version of ActivePerl on a machine can break IIS.  This is because it adds an application mapping for the &#8220;.plx&#8221; file extension, but doesn&#8217;t enter an executable path; and this just breaks the server.  Since I didn&#8217;t need to be able to serve these files, I deleted the mapping and this made everything work.  If you do need to serve this sort of file then I would imagine that entering the appropriate path in the mapping would also solve the problem.</p>
<p>So, I hope that helps someone.</p></div>
]]></content:encoded>
			<wfw:commentRss>http://www.matthewkenny.com/2008/12/php4-iis6-and-64-bit-windows-2003-server/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Matt Gets Certified</title>
		<link>http://www.matthewkenny.com/2008/09/matt-gets-certified/</link>
		<comments>http://www.matthewkenny.com/2008/09/matt-gets-certified/#comments</comments>
		<pubDate>Mon, 01 Sep 2008 19:10:27 +0000</pubDate>
		<dc:creator>Matthew Kenny</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[Work]]></category>
		<category><![CDATA[asp.net]]></category>
		<category><![CDATA[certification]]></category>
		<category><![CDATA[development]]></category>
		<category><![CDATA[sitecore]]></category>

		<guid isPermaLink="false">http://www.matthewkenny.com/?p=31</guid>
		<description><![CDATA[Being my first &#8220;official&#8221; certification, I figured I&#8217;d give it a mention.  A couple of weeks ago I got sent down to London to do some developer training for a CMS that we&#8217;re going to be using quite a bit at the company I work at.  At some point, there&#8217;s also going to be some [...]]]></description>
			<content:encoded><![CDATA[<p>Being my first &#8220;official&#8221; certification, I figured I&#8217;d give it a mention.  A couple of weeks ago I got sent down to London to do some developer training for a <abbr title="Content Management System">CMS</abbr> that we&#8217;re going to be using quite a bit at the company I work at.  At some point, there&#8217;s also going to be some interesting work porting existing customer sites to the <a title="Sitecore website" href="http://www.sitecore.net" target="_blank">Sitecore</a> platform.<br />
<span id="more-31"></span><br />
In the meantime, there&#8217;s one large Sitecore project which I&#8217;m due to start development on in coming weeks; so I&#8217;m looking forward to doing some actual work with it.</p>
<p>I think I might start looking at some proper accreditations in the near future, as they can only help my career prospects, and I think they&#8217;d really be quite interesting.  The question is whether I&#8217;ll have to cough up the money myself or if it will be covered under CPD&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.matthewkenny.com/2008/09/matt-gets-certified/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Lovefilm</title>
		<link>http://www.matthewkenny.com/2008/07/lovefilm/</link>
		<comments>http://www.matthewkenny.com/2008/07/lovefilm/#comments</comments>
		<pubDate>Tue, 15 Jul 2008 21:16:33 +0000</pubDate>
		<dc:creator>Matthew Kenny</dc:creator>
				<category><![CDATA[Web]]></category>
		<category><![CDATA[Lovefilm]]></category>

		<guid isPermaLink="false">http://www.matthewkenny.com/?p=30</guid>
		<description><![CDATA[I recently got a 90 day trial membership on Lovefilm.  If you haven&#8217;t heard of Lovefilm before, it&#8217;s an online DVD rental service where they post the discs out to you and you send them back (keeping them for as long as you want in between).  The trick to it is that you can only [...]]]></description>
			<content:encoded><![CDATA[<p>I recently got a 90 day trial membership on <a title="Lovefilm" href="http://www.lovefilm.com">Lovefilm</a>.  If you haven&#8217;t heard of Lovefilm before, it&#8217;s an online DVD rental service where they post the discs out to you and you send them back (keeping them for as long as you want in between).  The trick to it is that you can only have a certain number of DVDs at your house at any one point, so that gets you to send them back (which is free).</p>
<p>Even though I&#8217;m not paying for it, it&#8217;s definitely well worth the money that they charge for the normal plans.  It&#8217;s great coming home and knowing that you&#8217;ve got something to watch that you haven&#8217;t seen before.  The choice of films is great, and as long as you get plenty of films on your &#8220;to rent&#8221; list, you&#8217;ll never be stuck without.</p>
<p>I think there&#8217;s a perpetual 30 day free trial offer on as well, check it out.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.matthewkenny.com/2008/07/lovefilm/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>New computer</title>
		<link>http://www.matthewkenny.com/2008/07/new-computer/</link>
		<comments>http://www.matthewkenny.com/2008/07/new-computer/#comments</comments>
		<pubDate>Mon, 07 Jul 2008 18:37:22 +0000</pubDate>
		<dc:creator>Matthew Kenny</dc:creator>
				<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://www.matthewkenny.com/?p=29</guid>
		<description><![CDATA[At long last I&#8217;ve finally got my new desktop up and running.   The whole thing rather failed the first time round because I had a dud motherboard; whether that was because it wasn&#8217;t working to start off with or because I wasn&#8217;t careful enough we&#8217;ll never know.

This is my first Intel computer (I&#8217;ve always been [...]]]></description>
			<content:encoded><![CDATA[<p>At long last I&#8217;ve finally got my new desktop up and running.   The whole thing rather failed the first time round because I had a dud motherboard; whether that was because it wasn&#8217;t working to start off with or because I wasn&#8217;t careful enough we&#8217;ll never know.<br />
<span id="more-29"></span><br />
This is my first Intel computer (I&#8217;ve always been a bit of an AMD guy until now), and I have to say that the connection mechanism for the stock heatsink is absolutely atrocious.  It consists of four plastic pins which you have to push down onto the motherboard until they click; simple until one takes into account the pressure required to click the things into place.  The motherboard was flexing quite alarmingly, and you have to do alternate corners at the same time, or one corner will pop out as you push the other in.</p>
<p>Aside from that, it was all fairly easy thankfully.  Now I just need to see about getting some extra hard disks for storage and possibly a new screen&#8230; my dual 15&#8243; screens are getting a bit old, I just need to decide whether I want to stay with a dual screen system or get a big widescreen.  I don&#8217;t think my finances will quite stretch to two widescreens; or my desk space for that matter.</p>
<p>Add in a nice OEM version of Vista and I&#8217;ve got a new favourite toy.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.matthewkenny.com/2008/07/new-computer/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Kung Fu Panda</title>
		<link>http://www.matthewkenny.com/2008/07/kung-fu-panda/</link>
		<comments>http://www.matthewkenny.com/2008/07/kung-fu-panda/#comments</comments>
		<pubDate>Mon, 07 Jul 2008 06:58:31 +0000</pubDate>
		<dc:creator>Matthew Kenny</dc:creator>
				<category><![CDATA[Films]]></category>

		<guid isPermaLink="false">http://www.matthewkenny.com/?p=28</guid>
		<description><![CDATA[Went to see &#8220;Kung Fu Panda&#8221; at the cinema last night.  Even though it&#8217;s a kid&#8217;s film, I really enjoyed it; the film was absolutely hilarious and half the time I couldn&#8217;t help but laugh out loud (but the rest of the audience did too, so that&#8217;s okay).  We were going to see &#8220;Wanted&#8221; but [...]]]></description>
			<content:encoded><![CDATA[<p>Went to see &#8220;Kung Fu Panda&#8221; at the cinema last night.  Even though it&#8217;s a kid&#8217;s film, I really enjoyed it; the film was absolutely hilarious and half the time I couldn&#8217;t help but laugh out loud (but the rest of the audience did too, so that&#8217;s okay).  We were going to see &#8220;Wanted&#8221; but since I haven&#8217;t heard good things about it, I might wait until it comes out on DVD.</p>
<p>Aside from the start, which had a mild overdose of the word &#8220;Awesome&#8221; (intentionally, we later found out; I would highly recommend this film to anyone regardless of age.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.matthewkenny.com/2008/07/kung-fu-panda/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
