<?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>SizzlaBlog &#187; Apps</title>
	<atom:link href="http://www.blog.sizzla-media.co.uk/category/apps/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.blog.sizzla-media.co.uk</link>
	<description>Flash, Web and Javascript development</description>
	<lastBuildDate>Sun, 15 Aug 2010 11:41:24 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
<image>
  <link>http://www.blog.sizzla-media.co.uk</link>
  <url>http://blog.sizzla-media.co.uk/favicon.ico</url>
  <title>SizzlaBlog</title>
</image>
		<item>
		<title>Time for a new web app?</title>
		<link>http://www.blog.sizzla-media.co.uk/2010/08/15/time-for-a-new-web-app/</link>
		<comments>http://www.blog.sizzla-media.co.uk/2010/08/15/time-for-a-new-web-app/#comments</comments>
		<pubDate>Sun, 15 Aug 2010 11:41:24 +0000</pubDate>
		<dc:creator>Leon</dc:creator>
				<category><![CDATA[Apps]]></category>
		<category><![CDATA[CodeIgniter]]></category>
		<category><![CDATA[domain]]></category>
		<category><![CDATA[registration]]></category>
		<category><![CDATA[renewal]]></category>

		<guid isPermaLink="false">http://www.blog.sizzla-media.co.uk/?p=574</guid>
		<description><![CDATA[Sometimes it&#8217;s the simple ideas that prove to be the best. A month or two ago, I got an invoice for a hosting package I set up two years ago for flCodr (which is no longer being developed). It came (&#8230;)</p><p><a href="http://www.blog.sizzla-media.co.uk/2010/08/15/time-for-a-new-web-app/">Read the rest of this entry &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<p>Sometimes it&#8217;s the simple ideas that prove to be the best.</p>
<p>A month or two ago, I got an invoice for a hosting package I set up two years ago for <a href="http://www.flcodr.com">flCodr</a> (which is no longer being developed). It came as a bit of a shock, as there wasn&#8217;t any notification from the hosting company to let me know.</p>
<p>While things like this are really up to me to know, it would have been nice to have a reminder. Many (good) hosting companies do this for you, but you sometimes have hosting and domain reg with two parties, plus for whatever reason you may have different providers for each client/site.</p>
<p>It can quickly become a bit of a nightmare, keeping track of renewal dates.</p>
<p>To solve this I propose to build a really simple web app (still to decide on a name) that will allow you to list all of your hosting and registration details and be notified via email and Twitter when they are due to expire. That&#8217;s it, nothing more. Oh and you can only sign up via Twitter (this does away with a full auth system) &#8211;  no Twitter, no account!</p>
<p>In a nutshell the app will:</p>
<ul>
<li>Auto lookup the <a href="http://www.whois.net/">WhoIs</a> info for each domain entered and try and auto fill details</li>
<li>Allow you to sign up ONLY via <a href="http://developer.twitter.com/pages/auth">Twitter oAuth</a>. Avatar, display name and email (I think) will be pulled from Twitter.</li>
<li>Notify you via email, (if you allow it) via Twitter (DM only &#8211; you probably don&#8217;t want the whole world knowing that http://www.kinkyladyboys is ready for renewal) and for iOS (<a href="http://prowl.weks.net/">prowl</a> or <a href="https://boxcar.io/help/api/providers">Boxcar</a>)</li>
<li>Allow you to specify the notification period (month, week, day before)</li>
<li>Allow you to notify (via email only) a third party (maybe an accounts dept)</li>
<li>Assign an action next to each service (free text input that gets sent with the notification)</li>
</ul>
<p>Hopefully this is something that I should be able to knock together fairly quickly using CodeIgniter.</p>
<p>If you have any thoughts, ideas or feedback (or a name for the service) then please sound off in the comments!</p>
<p>I&#8217;ll throw some wireframes together soon, and get them online!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.blog.sizzla-media.co.uk/2010/08/15/time-for-a-new-web-app/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>First post from my iPad</title>
		<link>http://www.blog.sizzla-media.co.uk/2010/05/29/first-post-from-my-ipad/</link>
		<comments>http://www.blog.sizzla-media.co.uk/2010/05/29/first-post-from-my-ipad/#comments</comments>
		<pubDate>Sat, 29 May 2010 07:22:00 +0000</pubDate>
		<dc:creator>Leon</dc:creator>
				<category><![CDATA[Apps]]></category>
		<category><![CDATA[General Info]]></category>
		<category><![CDATA[iPad apple app]]></category>

		<guid isPermaLink="false">http://www.blog.sizzla-media.co.uk/2010/05/29/first-post-from-my-ipad/</guid>
		<description><![CDATA[If you already follow me on Twitter you will already know that I am now the proud father of Apple&#8217;s latest device. Like most of the purchases I make from Apple, this was one of want rather than need. However (&#8230;)</p><p><a href="http://www.blog.sizzla-media.co.uk/2010/05/29/first-post-from-my-ipad/">Read the rest of this entry &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<p>If you already follow me on Twitter you will already know that I am now the proud father of Apple&#8217;s latest device. </p>
<p>Like most of the purchases I make from Apple, this was one of want rather than need. However saying that, this is worth all of the four hundred and twenty nine pounds that it was exchanged for. </p>
<p>This post is obviously being written on the wonderful WordPress for iPad app and is a joy to use. </p>
<p>There isn&#8217;t really much more to say really, any of you who own an iPad will understand just how amazing this thing really is. </p>
<p>Oh and if you haven&#8217;t already checked out Vimeo and iPlayer yet on an iPad, go and do so&#8230;. Now!</p>
<p>They are both shining examples of why flash isn&#8217;t needed for video online (that&#8217;s not to say flash doesn&#8217;t have its uses online &#8211; I&#8217;m a flash dev and there are times when using flash was not only the best choice but the only choice).  </p>
]]></content:encoded>
			<wfw:commentRss>http://www.blog.sizzla-media.co.uk/2010/05/29/first-post-from-my-ipad/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Essential tools for Web Dev/Design on a Mac</title>
		<link>http://www.blog.sizzla-media.co.uk/2009/06/07/essential-tools-for-web-dev-design-on-a-mac/</link>
		<comments>http://www.blog.sizzla-media.co.uk/2009/06/07/essential-tools-for-web-dev-design-on-a-mac/#comments</comments>
		<pubDate>Sun, 07 Jun 2009 09:48:21 +0000</pubDate>
		<dc:creator>Leon</dc:creator>
				<category><![CDATA[Apps]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[coda]]></category>
		<category><![CDATA[mamp]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[sequel pro]]></category>

		<guid isPermaLink="false">http://www.blog.sizzla-media.co.uk/?p=316</guid>
		<description><![CDATA[It&#8217;s no suprise &#8211; i&#8217;m a BIG Apple fan. I own an iPhone, iMac, MacBook and Apple TV. It&#8217;s not just the design and aesthetics that I love but the whole UI and user experience aswell as the great software (&#8230;)</p><p><a href="http://www.blog.sizzla-media.co.uk/2009/06/07/essential-tools-for-web-dev-design-on-a-mac/">Read the rest of this entry &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<p>It&#8217;s no suprise &#8211; i&#8217;m a BIG Apple fan. I own an iPhone, iMac, MacBook and Apple TV. It&#8217;s not just the design and aesthetics that I love but the whole UI and user experience aswell as the great software that gets attracted to the platform.</p>
<p>Sure, there are other products that work or have the same features as Apple do &#8211; but they don&#8217;t seem to be able to pull it off in the same way.</p>
<p>So enough of the usual Apple fanboy babble, onto this post which is about three essential tools for anyone doing any Web Development on a Mac. I have included a local server, code editor and database management tool. I&#8217;m not going to go too in depth with each one &#8211; i&#8217;ll leave that for you to go and discover, but trust me they are all worth having on your system.</p>
<p><a href="http://www.mamp.info/en/index.html" target="_blank">Mamp</a> &#8211; local server</p>
<p><a href="http://www.panic.com/coda/" target="_blank">Coda</a> &#8211; code editor</p>
<p><a href="http://www.sequelpro.com/" target="_blank">Sequel Pro</a> &#8211; MySQL database manager</p>
<p><a href="http://site.ringce.com/products/slammer/slammer.html" target="_blank">Slammer</a> &#8211; grid system overlay tool</p>
<p><a href="http://www.balsamiq.com/" target="_blank">Balsamiq Mockups</a> &#8211; rapid wireframing</p>
<p><a href="http://www.adobe.com/products/creativesuite/" target="_blank">Fireworks/Photoshop</a> &#8211; design</p>
<p><a href="http://www.realmacsoftware.com/littlesnapper/" target="_blank">Little Snapper</a> &#8211; screenshot/annotation tool</p>
<p><a href="http://www.atebits.com/tweetie-mac/" target="_blank">Tweetie</a> &#8211; to subscribe to brilliant resources</p>
<p><a href="http://www.spotify.com/en/" target="_blank">Spotify</a> &#8211; you need to listen to tunes while you work right?</p>
]]></content:encoded>
			<wfw:commentRss>http://www.blog.sizzla-media.co.uk/2009/06/07/essential-tools-for-web-dev-design-on-a-mac/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Aspect Ratio Calculator</title>
		<link>http://www.blog.sizzla-media.co.uk/2008/12/19/aspect-ratio-calculator/</link>
		<comments>http://www.blog.sizzla-media.co.uk/2008/12/19/aspect-ratio-calculator/#comments</comments>
		<pubDate>Fri, 19 Dec 2008 12:48:07 +0000</pubDate>
		<dc:creator>Leon</dc:creator>
				<category><![CDATA[Apps]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[extension]]></category>
		<category><![CDATA[flash]]></category>
		<category><![CDATA[panel]]></category>

		<guid isPermaLink="false">http://www.blog.sizzla-media.co.uk/?p=207</guid>
		<description><![CDATA[This is my latest Flash extension panel &#8211; Ratio Calc. We&#8217;ve all been there, creating a video player for an application and having the task of working out the aspect ratio, or perhaps resizing images or even just trying to (&#8230;)</p><p><a href="http://www.blog.sizzla-media.co.uk/2008/12/19/aspect-ratio-calculator/">Read the rest of this entry &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<p><img class="alignnone size-full wp-image-210" title="Ratio Calc" src="http://www.blog.sizzla-media.co.uk/wp-content/uploads/2008/12/picture-4.png" alt="Ratio Calc" width="216" height="424" /></p>
<p>This is my latest Flash extension panel &#8211; Ratio Calc.</p>
<p>We&#8217;ve all been there, creating a video player for an application and having the task of working out the aspect ratio, or perhaps resizing images or even just trying to work out the size of the stage. This tool will do it for you with a few simple clicks and it&#8217;s free.</p>
<p>The <strong>aspect ratio</strong> of a <a title="Shape" href="http://en.wikipedia.org/wiki/Shape"><span style="text-decoration: none;">shape</span></a> is the ratio of its longer <a title="Dimension" href="http://en.wikipedia.org/wiki/Dimension"><span style="text-decoration: none;">dimension</span></a> to its shorter dimension. It may be applied to two characteristic dimensions of a three-dimensional shape, such as the ratio of the longest and shortest axis, or for symmetrical objects that are described by just two measurements, such as the length and diameter of a rod.</p>
<p>The tool will work out dimensions for the following common aspect ratio&#8217;s:</p>
<blockquote>
<ul>
<li>4:3</li>
<li>16:9</li>
<li>1600:1200</li>
<li>1024:768</li>
<li>800:600</li>
<li>640:480</li>
<li>760:500</li>
</ul>
</blockquote>
<p>The tool is simple to use and has three steps:</p>
<blockquote>
<ol>
<li>Select the desired ratio and then press next</li>
<li>Select which dimension you want to find</li>
<li>Type in the dimension you know.</li>
</ol>
</blockquote>
<p>The tool will then display the dimension, simple as that!</p>
<p>To download the tool click on the icon below</p>
<p><a title="Download Ratio Calc" href="http://www.blog.sizzla-media.co.uk/wp-content/uploads/2008/12/ratio-calcmxp.zip" target="_self"><img class="alignnone size-full wp-image-215" title="download_64" src="http://www.blog.sizzla-media.co.uk/wp-content/uploads/2008/12/download_64.png" alt="download_64" width="64" height="64" /></a></p>
<p>To see a demo click <a title="Demo" href="http://blog.sizzla-media.co.uk/project_files/ratio_calc/RatioCalc.html" target="_blank">here</a></p>
<p>This tool is being provided for free by Leon Barrett (me). Please distribute freely but do not sell on for any sum of money!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.blog.sizzla-media.co.uk/2008/12/19/aspect-ratio-calculator/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Where is TwitterEagle?</title>
		<link>http://www.blog.sizzla-media.co.uk/2008/10/21/where-is-twittereagle/</link>
		<comments>http://www.blog.sizzla-media.co.uk/2008/10/21/where-is-twittereagle/#comments</comments>
		<pubDate>Tue, 21 Oct 2008 18:00:03 +0000</pubDate>
		<dc:creator>Leon</dc:creator>
				<category><![CDATA[Apps]]></category>
		<category><![CDATA[twittereagle]]></category>

		<guid isPermaLink="false">http://www.blog.sizzla-media.co.uk/?p=168</guid>
		<description><![CDATA[It&#8217;s been almost a month since I announced TwitterEagle and there is nothing to show (apart from a logo). Sorry about that, i&#8217;ve been rather busy and have not had much time to spend on the project. Hopefully, in a (&#8230;)</p><p><a href="http://www.blog.sizzla-media.co.uk/2008/10/21/where-is-twittereagle/">Read the rest of this entry &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<p>It&#8217;s been almost a month since I announced TwitterEagle and there is nothing to show (apart from a logo).</p>
<p>Sorry about that, i&#8217;ve been rather busy and have not had much time to spend on the project.</p>
<p>Hopefully, in a month from now I will have something up and running.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.blog.sizzla-media.co.uk/2008/10/21/where-is-twittereagle/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Facebook style Flash interface</title>
		<link>http://www.blog.sizzla-media.co.uk/2008/08/18/facebook-style-flash-interface/</link>
		<comments>http://www.blog.sizzla-media.co.uk/2008/08/18/facebook-style-flash-interface/#comments</comments>
		<pubDate>Mon, 18 Aug 2008 13:21:30 +0000</pubDate>
		<dc:creator>Leon</dc:creator>
				<category><![CDATA[Apps]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[facebook]]></category>
		<category><![CDATA[modal window]]></category>

		<guid isPermaLink="false">http://www.blog.sizzla-media.co.uk/?p=148</guid>
		<description><![CDATA[Here is my latest offering of notification alerts to Flash &#8211; a Facebook style pop up window that supports basic html formatting. It seems that the power of Facebook is everywhere (just take a look at flCodr [try clicking on (&#8230;)</p><p><a href="http://www.blog.sizzla-media.co.uk/2008/08/18/facebook-style-flash-interface/">Read the rest of this entry &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.blog.sizzla-media.co.uk/wp-content/uploads/2008/08/screengrab.jpg" rel="lightbox"><img class="alignnone size-full wp-image-149" title="screengrab" src="http://www.blog.sizzla-media.co.uk/wp-content/uploads/2008/08/screengrab.jpg" alt="" width="500" height="372" /></a></p>
<p>Here is my latest offering of notification alerts to Flash &#8211; a Facebook style pop up window that supports basic html formatting.</p>
<p>It seems that the power of Facebook is everywhere (just take a look at <a href="http://www.flcodr.com" target="_blank">flCodr</a> [try clicking on the download link]- its using the Facebox javascript code to create modal dialoge boxes).</p>
<p>I couldn&#8217;t resist creating my own version just for Flash. This one is a simple AS2.0 version that uses the tween and easing classes to add a bit of animation aswell.</p>
<p>Take a look at it <a href="http://www.blog.sizzla-media.co.uk/fb_window/Facebook_Window.html" target="_blank">here</a> and come back for some info about how it works.</p>
<p><strong>Setting it all up</strong></p>
<p>When you open up the .fla you will see the following code on the actions layer:</p>
<blockquote><p>stop();</p>
<p>#include &#8220;copyright.as&#8221;<br />
#include &#8220;fb_actions.as&#8221;</p>
<p>createFeedbackPopUpBox(&#8220;Facebook style pop up winodw&#8221;,65,82,&#8221;This is a nifty little Facebook style pop up window for your Flash applications that is really simple to implement!!&lt;br&gt;&lt;br&gt;It even supports basic HTML such as &lt;b&gt;bold&lt;/b&gt; and &lt;ul&gt;&lt;li&gt;Unordered lists&lt;/li&gt;&lt;/ul&gt;&#8221;)</p></blockquote>
<p>The first include is the copyright notice and must be kept intact. If I see anyone using it online without the notice I will hunt you down and kill you (not literally, but I will be really pissed off!!). This script basically replaces the right click context menu and replaces it with a link back to this site. You can find more scripts for protecting your swf&#8217;s over at flCodr.</p>
<p>The second include contains the function&#8217;s that allow the thing to work. I could go through everyline but its pretty straighforward. The box is positioned according to the values passed into the function, the box is faded from 0 to 100% alpha, once the fade is completed the text is added.</p>
<p>To remove the opposite process is followed and the box is placed off the screen.</p>
<p>Arguably I could have used the attachMovieClip  and removeMovieClip functions, but this is much simpler, quicker and eaiser.</p>
<p><strong>Making it happen</strong></p>
<p>To make the popup box just call the following function:</p>
<p>createFeedbackPopUpBox(title,xposition,yposition,bodyText)</p>
<p>title &#8211; This is the title that gets displayed, contained within quotes. it could easily be a variable name &#8211; just loose the quotes.</p>
<p>xposition &#8211; The X position of the window on the screen</p>
<p>yposition &#8211; The Y position of the window on the screen</p>
<p>bodyText &#8211; The string (requires quotes) or variable name that should be displayed as the body text, It can contain basic HTML such as bold, un-ordered lists and hyperlinks.</p>
<p>Thats it &#8211; nice and simple.</p>
<p>Grab the <a href="http://www.blog.sizzla-media.co.uk/fb_window/assets.zip" target="_blank">files here</a>!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.blog.sizzla-media.co.uk/2008/08/18/facebook-style-flash-interface/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Sorted!!</title>
		<link>http://www.blog.sizzla-media.co.uk/2008/08/08/sorted/</link>
		<comments>http://www.blog.sizzla-media.co.uk/2008/08/08/sorted/#comments</comments>
		<pubDate>Fri, 08 Aug 2008 08:17:26 +0000</pubDate>
		<dc:creator>Leon</dc:creator>
				<category><![CDATA[Apps]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[flash]]></category>
		<category><![CDATA[GMap]]></category>
		<category><![CDATA[google analytics]]></category>

		<guid isPermaLink="false">http://www.blog.sizzla-media.co.uk/?p=128</guid>
		<description><![CDATA[After many hours of hard work by the team here at the SizzlaMedia offices (ok just me, in the study) the problem with the GMap powered apps has been fixed. Turns out a Google Analytics script was somehow appearing in (&#8230;)</p><p><a href="http://www.blog.sizzla-media.co.uk/2008/08/08/sorted/">Read the rest of this entry &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<p>After many hours of hard work by the team here at the SizzlaMedia offices (ok just me, in the study) the problem with the GMap powered apps has been fixed. Turns out a Google Analytics script was somehow appearing in the Flash apps.</p>
<p>Once I removed the script everything seemed to work just fine!</p>
<p>Hopefully we won&#8217;t see any more errors popping up!!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.blog.sizzla-media.co.uk/2008/08/08/sorted/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Testing from iphone app</title>
		<link>http://www.blog.sizzla-media.co.uk/2008/07/22/testing-from-iphone-app/</link>
		<comments>http://www.blog.sizzla-media.co.uk/2008/07/22/testing-from-iphone-app/#comments</comments>
		<pubDate>Tue, 22 Jul 2008 06:16:58 +0000</pubDate>
		<dc:creator>Leon</dc:creator>
				<category><![CDATA[Apps]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[app]]></category>
		<category><![CDATA[native]]></category>

		<guid isPermaLink="false">http://www.blog.sizzla-media.co.uk/?p=261</guid>
		<description><![CDATA[Just testing to see how well the native iPhone app works. Its breeze to set up and use. I&#8217;ve been waiting for this one, so far, so good!!]]></description>
			<content:encoded><![CDATA[<p>Just testing to see how well the native iPhone app works. Its breeze to set up and use. I&#8217;ve been waiting for this one, so far, so good!!</p>
<p><a href="http://www.blog.sizzla-media.co.uk/wp-content/uploads//p-640-480-e4f32503-f9a7-47e5-928a-b39deadc4b83.jpeg" rel="lightbox"><img src="http://www.blog.sizzla-media.co.uk/wp-content/uploads//p-640-480-e4f32503-f9a7-47e5-928a-b39deadc4b83.jpeg" alt="photo" width="225" height="300" class="alignnone size-full wp-image-364" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.blog.sizzla-media.co.uk/2008/07/22/testing-from-iphone-app/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Creating Cross Platform CD-Roms</title>
		<link>http://www.blog.sizzla-media.co.uk/2008/06/04/creating-cross-platform-cd-roms/</link>
		<comments>http://www.blog.sizzla-media.co.uk/2008/06/04/creating-cross-platform-cd-roms/#comments</comments>
		<pubDate>Wed, 04 Jun 2008 21:36:59 +0000</pubDate>
		<dc:creator>Leon</dc:creator>
				<category><![CDATA[Apps]]></category>
		<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[flash]]></category>
		<category><![CDATA[autorun]]></category>
		<category><![CDATA[cd]]></category>
		<category><![CDATA[compatible]]></category>
		<category><![CDATA[cross platform]]></category>
		<category><![CDATA[Mac]]></category>
		<category><![CDATA[window]]></category>

		<guid isPermaLink="false">http://www.blog.sizzla-media.co.uk/?p=241</guid>
		<description><![CDATA[Back in my University days having a Mac was not always fun in a Windows dominated campus. I always had to ensure that my disc&#8217;s were able to be read in a Windows machine, even though they were burned on (&#8230;)</p><p><a href="http://www.blog.sizzla-media.co.uk/2008/06/04/creating-cross-platform-cd-roms/">Read the rest of this entry &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<p>Back in my University days having a Mac was not always fun in a Windows dominated campus. I always had to ensure that my disc&#8217;s were able to be read in a Windows machine, even though they were burned on a Mac. After looking over some of my files I decided to share with the world some of the code snippets I found along the way. This posts concerns <em><strong>creating cross plaform Flash CD-Roms, inparticular opening folders from projectors</strong></em>.</p>
<p><strong>Auto Run</strong></p>
<p>Due to a security vulnerability in OS X 8 (i think!) the auto run feature was disabled on a Mac, however there was an option to open the root folder by default (a really easy option using Toast Titanium).</p>
<p>In Windows an <em>autorun.inf</em> file should be created. This can display an icon and launch an .exe or .bat file as well as set the label for the disc.</p>
<blockquote><p>[autorun]<br />
open=myApp.exe<br />
label=My App<br />
icon=myApp.ico</p></blockquote>
<p>As previously mentioned by using Toast Titanium on the Mac it is very easy to open up a folder containing the .app file to launch. You can also specify which folders and files should be seen by each operating system.</p>
<p><strong>Opening Folders from Flash</strong></p>
<p>Opening folders or files from Flash is a bit of a work around these days. Before Flash MX 2004 it was relatively easy to do, but after a security vulnerability this freedom was closed down. You now need to place your .exe or .app files in a folder called <strong>fscommand. </strong>It has to be this AND ONLY this. This fscommand folder must be at the same level as the Flash projector. i.e</p>
<p>My Folder &gt;</p>
<p>myProjector.exe</p>
<p>myProjector.app</p>
<p>fscommand</p>
<p>You may be thinking &#8220;how do I open up an application from here then?&#8221;</p>
<p>The answer is to use a helper file; in Windows an .exe and in Mac an AppleScript file saved as an .app. I will show you how to open a folder from a Flash projector as this was an issue I had problems with as a student when trying to create an interactive CV. There are various ways, but these methods seem the most robust. Both methods use the exec parameter from the fscommand:</p>
<blockquote><p>fscommand(&#8220;exec&#8221;,&#8221;AppName&#8221;)</p></blockquote>
<p><strong>Windows</strong></p>
<p>In Windows the process is a bit of a bitch. You can thank the creators of <strong>the first Flash virus</strong> (<a title="the first Flash virus" href="http://www.sophos.com/virusinfo/analyses/swflfm926.html" target="_blank"><strong>SWF/LFM-926</strong></a>) for the fact that every version of the stand-alone Flash player since Flash MX has restricted the use of the EXEC command. This change made it impossible for anyone to create any new Flash based viruses, but it also <strong>crippled the Flash projector as a tool for legitimate users</strong> by instantly rendering many free projector extension tools useless.</p>
<p>There are <strong>four key restrictions</strong> that you have to keep in mind when working with the EXEC fscommand and standalone Flash projectors. <strong>(i)</strong> Executables you want to run via the EXEC fscommand have to be in a special sandboxed folder called <strong>fscommand</strong> in the same directory as the projector. <strong>(ii)</strong> You can&#8217;t specify a path in the EXEC command, just a filename. If the specified file is not found in the fscommand folder, it won&#8217;t run. <strong>(iii)</strong> The only argument allowed by the EXEC fscommand is a filename, there is no way to pass arguments to the executables that you want to run. <strong>(iv)</strong> You can&#8217;t use EXEC from an SWF file, it will only work from a projector (EXE). The last restriction doesn&#8217;t really concern us, but if you&#8217;re trying to test your EXEC calls, being aware of it will save you some frustration.</p>
<p>One solution to get around the limitations of the EXEC fscommand is to create one exectuable file for each file that you want to open, but what can you do if you don&#8217;t know how to make EXE files? Windows and Flash both consider a BAT file as an executable file so the easy solution is to create a BAT file for each file you want to open and EXEC the BAT file from Flash. You don&#8217;t need to be a BAT file wizard to do this, the simple one-liner below (let&#8217;s call it mydoc.bat) will do the trick:</p>
<blockquote><p>start mydoc.pdf</p></blockquote>
<p>That example assumes that both mydoc.bat and mydoc.pdf are in the fscommand folder. You can change the BAT file to launch the PDF file from anywhere you like, as long as you can create a valid path to the file. Now all you have to do is create a BAT file for every file you want to open and call it from Flash like this:</p>
<blockquote><p>fscommand(&#8220;exec&#8221;, &#8220;mydoc.bat&#8221;);</p></blockquote>
<p>The only problem with this approach is that your user is going to see the <strong>ugly black DOS box</strong> appear every time they open a file. That&#8217;s where the proxy utility can help you create a more professional looking end product for your users. <strong>Proxy is able to launch BAT files and suppress the ugly DOS box</strong>.</p>
<p>The proxy file will launch a .bat file with the same name. Inside the .bat file the following code should be placed. This will simply open up an Explorer (not Internet Explorer) Window for the specified folder. The path is relative to the .bat file.</p>
<blockquote><p>%SystemRoot%\explorer.exe &#8220;<em>FolderName</em>&#8220;</p></blockquote>
<p>The proxy.exe file needed can be found in the <strong>zip below</strong>. The only rule is that the .exe and .bat file must have the same name. To open up multiple folders, simply create new .bat files and copy/rename the .exe to suit.</p>
<p><strong>Mac</strong></p>
<p>Doing the same thing in Mac is a bit easier. You simply need to use an AppleScript file. The code below will open a new Finder window displaying the contents of the specified folder on the specified disk.  Replace DiskName with the name of the disk. This is better than Windows as the name of the disc will never change, where you can never be certain of the drive letter.</p>
<blockquote><p><span><strong>tell</strong></span><span> </span>application<span> </span><span>&#8220;Finder&#8221;</span></p>
<p><span><span> </span></span>activate</p>
<p><span><span> </span></span>make<span> </span>new<span> </span>Finder window<span> </span>to<span> </span>disk<span> </span><span>&#8220;<em>DiskName</em>&#8220;</span></p>
<p><span> </span></p>
<p><span><span> </span></span><span><strong>set</strong></span><span> </span><span>target</span><span> </span><span><strong>of</strong></span><span> </span><span>Finder window</span><span> </span>1<span> </span><span><strong>to</strong></span><span> </span><span>folder</span><span> </span><em><span style="font-style: normal;">&#8220;</span>FolderName</em>&#8220;<span> </span><span><strong>of</strong></span><span> </span><span>folder</span><span> </span>&#8220;fscommand&#8221;<span> </span><span><strong>of</strong></span><span> </span><span>disk</span><span> </span>&#8220;<em>DiskName</em>&#8221;</p>
<p><strong>end</strong><span> </span><strong>tell</strong></p></blockquote>
<p>If you don&#8217;t know how to write AppleScript, don&#8217;t fear &#8211; just follow these steps (you will need a Mac, or know somebody that has one!):</p>
<ol>
<li>Open Applications &gt; AppleScript.</li>
<li>Open the Script editor.</li>
<li>You can cheat by hitting the record button and opening the folder/file you wish.</li>
<li>Click Stop and look at the code.</li>
<li>Substitute and system specific folders (such as your username).</li>
<li>Save the file as an Application.</li>
</ol>
<p>So now we have the command for Flash and the Windows and Mac helper files to launch our folders. The next step would be to create some actionscript that will handle launching our folders. Lets assume that on our disc we want to open five folders. For ease of use, name these folders &#8211; folder0, folder1, folder2, folder3, folder4.</p>
<p>We can then set up a loop and attach to buttons to launch a file.</p>
<p><strong>Telling the difference</strong></p>
<p>Use this script below to call either the Windows .exe or the Mac .app helper file:</p>
<blockquote><p>if (platform==&#8221;WIN&#8221;){<br />
fscommand(&#8220;exec&#8221;, which + &#8220;.exe&#8221;);<br />
}else{<br />
fscommand(&#8220;exec&#8221;, which);<br />
}</p></blockquote>
<p>That&#8217;s it, you should now be set to get creating cross platform CD&#8217;s. The zip file below contains a sample .exe, .bat and Applesctipt file.</p>
<p>Download source files <a href="http://www.blog.sizzla-media.co.uk/wp-content/uploads//crossplatformfiles.zip">crossplatformfiles</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.blog.sizzla-media.co.uk/2008/06/04/creating-cross-platform-cd-roms/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Creating search plug-ins</title>
		<link>http://www.blog.sizzla-media.co.uk/2008/05/08/creating-search-plug-ins/</link>
		<comments>http://www.blog.sizzla-media.co.uk/2008/05/08/creating-search-plug-ins/#comments</comments>
		<pubDate>Thu, 08 May 2008 19:06:30 +0000</pubDate>
		<dc:creator>Leon</dc:creator>
				<category><![CDATA[Apps]]></category>
		<category><![CDATA[flcodr]]></category>
		<category><![CDATA[firefox]]></category>
		<category><![CDATA[search plugin]]></category>

		<guid isPermaLink="false">http://www.blog.sizzla-media.co.uk/?p=235</guid>
		<description><![CDATA[This post is for any web site owner who wants to add a search plugin for their site. If your not too sure what I mean, then take a look in the top right corner of your browser next to (&#8230;)</p><p><a href="http://www.blog.sizzla-media.co.uk/2008/05/08/creating-search-plug-ins/">Read the rest of this entry &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.blog.sizzla-media.co.uk/wp-content/uploads//logo-do-firefox.jpg" rel="lightbox"><img class="alignnone size-medium wp-image-92" src="http://www.blog.sizzla-media.co.uk/wp-content/uploads//logo-do-firefox.jpg" alt="" width="202" height="194" /></a></p>
<p>This post is for any web site owner who wants to add a search plugin for their site.</p>
<p>If your not too sure what I mean, then take a look in the top right corner of your browser next to the address bar, and you will see another input box. This allows you to search directly from the browser. If your using Firefox your default search in normally Google and for IE user its Live Search. There is a method to add your site so that users can find content without first having to go to your site. (take a look at <a href="http://www.flcodr.com" target="_blank">flCodr.com</a> to see this &#8211; simply click on the drop down box arrow and click &#8216;Add flCodr&#8217;).</p>
<p>The plugin takes the form of an XML file which holds some configuration settings such is icon, description and search parameters.</p>
<p>The XML file describing a search engine is actually quite simple, following the basic template below. Sections in bold need to be customized based on the needs of the specific search engine plugin you&#8217;re writing. Take a look below for more info. You can also find out more <a href="http://developer.mozilla.org/en/docs/Creating_OpenSearch_plugins_for_Firefox" target="_blank">here</a>.</p>
<pre>&lt;OpenSearchDescription xmlns="http://a9.com/-/spec/opensearch/1.1/"
xmlns:moz="http://www.mozilla.org/2006/browser/search/"&gt;
&lt;ShortName&gt;<strong>engineName</strong>&lt;/ShortName&gt;
&lt;Description&gt;<strong>engineDescription</strong>&lt;/Description&gt;
&lt;InputEncoding&gt;<strong>inputEncoding</strong>&lt;/InputEncoding&gt;
&lt;Image width="16" height="16"&gt;data:image/x-icon;base64,<strong>imageData</strong>&lt;/Image&gt;
&lt;Url type="text/html" method="<strong>method</strong>" template="<strong>searchURL</strong>"&gt;
&lt;Param name="<strong>paramName1</strong>" value="<strong>paramValue1</strong>"/&gt;
...
&lt;Param name="<strong>paramNameN</strong>" value="<strong>paramValueN</strong>"/&gt;
&lt;/Url&gt;
&lt;Url type="application/x-suggestions+json" template="<strong>suggestionURL</strong>"/&gt;
&lt;moz:SearchForm&gt;<strong>searchFormURL</strong>&lt;/moz:SearchForm&gt;
&lt;/OpenSearchDescription&gt;</pre>
<dl>
<dt> <strong>ShortName</strong> </dt>
<dd> A short name for the search engine. </dd>
</dl>
<dl>
<dt> <strong>Description</strong> </dt>
<dd> A brief description of the search engine. </dd>
</dl>
<dl>
<dt> <strong>InputEncoding</strong> </dt>
<dd> The encoding to use for the data input to the search engine. </dd>
</dl>
<dl>
<dt> <strong>Image</strong> </dt>
<dd> Base-64 encoded 16&#215;16 icon representative of the search engine. One useful tool that you can use to construct the data to place here can be found here: <a class="external text" title="http://software.hixie.ch/utilities/cgi/data/data" rel="nofollow" href="http://software.hixie.ch/utilities/cgi/data/data">The data: URI kitchen</a>. </dd>
</dl>
<dl>
<dt> <strong>Url</strong> </dt>
<dd> Describes the URL or URLs to use for the search.  The <code>method</code> attribute indicates whether to use a <code>GET</code> or <code>POST</code> request to fetch the result.  The <code>template</code> attribute indicates the base URL for the search query. </dd>
<dd>
<div class="note"><strong>Note:</strong> Internet Explorer 7 does not support <code>POST</code> requests.</div>
</dd>
</dl>
<dl>
<dd> There are two URL types Firefox supports: </dd>
</dl>
<ul>
<li> <code>type="text/html"</code> is used to specify the URL for the actual search query itself.</li>
<li> <code>type="application/x-suggestions+json"</code> is used to specify the URL to use for fetching search suggestions.</li>
</ul>
<dl>
<dd> For either type of URL, you can use <code>{searchTerms}</code> to substitute the search terms entered by the user in the search bar. Other supported dynamic search parameters are described in <a class="external text" title="http://www.opensearch.org/Specifications/OpenSearch/1.1/Draft_3#OpenSearch_1.1_parameters" rel="nofollow" href="http://www.opensearch.org/Specifications/OpenSearch/1.1/Draft_3#OpenSearch_1.1_parameters">OpenSearch 1.1 parameters</a>. </dd>
</dl>
<dl>
<dd> For search suggestion queries, the specified URL template is used to fetch a suggestion list in JavaScript Object Notation (JSON) format. For details on how to implement search suggestion support on a server, see <a title="Supporting search suggestions in search plugins" href="http://developer.mozilla.org/en/docs/Supporting_search_suggestions_in_search_plugins">Supporting search suggestions in search plugins</a>. </dd>
</dl>
<p><a class="image" title="Image:SearchSuggestionSample.png" href="http://developer.mozilla.org/en/docs/Image:SearchSuggestionSample.png" rel="lightbox"><img longdesc="/en/docs/Image:SearchSuggestionSample.png" src="http://developer.mozilla.org/wiki-images/en/1/1b/SearchSuggestionSample.png" alt="Image:SearchSuggestionSample.png" width="230" height="151" /></a></p>
<dl>
<dt> <strong>Param</strong> </dt>
<dd> The parameters that need to be passed in along with the search query, as key/value pairs.  When specifying values, you can use <code>{searchTerms}</code> to insert the search terms entered by the user in the search bar. </dd>
<dd>
<div class="note"><strong>Note:</strong> Internet Explorer 7 does not support this element.</div>
</dd>
</dl>
<dl>
<dt> <strong>SearchForm</strong> </dt>
<dd> The URL to go to to open up the search page at the site for which the plugin is designed to search. This provides a way for Firefox to let the user visit the web site directly. </dd>
<dd>
<div class="note"><strong>Note:</strong> Since this element is Firefox-specific, and not part of the OpenSearch specification, we use the &#8220;<code>moz:</code>&#8221; XML namespace prefix in the example above to ensure that other user agents that don&#8217;t support this element can safely ignore it.</div>
</dd>
</dl>
<p><a name="Autodiscovery_of_search_plugins"></a></p>
<h1><span class="mw-headline"><br />
</span></h1>
<p>A web site that offers a search plugin can advertise it so that Firefox users can easily download and install the plugin.</p>
<p>To support autodiscovery, you simply need to add one line to the <code>&lt;head&gt;</code> section of your web page:</p>
<pre>&lt;link rel="search" type="application/opensearchdescription+xml" title="<em>searchTitle</em>" href="<em>pluginURL</em>"&gt;</pre>
<p>Replace the italicized items as explained below:</p>
<dl>
<dt> <strong>searchTitle</strong> </dt>
<dd> The name of the search to perform, such as &#8220;Search MDC&#8221; or &#8220;Yahoo! Search&#8221;. This value should match your plugin file&#8217;s ShortName. </dd>
</dl>
<dl>
<dt> <strong>pluginURL</strong> </dt>
<dd> The URL to the XML search plugin, from which the browser can download it. </dd>
</dl>
]]></content:encoded>
			<wfw:commentRss>http://www.blog.sizzla-media.co.uk/2008/05/08/creating-search-plug-ins/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

<!-- Dynamic Page Served (once) in 0.414 seconds -->
