<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/">
	<channel>
		
		<title>fabdevelop.com - Articles</title>
		<link>http://blog.fab1an.nl/</link>
		<description>Recent articles from fabdevelop.com</description>
		<language>en</language>
		<image>
			<title>fabdevelop.com - Articles</title>
			<url>http://blog.fab1an.nl/typo3conf/ext/tt_news/ext_icon.gif</url>
			<link>http://blog.fab1an.nl/</link>
			<width>18</width>
			<height>16</height>
			<description>Recent articles from fabdevelop.com</description>
		</image>
		<generator>TYPO3 - get.content.right</generator>
		<docs>http://blogs.law.harvard.edu/tech/rss</docs>
		
		
		
		<lastBuildDate>Wed, 21 Sep 2016 20:40:00 +0200</lastBuildDate>
		
		
		<item>
			<title>Empty desktop and documents folder after disabling iCloud sync</title>
			<link>http://blog.fab1an.nl/index.php?id=8&#38;tx_ttnews%5Btt_news%5D=23&#38;cHash=7e3033bae2d74e2dcc82cf5d3ea694bd</link>
			<description>With the recent upgrade to macOS Sierra I decided to try out the new iCloud sync for desktop files...</description>
			<content:encoded><![CDATA[<p class="bodytext">With the recent upgrade to macOS Sierra I decided to try out the new iCloud sync for desktop files and documents.</p>
<p class="bodytext">After it being stuck syncing for hours and 2 out of control cpu processes (bird and cloudd) causing a blazing cpu fan for hours&nbsp;I decided to cancel it, which didn't go smoothly but after manually killing the 'bird' process and a few reboots it was finally disabled.</p>
<p class="bodytext">Only now the problem was my desktop was empty and all&nbsp;my documents were gone. As it turns out, <b>when you enable iCloud sync it moves all your desktop and documents files to the iCloud drive</b>, and then points the original 'Desktop' and 'Documents' folder to the iCloud folders. But <b>when you disable iCloud sync it does not put anything back</b>, it just leaves all your files in the iCloud drive and then creates new empty&nbsp;'Desktop' and 'Documents' folders in the original location so you have to manually drag your files back from the iCloud drive to your desktop and documents folder.</p>
<p class="bodytext">&nbsp;</p>
<p class="bodytext">&nbsp;</p>
<p class="bodytext">&nbsp;</p>]]></content:encoded>
			<category>macOS</category>
			
			
			<pubDate>Wed, 21 Sep 2016 20:40:00 +0200</pubDate>
			
		</item>
		
		<item>
			<title>When CAPTCHA does not work anymore...</title>
			<link>http://blog.fab1an.nl/index.php?id=8&#38;tx_ttnews%5Btt_news%5D=22&#38;cHash=644a06679c7baba6328d1202fa7b7d95</link>
			<description>In an earlier post I explained how I used CAPTCHA to prevent blog comment spam and it worked fine...</description>
			<content:encoded><![CDATA[<p class="bodytext">In an <a href="http://fabdevelop.com/index.php?id=8&amp;tx_ttnews[tt_news]=5" title="Enabling spam protection for blog comments" class="external-link-new-window" ><img alt="Opens external link in new window" src="typo3/sysext/rtehtmlarea/htmlarea/plugins/TYPO3Browsers/img/external_link_new_window.gif" />earlier post</a> I explained how I used CAPTCHA to prevent blog comment spam and it worked fine for a while but after some months it became clear that the spammers have found away around it. My site was filled with hundreds of spam comments so I just temporarily disabled the ability to post comments on my site.</p>
<p class="bodytext">You may notice now that it is possible to post comments again but there is no CAPTCHA nor any spam. Here I will explain my new solution for preventing spam and how to do it:<br /> </p>
<h2>Comment spam protection in less than 10 lines of JavaScript</h2>
<p class="bodytext">The actual code, followed by an explanation below:</p>
<pre id="line189">$(document).ready(function() {<br />	SPAM_BE_GONE = setTimeout(function() {<br />		$('#commentform').attr('action','###ACTION_URL###');<br />	}, 5000);<br />});</pre>
<p class="bodytext">Basically what I have done removed ###ACTION_URL### from the &lt;form&gt; tag in the ve_guestbook template and then used the JavaScript code above to put it back in after 5 seconds when the page is loaded. This makes spam bots enter the site and submit a comment to the wrong url. In order for spam bots to bypass this they would actually have to parse JavaScript and wait 5 seconds, which I doubt will happen.</p>
<p class="bodytext">By the way, in the code above I made use of <a href="http://jquery.com" title="Opens external link in new window" class="external-link-new-window" ><img alt="Opens external link in new window" src="typo3/sysext/rtehtmlarea/htmlarea/plugins/TYPO3Browsers/img/external_link_new_window.gif" />the jQuery library</a> but it could have been done without that just as easy. Basically all you are doing is setting a timer and changing an attribute, wether its done in jQuery, protoype, yui or plain JavaScript is up to you.</p>
<p class="bodytext">You can view the source of this page to see what the code looks like after the template has been parsed.</p>]]></content:encoded>
			<category>Web development</category>
			<category>TYPO3</category>
			
			
			<pubDate>Mon, 04 Aug 2008 00:38:00 +0200</pubDate>
			
		</item>
		
		<item>
			<title>Internet Explorer bug: Broken mouse wheel scrolling</title>
			<link>http://blog.fab1an.nl/index.php?id=8&#38;tx_ttnews%5Btt_news%5D=21&#38;cHash=f4cfe95470f33c9e0a157a3e28a9dfca</link>
			<description>This article describes a bug I encountered today which causes the mouse wheel not to function...</description>
			<content:encoded><![CDATA[<p class="bodytext">One of the things I encountered today was a problem with scrolling some part of a website with the mouse wheel. It worked fine in Firefox and Opera but Internet Explorer refused to scroll correctly. The content I was trying to scroll within was a <i>div</i> tag, which was configured with the CSS property &quot;<i>overflow: auto</i>&quot;.</p>
<p class="bodytext">After doing some testing I discovered that the mouse wheel scrolling would only work when the mouse cursor was hovering the text in the <i>div</i> tag. When the mouse cursor was hovering just some white space above or below a paragraph the scroll wheel refused to work.</p>
<p class="bodytext">At first I thought this issue was caused by <a href="http://www.hesido.com/web.php?page=customscrollbar" title="Opens external link in new window" class="external-link-new-window" ><img alt="Opens external link in new window" src="typo3/sysext/rtehtmlarea/htmlarea/plugins/TYPO3Browsers/img/external_link_new_window.gif" />FleXscroll</a> which is a piece of javascript which I use to customize the design of scrollbars, but after disabling FleXscroll the issue remained and after doing some more testing I discovered that this bug would only occur when the page was rendered in standards-compliant-mode. After removing the DOCTYPE and thus triggering quirks-mode, the bug was gone and everything worked fine except that my page looked like shit since everyone knows quirks-mode is the root of all evil.</p>
<p class="bodytext">So I put the DOCTYPE back in and tried to figure out some other way to fix this issue. Since the scrolling would only work when the cursor was hovering some text I thought that maybe it just needs to hover <b>something</b>, even if that something looks like nothing (you're thinking: what?!), so I added &quot;<i>background: #ffffff</i>&quot; to the style of the <i>div</i> tag and guess what? Problem solved.</p>
<p class="bodytext">Checkout <a href="fileadmin/filemanager/bug.html" title="Demonstration of the bug" target="_blank" >this page demonstrating the bug</a>&nbsp;which contains to similar content items, the only difference is the background property. If you use Internet Explorer you will notice that you cannot scroll one of the items with the mouse wheel unless your mouse cursor is over some part of the text.</p>
<p class="bodytext">This bug occurs in Internet Explorer 7 and possibly lower versions too.</p>]]></content:encoded>
			<category>Web development</category>
			
			<author>fabdevelop.com@fab1an.nl</author>
			<pubDate>Thu, 14 Jun 2007 20:01:00 +0200</pubDate>
			
		</item>
		
		<item>
			<title>World of Zuul 0.1 alpha</title>
			<link>http://blog.fab1an.nl/index.php?id=8&#38;tx_ttnews%5Btt_news%5D=19&#38;cHash=482cee41945bc283cfa3f5e1160a6e3f</link>
			<description>This game was created as part of a Java course. It's like one of those very old text based DOS...</description>
			<content:encoded><![CDATA[<p class="bodytext">This game was created as part of a Java course. It's like one of those very old text based DOS games. Click on the button below to launch it through Java Web Start (JRE 1.5+ required).</p>
<p class="bodytext"><a href="http://java.fab1an.nl/launch.php" title="Launch World of Zuul" ><img src="uploads/RTEmagicC_webstart.small2.gif.gif" style="width: 88px; height: 34px;" alt="" /></a></p>]]></content:encoded>
			<category>Java</category>
			
			<author>fabdevelop.com@fab1an.nl</author>
			<pubDate>Fri, 01 Jun 2007 01:01:00 +0200</pubDate>
			
		</item>
		
		<item>
			<title>Implementing accessible forms in TYPO3</title>
			<link>http://blog.fab1an.nl/index.php?id=8&#38;tx_ttnews%5Btt_news%5D=16&#38;cHash=ab2819364fc869a872fdfef02ebf3330</link>
			<description>On A List Apart there is a nice article about Making Compact Forms More Accessible. I wanted to...</description>
			<content:encoded><![CDATA[<p class="bodytext">On <a href="http://alistapart.com" title="A List Apart: For people who make websites" >A List Apart</a> there is a <a href="hhttp://alistapart.com/articles/makingcompactformsmoreaccessible" title="Article on A List Apart" >nice article about Making Compact Forms More Accessible</a>. I wanted to know if it was possible to implement such forms in TYPO3 to use for the form elements such as the mail, search or login form.</p>
<p class="bodytext">As it turns out, it's not so hard to do this. Basically all that needed to be done was:</p><ul><li>Insert one of the standard TYPO3 form elements on a page (login or mail form for example)</li><li>Include the script and stylesheet as provided on A List Apart</li><li>Open the page in the front end and check the source to see which attributes and values are used for the HTML form elements.</li><li>Create your own form as described on A List Apart but use the properties/values TYPO3 uses.</li><li>Apply the form you just created to the TYPO3 FORM object through TypoScript</li></ul><p class="bodytext"> I've tried it with the login form as you can see on the right side of this page. Here's how:</p>
<h3>Insert TYPO3 Form element</h3>
<p class="bodytext">Just as you would normally do, nothing special here, just check if it works before you continue.<br /> </p>
<h3>Include the script and stylesheet</h3>
<p class="bodytext">Get the script and styles from A List Apart and include them on your page.</p>
<pre>page.includeJS.file001 = fileadmin/newdesign/form.js<br />page.includeJS.file001.type = text/javascript<br /><br />page.includeCSS.file001 = fileadmin/newdesign/form.css<br />page.includeCSS.file001.media = screen</pre>
<h3>Get the properties/values from the source</h3>
<p class="bodytext">In my case for the login form the properties used were <em>user </em>for the username and <em>pass </em>for the password. There was one hidden element with the property <em>logintype </em>and value <em>login,</em> the <a href="http://typo3.org/documentation/document-library/references/doc_core_tsref/4.0.0/view/8/20/" title="Manual: TypoScript reference" >TSref</a> explains you change this value to <em>logout </em>to create a logout form. The last property was <em>submit </em>with value <em>Login </em>for the submit button.</p>
<h3>Create your own form</h3>
<p class="bodytext">Do this as described on A List Apart but use the properties and values from the previous step. It's not necesarry to include the &lt;form .. &gt; &lt;/form&gt; tags.</p>
<pre>&lt;div id=&quot;username&quot;&gt;<br />&nbsp;&lt;label for=&quot;user&quot; class=&quot;overlabel&quot;&gt;Username&lt;/label&gt;<br />&nbsp;&lt;input id=&quot;user&quot; type=&quot;text&quot; name=&quot;user&quot; title=&quot;Username&quot; value=&quot;&quot; tabindex=&quot;1&quot; /&gt;<br />&lt;/div&gt;<br />&nbsp;&nbsp;&nbsp; <br />&lt;div id=&quot;password&quot;&gt;<br />&nbsp;&lt;label for=&quot;pass&quot; class=&quot;overlabel&quot;&gt;Password&lt;/label&gt;<br />&nbsp;&lt;input id=&quot;pass&quot; type=&quot;password&quot; name=&quot;pass&quot; title=&quot;Password&quot; value=&quot;&quot; tabindex=&quot;2&quot; /&gt;<br />&lt;/div&gt;<br />&nbsp;&nbsp;&nbsp; <br />&lt;div id=&quot;submit&quot;&gt;<br />&nbsp;&nbsp;&nbsp; &lt;input type=&quot;hidden&quot; name=&quot;logintype&quot; value=&quot;login&quot; /&gt;<br />&nbsp;&nbsp;&nbsp; &lt;input type=&quot;submit&quot; name=&quot;submit&quot; value=&quot;Login&quot; tabindex=&quot;3&quot; /&gt;<br />&lt;/div&gt;</pre>
<h3>Apply the form through TypoScript</h3>
<p class="bodytext">The TypoScript Object Browser can be used to find where FORM object is used for the forms that can be inserted (tt_content.login.20, tt_content.mailform.20 etc).</p>
<pre>tt_content.login.20 {<br />&nbsp;&nbsp;&nbsp; formName = login<br />&nbsp;&nbsp;&nbsp; data &gt;<br />&nbsp;&nbsp;&nbsp; dataArray &gt;<br />&nbsp;&nbsp;&nbsp; stdWrap.wrap (<br /><em>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;div id=&quot;username&quot;&gt;<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&lt;label for=&quot;user&quot; class=&quot;overlabel&quot;&gt;Username&lt;/label&gt;<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&lt;input id=&quot;user&quot; type=&quot;text&quot; name=&quot;user&quot; title=&quot;Username&quot; value=&quot;&quot; tabindex=&quot;1&quot; /&gt;<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;/div&gt;<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; <br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;div id=&quot;password&quot;&gt;<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&lt;label for=&quot;pass&quot; class=&quot;overlabel&quot;&gt;Password&lt;/label&gt;<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&lt;input id=&quot;pass&quot; type=&quot;password&quot; name=&quot;pass&quot; title=&quot;Password&quot; value=&quot;&quot; tabindex=&quot;2&quot; /&gt;<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;/div&gt;<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; <br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;div id=&quot;submit&quot;&gt;<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;input type=&quot;hidden&quot; name=&quot;logintype&quot; value=&quot;login&quot; /&gt;<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;input type=&quot;submit&quot; name=&quot;submit&quot; value=&quot;Login&quot; tabindex=&quot;3&quot; /&gt;<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;/div&gt;</em><br />&nbsp;&nbsp;&nbsp; )<br />}</pre>
<h3>Done</h3>
<p class="bodytext">Reload the page in the front-end to see the changes. Besides the login form on this website I have also have a contact form but the technique I have used for that one is a bit different and I'll probably change it to this one soon. There is one thing by the way that I have not been able to fix yet, TYPO3 automatically adds <em>target=&quot;_top&quot; </em>to the &lt;form&gt; tag, which ofcourse is not allowed by the strict doctype so your site will not pass the validors.</p>]]></content:encoded>
			<category>TYPO3</category>
			<category>Web development</category>
			
			
			<pubDate>Tue, 13 Feb 2007 00:48:00 +0100</pubDate>
			
		</item>
		
		<item>
			<title>sIFR and TYPO3</title>
			<link>http://blog.fab1an.nl/index.php?id=8&#38;tx_ttnews%5Btt_news%5D=13&#38;cHash=edcedadee6ed9f800daa1765325939fe</link>
			<description>&quot;Put simply, sIFR allows website headings, pull-quotes and other elements to be styled in...</description>
			<content:encoded><![CDATA[<p class="bodytext"><i>&quot;Put simply, sIFR allows website headings, pull-quotes and other elements to be styled in whatever font the designer chooses - be that Foundry Monoline, Gill Sans, Impact, Frutiger or any other font - without the user having it installed on their machine.&quot; </i>- <a href="http://wiki.novemberborn.net/sifr/What+is+sIFR" title="What is sIFR?" class="external-link-new-window" >Anonymous Coward</a></p>
<p class="bodytext">Sounds pretty good right? So I tried it out and as you can probably see it works pretty good, the titles of the articles on this site are now using <a href="http://typo3.org/teams/design/style-guide/the-typo3-font/" title="Share - A corporate font for TYPO3" >the Share font</a>.</p>
<h3>Lets try it</h3>
<p class="bodytext">One of the downsides of sIFR is that you need to have Flash 8 installed to embed the font into the flash file so it can be used on the site, so if you don't have that you're a bit stuck unless there are other applications that can do the same.</p>
<p class="bodytext">First download the <a href="http://dev.novemberborn.net/sifr3/nightlies/sifr3-r212.zip" title="Nightly build" >sIFR3 source package</a>, I downloaded the latest nightly build but you can also check out <a href="http://dev.novemberborn.net/sifr3/nightlies/" title="List of sIFR3 versions" class="external-link-new-window" >any other version</a>.</p>
<p class="bodytext">Read the <a href="http://wiki.novemberborn.net/sifr3/How+to+use" title="How to use - sIFR 3 Documentation and FAQ" >documentation</a> to make the required changes or download the files below and use them instead of the source package.</p>
<h3>Files</h3>
<p class="bodytext">All the files and changes needed to make it work are:</p>
<p class="bodytext"><a href="fileadmin/sifr/share.swf" title="Initiates file download" class="download" >share.swf</a> - the flash file with the Share font embedded<br /><a href="fileadmin/sifr/sifr-config.js" title="Initiates file download" class="download" >sifr-config.js</a> - to configure which font to use for what<br /><a href="fileadmin/sifr/sIFR-screen.css" title="Initiates file download" class="download" >sIFR-screen.css</a> - configure what to hide when sIFR is active (below line 48)<br /><a href="fileadmin/sifr/sIFR-print.css" title="Initiates file download" class="download" >sIFR-print.css</a> - no changes needed in this file<br /><a href="fileadmin/sifr/sifr.js" title="Initiates file download" class="download" >sifr.js</a> - no changes need in this file</p>
<h3>TypoScript</h3>
<p class="bodytext">I placed the files above all in /fileadmin/sifr/ and then used some TypoScript to load sIFR:</p>
<pre># sIFR configuration<br />page.headerData.10 = TEXT<br />page.headerData.10.value = &lt;script src=&quot;/fileadmin/sifr/sifr.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;<br />page.headerData.20 = TEXT<br />page.headerData.20.value = &lt;script src=&quot;/fileadmin/sifr/sifr-config.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;<br /><br />page.includeCSS.file003 = fileadmin/sifr/sIFR-screen.css<br />page.includeCSS.file003.media = screen<br />page.includeCSS.file004 = fileadmin/sifr/sIFR-print.css<br />page.includeCSS.file004.media = print</pre>
<p class="bodytext">In the end, I think it works better then using TYPO3/ImageMagick to render custom fonts inside an image because search engines and screen readers will just see the regular HTML headers which they can handle better than generated images and with sIFR you are still able to select/copy the text (impossible with an image).</p>
<h3>TYPO3 extension (gb_sifr)</h3>
<p class="bodytext">After writing this article I found out that there is an <a href="http://typo3.org/extensions/repository/view/gb_sifr/1.1.0/" title="[Gobernalia] Scalable Inman Flash Replacement" >extension</a> that apparently allows you to use sIFR inside the Rich Text Editor by using custom tags, I haven't tried it out but it could be useful.</p>]]></content:encoded>
			<category>TYPO3</category>
			<category>Web development</category>
			
			
			<pubDate>Sat, 27 Jan 2007 17:09:00 +0100</pubDate>
			
		</item>
		
		<item>
			<title>Displaying code snippets with TYPO3</title>
			<link>http://blog.fab1an.nl/index.php?id=8&#38;tx_ttnews%5Btt_news%5D=9&#38;cHash=2e631ad2c139ac8e0649214b0887a8a6</link>
			<description>The other day I made a post about protecting blog comments from spam, in that post I wanted show a...</description>
			<content:encoded><![CDATA[<p class="bodytext">The other day I made a post about protecting blog comments from spam, in that post I wanted show a code snippet but I had some trouble getting it to show properly. The editor (rthtmlarea) was removing <strong>pre </strong>and <strong>br </strong>tags somewhere along the way of saving or displaying the data to or from the database and I couldn't exactly figure out where this was happening.</p>
<p class="bodytext">It seems that manually putting <strong>pre </strong>tags around my snippets wasn't doing the job. What I had to do was change the following setting:</p>
<pre>RTE.default.hidePStyleItems = pre,address</pre>
<p class="bodytext"> to: </p>
<pre>RTE.default.hidePStyleItems = address</pre>
<p class="bodytext"> So by removing <strong>pre </strong>from <strong>hidePStyleItems </strong>I could actually select my code snippet in the editor and select <strong>Preformatted </strong>from the list of paragraph types (where it was not shown before changing the setting), this way the code snippet is shown perfectly in the front-end.</p>
<p class="bodytext">Now all that was left was to give the pre tag some nice style:</p>
<pre>pre {<br />&nbsp;font-family: &quot;Lucida Console&quot;, &quot;fixedsys&quot;, sans-serif;<br />&nbsp;font-size: 12px;<br />&nbsp;padding: 5px;<br />&nbsp;border: 1px solid #dedede;<br />&nbsp;background-color: #f9f9f9;<br />&nbsp;color: #a22100;&nbsp; <br />&nbsp;overflow: auto;<br />}</pre>
<p class="bodytext">There you go, code snippets shown properly.</p>
<p class="bodytext"><br /><strong>Update Jan 8, 2007:</strong></p>
<p class="bodytext">To make it show almost exactly the same in the back-end as in the front-end, I moved the css code for pre to a different stylesheet called rte.css, I then included this stylesheet in both the PAGE object (page.includeCSS.file002 = fileadmin/rte.css) and the RTE configuration (RTE.default.contentCSS = fileadmin/rte.css).</p>]]></content:encoded>
			<category>TYPO3</category>
			<category>Web development</category>
			
			
			<pubDate>Wed, 03 Jan 2007 04:25:00 +0100</pubDate>
			
		</item>
		
		<item>
			<title>Enabling spam protection for blog comments</title>
			<link>http://blog.fab1an.nl/index.php?id=8&#38;tx_ttnews%5Btt_news%5D=5&#38;cHash=451eb483b5706e3af5df6053f32ce157</link>
			<description>I just finished adding spam protection to the commenting system used on this blog. By adding a...</description>
			<content:encoded><![CDATA[<p class="bodytext">I just finished adding spam protection to the commenting system used on this blog. By adding a <a href="http://en.wikipedia.org/wiki/CAPTCHA" title="Opens external link in new window" class="external-link-new-window" >CAPTCHA</a> field to the comment form, <a href="http://en.wikipedia.org/wiki/Internet_bot" title="Opens external link in new window" class="external-link-new-window" >bots</a> can no longer automatically add spam comments.</p>
<p class="bodytext">Enabling this feature turned out to be fairly simple. Just install <a href="http://typo3.org/extensions/repository/view/sr_freecap/" title="Opens external link in new window" class="external-link-new-window" >sr_freecap</a>, which is an extension for TYPO3 that can generate the CAPTCHA fields. The guestbook extension (ve_guestbook) which is used for comments has support sr_freecap by default, so the only thing you need to do is update the guestbook template used by TIMTAB (default is: EXT:timtab\res\kubrick\kubrick_ve_guestbook.tmpl).</p>
<p class="bodytext">Update the template by adding the following lines:</p>
<pre>&lt;!--###CAPTCHA_INSERT### this subpart is removed if CAPTCHA is not enabled! --&gt;<br />&nbsp;&nbsp;&nbsp; &lt;p&gt;<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;input type=&quot;text&quot; name=&quot;tx_veguestbook_pi1[captcha_response]&quot; title=&quot;###SR_FREECAP_NOTICE###&quot; value=&quot;&quot; /&gt;<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;label for=&quot;email&quot;&gt;<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;small&gt;<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; ###SR_FREECAP_NOTICE### ###SR_FREECAP_CANT_READ###<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;/small&gt;<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;/label&gt;<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;br /&gt;<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;br /&gt;<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; ###SR_FREECAP_IMAGE###<br />&nbsp;&nbsp;&nbsp; &lt;/p&gt;<br />&lt;!--###CAPTCHA_INSERT###--&gt;</pre>
<p class="bodytext">That's it! Your blog is now protected from comment spam.</p>]]></content:encoded>
			<category>TYPO3</category>
			<category>Web development</category>
			
			
			<pubDate>Sun, 31 Dec 2006 11:06:00 +0100</pubDate>
			
		</item>
		
		<item>
			<title>Issues while getting TIMTAB up and running</title>
			<link>http://blog.fab1an.nl/index.php?id=8&#38;tx_ttnews%5Btt_news%5D=4&#38;cHash=b84ef6b021460215f2bd79fcba7c8a09</link>
			<description>As my first post I will describe a few things I had to deal with while setting up TIMTAB:
Problem...</description>
			<content:encoded><![CDATA[<p class="bodytext">As my first post I will describe a few things I had to deal with while setting up TIMTAB:</p>
<p class="bodytext"><strong>Problem 1: Background images not being displayed</strong></p>
<p class="bodytext">This seemed to be caused by the path defined wrong for the background images in the default kubrick template, so this was fixed by redefining the paths in TS setup like below:</p>
<pre>page {<br />CSS_inlineStyle (<br />&nbsp;&nbsp;&nbsp; body { background: url(../{$page.file.kubrickbgcolor}); }<br />&nbsp;&nbsp;&nbsp; #page { background: url(../{$page.file.kubrickbgwide}) repeat-y top; border: none; }<br />&nbsp;&nbsp;&nbsp; #header { background: url(../{$page.file.kubrickheader}) no-repeat bottom center; margin: 0 !important; margin: 0 0 0 1px; padding: 1px; height: 198px; width: 758px; }<br />&nbsp;&nbsp;&nbsp; #headerimg { margin: 7px 9px 0; height: 192px; width: 740px; }<br />&nbsp;&nbsp;&nbsp; #footer { background: url(../{$page.file.kubrickfooter}) no-repeat bottom; border: none;}<br />&nbsp;&nbsp;&nbsp; )<br />}</pre>
<p class="bodytext"><strong>Problem 2: Comments being displayed with the wrong template</strong></p>
<p class="bodytext">With the default configuration it seems that the HTML template defined for the comments (ve_guestbook) refers to the default ve_guestbook template instead of the kubrick comments template. By simply redefining it like below in TS setup the problem is solved:</p>
<pre>plugin.tx_veguestbook_pi1 {<br />&nbsp;&nbsp;&nbsp; templateFile = EXT:timtab/res/kubrick/kubrick_ve_guestbook.tmpl<br />}</pre>
<p class="bodytext"><br /><strong>TIMTAB development blog</strong></p>
<p class="bodytext">Other than the two issues mentioned above TIMTAB seems to be working nice so far. For more information regarding TIMTAB check out the author's blog at: <a href="http://www.ingo-renner.com/index.php?id=timtab" title="Weblog of Ingo Renner" class="external-link" >http://www.ingo-renner.com/index.php?id=timtab</a>.</p>]]></content:encoded>
			<category>TYPO3</category>
			<category>Web development</category>
			
			
			<pubDate>Sun, 31 Dec 2006 06:33:00 +0100</pubDate>
			
		</item>
		
	</channel>
</rss>