<?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>Web Design &#38; Build, Web Development, Logo Design &#38; IT Consultancy - n7 Studios</title>
	<atom:link href="http://www.n7studios.co.uk/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.n7studios.co.uk</link>
	<description></description>
	<lastBuildDate>Wed, 10 Mar 2010 15:14:20 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Wordpress Insert Link Class Plugin</title>
		<link>http://www.n7studios.co.uk/2010/03/07/wordpress-insert-link-class-plugin/</link>
		<comments>http://www.n7studios.co.uk/2010/03/07/wordpress-insert-link-class-plugin/#comments</comments>
		<pubDate>Sun, 07 Mar 2010 20:17:20 +0000</pubDate>
		<dc:creator>Tim</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Wordpress]]></category>

		<guid isPermaLink="false">http://www.n7studios.co.uk/?p=521</guid>
		<description><![CDATA[A plugin that allows custom class names to be added to the Insert / edit link functionality in the Wordpress Page and Post Editor.]]></description>
			<content:encoded><![CDATA[<p><strong>Insert Link Class </strong>is a plugin for Wordpress that adds additional classes to the class option within the Insert / Edit Link functionality of Wordpress&#8217; TinyMCE editor.</p>
<div id="attachment_525" class="wp-caption aligncenter" style="width: 192px"><img class="size-full wp-image-525" title="Insert Link Class Plugin" src="http://www.n7studios.co.uk/wp-content/uploads/2010/03/link-class-tinymce.jpg" alt="" width="182" height="154" /><p class="wp-caption-text">Insert Link Class Plugin</p></div>
<h1>Installation:</h1>
<ol>
<li>Download the <a title="Insert Link Class Plugin" href="http://www.n7studios.co.uk/downloads/insert-link-class-plugin.zip"></a><a title="Insert Link Class Plugin on Wordpress" href="http://downloads.wordpress.org/plugin/insert-link-class.zip" target="_blank">Insert Link Class Plugin</a>.</li>
<li>In your Wordpress Administration, go to Plugins &gt; Add New &gt; Upload, and select the plugin ZIP file.</li>
<li>Activate the plugin</li>
<li>You&#8217;ll see a Link Classes option appear on the menu; use this to add, edit and delete custom classes.</li>
</ol>
<div id="attachment_527" class="wp-caption aligncenter" style="width: 299px"><img class="size-full wp-image-527" title="Insert Link Class Plugin - Admin Interface" src="http://www.n7studios.co.uk/wp-content/uploads/2010/03/link-class-admin.jpg" alt="" width="289" height="321" /><p class="wp-caption-text">Insert Link Class Plugin - Admin Interface</p></div>
<h1><strong>Known Bugs / Issues:</strong></h1>
<ol>
<li>Form validation needed.</li>
<li>Better handling of Wordpress&#8217; in built classes.</li>
</ol>
<p>I&#8217;m hoping to keep this plugin updated and publish some fixes within the next few weeks &#8211; so if there are any other issues, please leave a comment to let me know.</p>
<h1><strong>Download:</strong></h1>
<p><a class="button" title="Insert Link Class Plugin on Wordpress" href="http://downloads.wordpress.org/plugin/insert-link-class.zip" target="_blank">Download Plugin.</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.n7studios.co.uk/2010/03/07/wordpress-insert-link-class-plugin/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>CKEditor Word Count Plugin</title>
		<link>http://www.n7studios.co.uk/2010/03/01/ckeditor-word-count-plugin/</link>
		<comments>http://www.n7studios.co.uk/2010/03/01/ckeditor-word-count-plugin/#comments</comments>
		<pubDate>Mon, 01 Mar 2010 11:11:45 +0000</pubDate>
		<dc:creator>Tim</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[CKEditor]]></category>
		<category><![CDATA[word count]]></category>

		<guid isPermaLink="false">http://www.n7studios.co.uk/?p=496</guid>
		<description><![CDATA[A plugin for CKEditor to display a word count in the bottom right hand corner of any CKEditor instance.  Optional word limit can also be set on the plugin.]]></description>
			<content:encoded><![CDATA[<p>Finally &#8211; a Word Count plugin for CKEditor.  After much searching, and finding nothing, I developed a quick and basic word count plugin for CKEditor.</p>
<p>Tested in Internet Explorer 8, Firefox 3.5, Google Chrome 4, Safari 4</p>
<p><a class="button" title="CKEditor Word Count Demonstration" href="http://www.n7studios.co.uk/sandbox/ckeditor-word-count">Try the demonstration</a></p>
<h1>Installation:</h1>
<ol>
<li>Download the CKEditor Word Count Plugin</li>
<li>Upload the /wordcount folder to your /ckeditor/plugins folder</li>
<li>Edit your CKEditor configuration file (usually /ckeditor/config.js):
<div class="dean_ch" style="white-space: wrap;">
<ol>
<li class="li1">
<div class="de1">CKEDITOR.editorConfig = <span class="kw2">function</span><span class="br0">&#40;</span>config<span class="br0">&#41;</span> <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">config.extraPlugins = <span class="st0">&#8216;wordcount&#8217;</span>;</div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span>;</div>
</li>
</ol>
</div>
</li>
<li>For your CKEditor instance, use the following HTML markup (&#8216;content&#8217; can be any element name you wish, so long as the hidden field has its element name in the format &#8216;elementWordCount&#8217;)
<div class="dean_ch" style="white-space: wrap;">
<ol>
<li class="li1">
<div class="de1">&lt;label for=&quot;content&quot;&gt;Content&lt;/label&gt;
</div>
</li>
<li class="li1">
<div class="de1">&lt;textarea class=&quot;ckeditor&quot; name=&quot;content&quot;&gt;&lt;/textarea&gt;
</div>
</li>
<li class="li1">
<div class="de1">&lt;input name=&quot;contentWordCount&quot; type=&quot;hidden&quot; value=&quot;250&quot; /&gt;</div>
</li>
</ol>
</div>
<p>Word Limit: If you don&#8217;t want to display a word limit, don&#8217;t include the hidden input tag, or set its value to zero.</li>
<li>Download jQuery and include it on your web page, between the head tags:
<div class="dean_ch" style="white-space: wrap;">
<ol>
<li class="li1">
<div class="de1">&lt;script src=&quot;jquery/jquery.1.4.min.js&quot; type=&quot;text/javascript&quot;&gt;&lt;!&#8211;mce:0&#8211;&gt;&lt;/script&gt;</div>
</li>
</ol>
</div>
</li>
</ol>
<h1><strong>Known Bugs / Issues:</strong></h1>
<ol>
<li>The word count can be a few words out &#8211; this appears to happen between paragraph tags.</li>
<li>Pasting large chunks of copy that exceeds the word limit sometimes causes issues, whereby the additional content isn&#8217;t always removed.</li>
<li>I&#8217;ve only tested this using the HTML markup specified above (it should work in other methods &#8211; please let me know if it does / doesn&#8217;t)</li>
<li>Multiple instances of the CKEditor on a single page may cause issues with word counts.</li>
</ol>
<p>I&#8217;m hoping to keep this plugin updated and publish some fixes within the next few weeks &#8211; so if there are any other issues, please leave a comment to let me know.</p>
<h1><strong>Download:</strong></h1>
<p><a class="button" title="CKEditor Word Count Demonstration" href="http://www.n7studios.co.uk/downloads/ckeditor-word-count-full.zip">Download Plugin, CKEditor, jQuery and example web page.</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.n7studios.co.uk/2010/03/01/ckeditor-word-count-plugin/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>HP Photosmart 3310 &quot;No Scan Options&quot; &amp; Cannot Scan</title>
		<link>http://www.n7studios.co.uk/2009/12/27/hp-photosmart-3310-no-scan-options-and-cannot-scan/</link>
		<comments>http://www.n7studios.co.uk/2009/12/27/hp-photosmart-3310-no-scan-options-and-cannot-scan/#comments</comments>
		<pubDate>Sun, 27 Dec 2009 13:16:56 +0000</pubDate>
		<dc:creator>Tim</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Photosmart 3310]]></category>

		<guid isPermaLink="false">http://www.n7studios.co.uk/?p=260</guid>
		<description><![CDATA[A solution after researching issues with scanning and receiving the above errors when attempting to scan over a wireless network.]]></description>
			<content:encoded><![CDATA[<p>A solution after researching issues with scanning and receiving the above errors when attempting to scan over a wireless network.</p>
<p>1. Identify the IP address assigned to your 3310 All-in-One, by pressing Setup -&gt; 7. Network -&gt; 1. View Network Settings -&gt; 1. Print Network Configuration Page on the 3310 printer. The section you are looking for is 802.11 Wireless (or 802.3 Wired, if you are connecting with a network cable). Within the section, locate the line IP Address. Make a note of this number</p>
<p>2. Open the file C:\Windows\System32\drivers\etc\hosts using Notepad. You should see two entries (there may be more, depending on your PC setup):<br />
127.0.0.1 localhost<br />
HP7A4A24.Belkin HP0017A47A4A24</p>
<p>The HP entry is the important one (yours will have different numbers and letters after the HP letters, and may a different ending, depending on your wireless router). Add two entries before this line, where 192.168.2.3 is the IP address you obtained in step 1, and the two HP text strings are already in your HOSTS file:<br />
192.168.2.3 hp7a4a24.belkin<br />
192.168.2.3 HP0017A47A4A24</p>
<p>(Incidentally, the local domain suffix &#8216;belkin&#8217; appears to have come from the Wireless router &#8211; despite not setting a local domain suffix on the router! This meant when a lookup on hp7a4a24.belkin was performed, it could not resolve to an IP address (i.e. 192.168.2.3), therefore scanning functionality would fail).</p>
<p>3. Download and run the HP communications fix from <a title="HP communications fix" href="http://h10025.www1.hp.com/ewfrf/wc/genericSoftwareDownloadIndex?cc=us&amp;dlc=en&amp;lc=en&amp;softwareitem=sj-32245-2&amp;jumpid=reg_R1002_USEN" target="_blank">http://h10025.www1.hp.com/ewfrf/wc/genericSoftwareDownloadIndex?cc=us&amp;dlc=en&amp;lc=en&amp;softwareitem=sj-32245-2&amp;jumpid=reg_R1002_USEN</a></p>
<p>4. Right click the &#8220;HP Digital Imaging Monitor&#8221; icon in the taskbar (if it&#8217;s not running, you&#8217;ll need to run it).<br />
- Click &#8220;Launch / Show HP Solution Centre&#8221;<br />
- Click Settings -&gt; Scan Settings -&gt; Scan to&#8230; Setup<br />
- You can choose the Scan Destinations; these are the options that will appear on the printer when you press the Scan button, and allow you to determine where the scanned image is sent to (for example, a program such as Microsoft Word or Paint, or alternatively to an image file, which you can then view and edit using your own software as you wish)<br />
- Choose &#8220;Save to File&#8221; by clicking on it, clicking on the Right &#8220;add&#8221; arrow, and then click OK</p>
<p>5. Test the Scanning functionality<br />
- Press Scan on the printer<br />
- Press OK when 1. Select Computer is selected<br />
- Press OK when you select your computer from the list<br />
- Press OK when you select the &#8220;Scan To&#8221; option (in our example, we should only have &#8220;Save to file&#8221; available<br />
- HP Scanning software splash screen should appear on screen and run, the printer will scan and save the file to your PC<br />
- Printer will confirm scan completed by displaying &#8220;Scan was sent. See computer monitor for results.&#8221;<br />
- PC will confirm scan was completed by asking if you want to Scan another picture, or click Done to finish.<br />
- Windows Explorer should open a window showing the scanned image</p>
]]></content:encoded>
			<wfw:commentRss>http://www.n7studios.co.uk/2009/12/27/hp-photosmart-3310-no-scan-options-and-cannot-scan/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>IE6: It&#039;s not just because of companies!</title>
		<link>http://www.n7studios.co.uk/2009/10/09/ie6-its-not-just-because-of-companies/</link>
		<comments>http://www.n7studios.co.uk/2009/10/09/ie6-its-not-just-because-of-companies/#comments</comments>
		<pubDate>Fri, 09 Oct 2009 13:34:49 +0000</pubDate>
		<dc:creator>Tim</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Web Design & Development]]></category>

		<guid isPermaLink="false">http://www.n7studios.co.uk/?p=143</guid>
		<description><![CDATA[I'm absolutely sick and tired of hearing about how we're stuck with Internet Explorer 6, because of corporate environments that don't permit upgrades to a non web standards browser.  There's no hard evidence supporting this, so I've investigated some of the other routes by which Internet Explorer 6 is still permitted to live.]]></description>
			<content:encoded><![CDATA[<h1>I&#8217;m absolutely sick and tired of hearing about how we&#8217;re stuck with Internet Explorer 6, because of corporate environments that don&#8217;t permit upgrades to a non web standards browser.</h1>
<p>A recent <a href="http://www.sitepoint.com/blogs/2009/09/24/google-chrome-frame-fixes-ie/">article</a> in Sitepoint, <a href="http://www.boagworld.com">Boagworld</a>&#8217;s podcasts &#8211; even a <a href="http://ie6update.com/">site dedicated to prompting users to get rid of IE6</a> &#8211; all talk about how corporate environments are allowing IE6 to live on.</p>
<p>How have they come to this conclusion?  Where are the published, meaningful statistics to back up this claim?  Have they questionned a number, or cross section, of corporate users to draw this conclusion?  Have any of the web designers and developers touting for the end of IE6 worked in these corporations, and seen the reality?</p>
<p>Let me make something clear from the start &#8211; I&#8217;m in support of getting rid of IE6.  It&#8217;s a horrid browser for web designers and developers to work with, due to its <a href="http://www.positioniseverything.net/explorer.html">numerous issues and lack of web standards compliance</a>.  Development times lengthen to provide fixes and hacks to ensure a web site functions in IE6 &#8211; even at a basic level.  Microsoft have moved on from IE6 with the launch of IE7, and more recently IE8.  Rival  browsers have also <a href="http://www.itproportal.com/portal/news/article/2009/10/9/internet-explorer-market-share-falls-under-66-percent/">gained market share</a>.</p>
<h1>Why is Internet Explorer 6 still around?</h1>
<p><strong>1. A bespoke intranet or web application breaks in newer browsers, and there&#8217;s no budget to upgrade it.</strong></p>
<p>I specifically target bespoke intranets or web applications, because these will typically have been built in house or by a small development company specific for the client.  The client may not have the budget to pay for upgrades (&#8220;if it ain&#8217;t broke, don&#8217;t fix it&#8221;), and IT departments would have a hard time &#8220;selling&#8221; an upgrade &#8211; even with the security enhancements of moving away from Internet Explorer 6.  Most companies simply don&#8217;t have a budget for IT support and development &#8211; it&#8217;s typically an ad hoc arrangement.</p>
<p><strong>2. The user still has Windows 2000 (which doesn&#8217;t work with IE7 and IE8)</strong></p>
<p>General Browser OS stats from <a href="http://www.w3schools.com/browsers/browsers_os.asp">W3Schools</a> suggest that the Windows 2000 has a market share of around 1% (June 2009).  That&#8217;s 1 in 100 computers that cannot run IE7 or IE8.  It&#8217;s true that these computers could run a secondary browser alongside IE6, and it&#8217;s a small number of potential IE6 users.</p>
<p><strong>3. Vista was a flop</strong></p>
<p>Windows Vista comes with IE7.  However, Windows Vista has been <a href="http://en.wikipedia.org/wiki/Windows_Vista#Criticism">regarded as a slip up on Microsoft&#8217;s part</a>.  They produced an operating system that proved slow, and required huge computer resources to run smoothly.  There was also a major shift in terms of application compatibility &#8211; one IT support firm I worked for found existing applications would freeze or simply not run under Windows Vista, when they worked fine under Windows 2000 and XP.  These applications weren&#8217;t in house developments either, but large products from leading CRM (IBM) and accountant software houses.</p>
<p>As corporate downtime means lost revenue, IT departments have been forced to either issue a quick fix, or opt for the downgrade route to Windows XP.</p>
<p>But why would downgrading to Windows XP cause us problems with IE6?</p>
<p><strong>4. Windows XP doesn&#8217;t always come with Internet Explorer 7</strong></p>
<p>This is my killer point.  Even at Windows XP <strong>SP3</strong>, system manufacturers, such as Dell, are offering desktops and laptops with the XP downgrade option that, by default, comes with Internet Explorer 6.  In most IT environments, such as the one I&#8217;ve worked in, IE6 would be upgraded to IE7 (and now, IE8), without a moment&#8217;s thought.  But not everyone will want to do that &#8211; for the reasons given above, and the reasons given below.</p>
<p><strong>5. The Netbook Market Explosion = more Windows XP, please<br />
</strong></p>
<p>Netbooks are small, low powered laptops, designed for basic email and internet connectivity.  Most run Windows XP &#8211; which as above, we see doesn&#8217;t always come with Internet Explorer 7.  Users could upgrade their browser to something else, but why would they want to?  If IE6 does the job for them, why suddenly introduce the hassle of having to install an upgrade?</p>
<p><strong>6. Users simply want to browse the web</strong></p>
<p>Users are fickle.  The average Joe Public doesn&#8217;t care less about which browser they use, or which Twitter and Facebook plugins give them the best <span style="text-decoration: line-through;">stalking</span> friend tracking abilities.  They&#8217;re more interested in browsing web sites on topics they&#8217;re interested in, perhaps checking their emails online, ordering something from a shop, booking a holiday etc.</p>
<p>We know that application usability typically dictates that a user will do anything to get to the end result as fast as possible &#8211; whether that be dismissing prompts, question boxes etc.  Automatic Updates might ask the user about IE7 &#8211; some may opt to go with the upgrade, others may opt to ignore or cancel the upgrade so they can get back to what they&#8217;re doing.</p>
<h1>So what next for Internet Explorer 6?</h1>
<p>Windows 7, due to be released October 22nd 2009, moves us away from Internet Explorer 6.  Specific editions allow for XP mode, a virtualised Windows XP machine within Windows 7 &#8211; meaning legacy desktop applications can still be supported in corporate environments.  In Europe, it provides a ballot screen, allowing the user a choice of browser.  Even if the majority stick with Internet Explorer as a result, it won&#8217;t be version 6, which is a step in the right direction.</p>
<p>In terms of its system requirements, Windows 7 isn&#8217;t much different from Windows Vista &#8211; we&#8217;re told it&#8217;s less the annoying bugbears of Vista.  Computer hardware has evolved since the release of Vista, with Intel and nVidia producting some brilliant low powered, yet powerful, Atom and Ion processors and chipsets, meaning OS and software newer than Windows XP is starting to become a reality &#8211; and therefore helping IE6&#8217;s user base to slowly decline.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.n7studios.co.uk/2009/10/09/ie6-its-not-just-because-of-companies/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Facebook, Twitter, API Developers &#8211; who&#039;s sharing my data?</title>
		<link>http://www.n7studios.co.uk/2009/08/26/facebook-twitter-api-developers-whos-sharing-my-data-2/</link>
		<comments>http://www.n7studios.co.uk/2009/08/26/facebook-twitter-api-developers-whos-sharing-my-data-2/#comments</comments>
		<pubDate>Wed, 26 Aug 2009 22:01:45 +0000</pubDate>
		<dc:creator>Tim</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Social Networks]]></category>
		<category><![CDATA[data]]></category>
		<category><![CDATA[facebook]]></category>
		<category><![CDATA[twitter]]></category>

		<guid isPermaLink="false">http://www.n7studios.co.uk/?p=153</guid>
		<description><![CDATA[There appears to be a recent trend with several Facebook friend suggestions appearing shortly after those same people follow me on Twitter.  I discuss how this might be happening, and perhaps there's more than meets the eye.]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve trawled the internet, search engines, blogs and more, but can&#8217;t see anything to do with what I&#8217;m about to say.  If there are other posts regarding this, do please comment and point me to them (and prove that I can&#8217;t use Google! <img src='http://www.n7studios.co.uk/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  )</p>
<p>Yesterday (August 25th), Facebook started suggesting a person that I might like to add:</p>
<p><img class="alignnone size-full wp-image-154" title="tomtrotts-facebook" src="http://www.n7studios.co.uk/wp-content/uploads/2009/08/tomtrotts-facebook.jpg" alt="tomtrotts-facebook" width="364" height="140" /></p>
<p>Now, I&#8217;ve never heard of this chap.  Never emailed him, and never spoken to him.  I&#8217;m sure he&#8217;s a top bloke, though.</p>
<p>Today (August 26th), I check my Twitter followers.  Imagine my surprise when my newest Twitter follower happens to be:</p>
<p><img class="alignnone size-full wp-image-155" title="tomtrotts-twitter" src="http://www.n7studios.co.uk/wp-content/uploads/2009/08/tomtrotts-twitter.jpg" alt="tomtrotts-twitter" width="538" height="120" /></p>
<p>Now, I don&#8217;t know whether Tom followed me before or after the suggested friend on Facebook.  What I do know is that this isn&#8217;t an isolated incedent.  Its happened around 3 &#8211; 4 times over the past month.  I put the first couple down to pure co-incidence (and the fact that I knew who they were).  However, with more recent Twitter followers, who&#8217;ve also been cropping up as suggested friends on Facebook, I&#8217;ve never had any contact with them, nor shared my details with them (or vice versa).</p>
<p>Therefore, it would have to be something linking my Facebook profile with my Twitter profile.  My Facebook profile is hidden, so it can&#8217;t be Twitter grabbing my Facebook information.  My Twitter profile is open, so it could be Facebook grabbing my Twitter followers information, and suggesting them as friends.</p>
<p>However, there&#8217;s nothing to link the two together.  My Facebook username (timcarr) is different than my Twitter one (n7studios).  I do use the same email address for both &#8211; but as far as I can see, there&#8217;s no public method of getting a list of my followers by using my email address.  So how are Facebook obtaining my Twitter followers, and then suggesting them as friends?</p>
<p>Another possibility is a Facebook application, which I would have authorised, to update Twitter.  By providing my credentials, this would potentially mean the Facebook application could obtain my followers list, search for them on Facebook, and if the same username is found (or the follower is found also to use the same Facebook application), suggest them as a friend.</p>
<p>For updating my Facebook status from Twitter, I use Tweeter.  It&#8217;s a Facebook application that periodically checks my Twitter status, and if its been updated, updates my Facebook status.  Therefore, it&#8217;s an application that has access to both profiles.  However, looking through Tweeter&#8217;s information and documentation, there&#8217;s nothing to suggest this would happen &#8211; and I can&#8217;t see any method for any Facebook application to tell Facebook to suggest somebody as a friend to somebody else.  That doesn&#8217;t necessarily mean its not happening &#8211; but there&#8217;s no conclusive evidence either way.</p>
<p>So Facebook, Twitter and API Developers &#8211; which one (or all) of you are sharing my data?</p>
]]></content:encoded>
			<wfw:commentRss>http://www.n7studios.co.uk/2009/08/26/facebook-twitter-api-developers-whos-sharing-my-data-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Contact Form 7 404 Error &#8211; Wordpress Plugin</title>
		<link>http://www.n7studios.co.uk/2009/07/16/contact-form-7-404-error-wordpress-plugin/</link>
		<comments>http://www.n7studios.co.uk/2009/07/16/contact-form-7-404-error-wordpress-plugin/#comments</comments>
		<pubDate>Thu, 16 Jul 2009 16:20:52 +0000</pubDate>
		<dc:creator>Tim</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[404]]></category>
		<category><![CDATA[contact form 7]]></category>
		<category><![CDATA[Wordpress]]></category>

		<guid isPermaLink="false">http://www.n7studios.co.uk/?p=141</guid>
		<description><![CDATA[We've used the popular Contact Form 7 plugin for Wordpress for most of our Wordpress projects.  It allows you to define multiple forms, with custom fields - ideal for longer or more complex contact / enquiry forms.

On one site, we encountered an issue where Wordpress would return a 404 error when submitting the form - although we'd still get the email containing the form information.  We'd configured Contact Form 7 with a single form, called "Contact".  The code used to insert it into the Contact page was [contact-form 1 "contact"].]]></description>
			<content:encoded><![CDATA[<p>We&#8217;ve used the popular Contact Form 7 plugin for Wordpress for most of our Wordpress projects.  It allows you to define multiple forms, with custom fields &#8211; ideal for longer or more complex contact / enquiry forms.</p>
<p>On one site, we encountered an issue where Wordpress would return a 404 error when submitting the form &#8211; although we&#8217;d still get the email containing the form information.  We&#8217;d configured Contact Form 7 with a single form, called &#8220;Contact&#8221;.  The code used to insert it into the Contact page was [contact-form 1 "contact"].</p>
<p>The workaround to fix the 404 error is to create a second form (we called ours &#8220;contactform&#8221;), and use [contact-form 2 "contactform"] on the contact page in question.  This cured the 404 issue.</p>
<p>The issue seems to surround the first form (possibly the preconfigured form provided when you install the plugin).  We&#8217;ve just left that form in the system, but don&#8217;t use it, and all other forms work without issue.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.n7studios.co.uk/2009/07/16/contact-form-7-404-error-wordpress-plugin/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>50% Upfront for a Web Site?</title>
		<link>http://www.n7studios.co.uk/2009/07/15/50-percent-upfront-for-a-website/</link>
		<comments>http://www.n7studios.co.uk/2009/07/15/50-percent-upfront-for-a-website/#comments</comments>
		<pubDate>Wed, 15 Jul 2009 13:38:36 +0000</pubDate>
		<dc:creator>Tim</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Clients]]></category>
		<category><![CDATA[payments]]></category>

		<guid isPermaLink="false">http://www.n7studios.co.uk/?p=127</guid>
		<description><![CDATA[Whether you've a designer, developer or client, it's likely that you've agreed a deposit of 50% before work begins.  This makes some financial and business sense; the designer / developer needs your financial assurance that you want to go ahead with the agreed project, and the client need the security that they're going to see something in return for that investment, meaning the client will then pay the rest.

But why 50%?

We discuss our alternative payment schedule, and how it's worked for us.]]></description>
			<content:encoded><![CDATA[<p>Whether you&#8217;ve a designer, developer or client, it&#8217;s likely that you&#8217;ve agreed a deposit of 50% before work begins.  This makes some financial and business sense; the designer / developer needs your financial assurance that you want to go ahead with the agreed project, and the client need the security that they&#8217;re going to see something in return for that investment, meaning the client will then pay the rest.</p>
<p>But why 50%?</p>
<p>Our clients know that, on the whole, we only ask for a 25% deposit upfront, with part payments (again, usually 25% increments) within 7 days of completion of the agreed portions of the project.  Through our initial quote breakdown and project specification, we make it clear when these payments are due and, depending on the contract, these payments typically signify the client&#8217;s agreement to that portion of work.  As such, it focuses the client&#8217;s mind to a specific portion of the project, requires their feedback to ensure they&#8217;re happy with the work and helps them attribute a financial &#8220;value&#8221; to it.</p>
<p>Some clients are dubious about giving 50% upfront, and we understand this.  We&#8217;ve had clients who have paid 50% with a designer or developer, only for said person to take the money and run.  As such, the client is a little nervous about being stung, yet are put at ease with our arrangement.  It helps build trust for both parties to ensure the client gets the work they want, and we get the agreed payments.</p>
<p>There&#8217;s also a financial benefit of this practice.  Small businesses and individuals can suffer from cashflow issues, especially in the current economic climate.  Breaking down the payments into smaller installments allows clients to pay for a project that otherwise would have been too costly, resulting in them walking away from the project proposal.  Smaller payments means a reduction in undue delays in receiving payments, keeps the project on track and means that everyone is happy.</p>
<p>Yes, we require payment within 7 days, which seems quite a strict reuiqrement &#8211; but because the client has a clear payment schedule (of smaller payments), they&#8217;re able to ensure their funds are ready in time.  It also ensures the project continues moving forward, and the clients sees progress as they pay.</p>
<p>We never deviate from the above formalities &#8211; even with well established clients.  This may seem inflexible, but as with any good business relationship, clear terms to cover the formalities from day 1 ensure everyone knows where they stand.  It saves the tricky formality of having to later discuss and chase payments with the client.</p>
<p>For us, it works well and, to date, we have never had a late payment or issue from using this process.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.n7studios.co.uk/2009/07/15/50-percent-upfront-for-a-website/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>jQuery: Validate FCKEditor using jQuery</title>
		<link>http://www.n7studios.co.uk/2009/03/07/jquery-validate-fckeditor-using-jquery/</link>
		<comments>http://www.n7studios.co.uk/2009/03/07/jquery-validate-fckeditor-using-jquery/#comments</comments>
		<pubDate>Sat, 07 Mar 2009 10:04:46 +0000</pubDate>
		<dc:creator>Tim</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[fckeditor]]></category>
		<category><![CDATA[validate]]></category>

		<guid isPermaLink="false">http://www.n7studios.co.uk/?p=41</guid>
		<description><![CDATA[Validate FCKEditor using jQuery, thanks to this small jQuery Plugin.]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve written a quick jQuery plugin which allows you to validate an FCKEditor instancing using jQuery.  This plugin will both validate FCKEditor instances both on-the-fly (as you type), and when you attempt to submit a form.</p>
<p>1. <a title="jQuery FCKEditor Validator" href="http://www.n7studios.co.uk/downloads/jquery.fckeditorvalidate.js">Download the plugin</a></p>
<p>2. Implement the plugin:</p>
<div class="dean_ch" style="white-space: wrap;">
<ol>
<li class="li1">
<div class="de1">$<span class="br0">&#40;</span>document<span class="br0">&#41;</span>.<span class="me1">ready</span><span class="br0">&#40;</span><span class="kw2">function</span><span class="br0">&#40;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">if</span><span class="br0">&#40;</span><span class="kw1">typeof</span> jQuery.<span class="me1">fn</span>.<span class="me1">fckEditorValidate</span> == <span class="st0">&#8216;function&#8217;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">jQuery.<span class="me1">fn</span>.<span class="me1">fckEditorValidate</span><span class="br0">&#40;</span><span class="br0">&#123;</span>instanceName: <span class="st0">&#8216;content&#8217;</span><span class="br0">&#125;</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
<li class="li2">
<div class="de2"><span class="br0">&#125;</span><span class="br0">&#41;</span>;</div>
</li>
</ol>
</div>
<p>The full list of arguments which may appear in the brackets are:</p>
<div class="dean_ch" style="white-space: wrap;">
<ol>
<li class="li1">
<div class="de1">instanceName: The <span class="kw3">name</span> of the FCKEditor instance <span class="br0">&#40;</span><span class="kw2">default</span>: <span class="st0">&#8216;content&#8217;</span><span class="br0">&#41;</span>,</div>
</li>
<li class="li1">
<div class="de1">preventFormSubmit: Prevent form from submitting <span class="kw1">if</span> FCKEditor instance <span class="kw1">is</span> empty <span class="br0">&#40;</span><span class="kw2">default</span>: <span class="kw2">true</span><span class="br0">&#41;</span>,</div>
</li>
<li class="li1">
<div class="de1">showValidationError: Show a message <span class="kw1">if</span> the FCKEditor instance <span class="kw1">is</span> empty <span class="br0">&#40;</span><span class="kw2">default</span>: <span class="kw2">true</span><span class="br0">&#41;</span>,</div>
</li>
<li class="li1">
<div class="de1">showValidationErrorBeforeFCKEditor: Show the message before the FCKEditor on the page <span class="br0">&#40;</span><span class="kw2">default</span>: <span class="kw2">false</span> &#8211; i.<span class="me1">e</span>. <span class="me1">shows</span> message below FCKEditor<span class="br0">&#41;</span>,</div>
</li>
<li class="li2">
<div class="de2">validationErrorClass: CSS <span class="kw2">class</span> to attribute to label showing validation error message <span class="br0">&#40;</span><span class="kw2">default</span>: <span class="st0">&#8216;fckValidateError&#8217;</span><span class="br0">&#41;</span>,</div>
</li>
<li class="li1">
<div class="de1">validationErrorMessage: Message to show when FCKEditor instance <span class="kw1">is</span> empty <span class="br0">&#40;</span><span class="kw2">default</span>: <span class="st0">&#8216;Please complete this field&#8217;</span><span class="br0">&#41;</span></div>
</li>
</ol>
</div>
<p>This is by no means an exhaustive or complete solution; you should always implement some server-side validation.  Javascript cannot be solely relied upon, as users may not have it in their web browser, or may choose to disable it.  There&#8217;s also some known issues with IE with the on-the-fly (as you type) validation being a bit hit and miss.</p>
<p>When the form is submitted, this plugin will kick in and has been tested on IE6, 7, Firefox 3 and Safari 3.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.n7studios.co.uk/2009/03/07/jquery-validate-fckeditor-using-jquery/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Samsung Tocco Service Codes</title>
		<link>http://www.n7studios.co.uk/2009/03/07/samsung-tocco-service-codes/</link>
		<comments>http://www.n7studios.co.uk/2009/03/07/samsung-tocco-service-codes/#comments</comments>
		<pubDate>Sat, 07 Mar 2009 19:02:40 +0000</pubDate>
		<dc:creator>Tim</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[codes]]></category>
		<category><![CDATA[mobile phone]]></category>
		<category><![CDATA[samsung]]></category>
		<category><![CDATA[tocco]]></category>

		<guid isPermaLink="false">http://www.n7studios.co.uk/?p=39</guid>
		<description><![CDATA[A number of secret codes are available on your Samsung Tocco phone, which can help diagnose problems and enhance your phone's functionality.]]></description>
			<content:encoded><![CDATA[<p>Be very careful! These codes allow you access to hidden settings on your phone, but you can end up breaking (bricking) the phone. Anyway, here are the codes: Admin Settings: *#6984125*# Admin Settings &#8211; Internals (submenu): *#9072641*# Developer Settings: *#0523# Camera test mode:This is useful if you want to speed up the camera shot time, by switching off Auto focus. I found switching it off didn&#8217;t make much difference to my photos, but meant the photos were taken a lot faster i.e. no lag. Press *#36287# key string in the dial screen to enter camera test mode menu: [1] Auto focus [On] [2] ISP firmware write [3] ISP firmware version check</p>
<p>* Press the &#8220;1&#8243; key to disable auto focus. In order to enable auto focus, press the &#8220;1&#8243; key again.<br />
* Press the &#8220;2&#8243; key to write the ISP (Camera Module) firmware. “ISP firmware write [Please wait]” will be displayed during 2 minutes. Then &#8220;ISP firmware write [SUCCESS]” will be displayed when the firmware upload finished.<br />
* Press the &#8220;3&#8243; key to display ISP firmware version.</p>
<p>Test Menu: This is useful to test your phone&#8217;s colours, melodies, vibration, touchscreen etc. If you&#8217;re having intermittent faults, this tool is useful to identify the exact problem &#8211; which could save you some money when repairing the phone. *#0*# Test menu &lt;&#8211; Colours, Melody, Vibration, Dimming etc. Some other codes: *#06# IMEI *#1234# Software version *#1111# FTA S/w version *#2222# Hardware info *#0206*8376263# F/W and H/W version *#0228# battery info *2767*3855# Master Reset *#4777*8665# GPRS info *#232337# Bluetooth ID</p>
]]></content:encoded>
			<wfw:commentRss>http://www.n7studios.co.uk/2009/03/07/samsung-tocco-service-codes/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>jQuery Detect Plugin Function</title>
		<link>http://www.n7studios.co.uk/2009/03/07/jquery-detect-plugin-function/</link>
		<comments>http://www.n7studios.co.uk/2009/03/07/jquery-detect-plugin-function/#comments</comments>
		<pubDate>Sat, 07 Mar 2009 10:01:15 +0000</pubDate>
		<dc:creator>Tim</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[functions]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[typeof]]></category>

		<guid isPermaLink="false">http://www.n7studios.co.uk/?p=37</guid>
		<description><![CDATA[Using the typeof operator helps to check if jQuery functions - or Javascript functions in general - are in scope.]]></description>
			<content:encoded><![CDATA[<p>To help prevent Javascript errors that stop the rest of your script working, because you&#8217;ve forgotten to include a jQuery Plugin, or you have a jQuery Plugin that may not always be within scope, you can use the typeof operator to see if a plugin exists. It&#8217;s also great for debugging. You&#8217;ll need to get the function name from the plugin file.  For example, to detect if the prettyCheckboxes plugin is included:</p>
<p>if(typeof jQuery.fn.prettyCheckboxes == &#8216;function&#8217;) {<br />
// Javascript Code to Run here<br />
alert(&#8220;prettyCheckboxes jQuery Plugin is installed!&#8221;);<br />
}</p>
]]></content:encoded>
			<wfw:commentRss>http://www.n7studios.co.uk/2009/03/07/jquery-detect-plugin-function/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
