<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atom10full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearchrss/1.0/" xmlns:georss="http://www.georss.org/georss" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0"><id>tag:blogger.com,1999:blog-21038523</id><updated>2009-08-11T06:18:32.443+02:00</updated><title type="text">TechChicken</title><subtitle type="html">A blog for technical stuff...</subtitle><link rel="alternate" type="text/html" href="http://madchicken.altervista.org/tech/" /><link rel="hub" href="http://pubsubhubbub.appspot.com/" /><link rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml" href="http://madchicken.altervista.org/tech/atom.xml" /><author><name>Madchicken</name><uri>http://www.blogger.com/profile/17697650711794336733</uri><email>noreply@blogger.com</email></author><generator version="7.00" uri="http://www.blogger.com">Blogger</generator><openSearch:totalResults>21</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><logo>http://creativecommons.org/images/public/somerights20.gif</logo><link rel="self" href="http://feeds.feedburner.com/techchicken" type="application/atom+xml" /><feedburner:browserFriendly>This is an XML content feed. It is intended to be viewed in a newsreader or syndicated to another site, subject to copyright and fair use.</feedburner:browserFriendly><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com" /><entry><id>tag:blogger.com,1999:blog-21038523.post-3324342589700980192</id><published>2008-09-12T10:07:00.002+02:00</published><updated>2008-09-12T10:12:35.145+02:00</updated><title type="text">Deserializer 1.6.1 is out</title><content type="html">Another update of &lt;a href="http://madchicken.altervista.org/js/deserialize.js"&gt;deserializer.js&lt;/a&gt; is out. It fixes problems with forms that have default values.&lt;br /&gt;Many thanks to &lt;a href="http://www.blogger.com/profile/12985527835829840857"&gt;solgae&lt;/a&gt; for this update!&lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client = "pub-4774451664341226";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
//--&gt;&lt;/script&gt;
&lt;script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;
&lt;/script&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21038523-3324342589700980192?l=madchicken.altervista.org%2Ftech%2Findex.html'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=EzF6nC3XiPQ:hx6zJJV8RME:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=EzF6nC3XiPQ:hx6zJJV8RME:63t7Ie-LG7Y"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=63t7Ie-LG7Y" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=EzF6nC3XiPQ:hx6zJJV8RME:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=EzF6nC3XiPQ:hx6zJJV8RME:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=EzF6nC3XiPQ:hx6zJJV8RME:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?i=EzF6nC3XiPQ:hx6zJJV8RME:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.blogger.com/feeds/21038523/3324342589700980192/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=21038523&amp;postID=3324342589700980192" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/21038523/posts/default/3324342589700980192" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/21038523/posts/default/3324342589700980192" /><link rel="alternate" type="text/html" href="http://madchicken.altervista.org/tech/2008/09/deserializer-161-is-out.html" title="Deserializer 1.6.1 is out" /><author><name>Madchicken</name><uri>http://www.blogger.com/profile/17697650711794336733</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="16382048800480635377" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total><link rel="license" type="text/html" href="http://creativecommons.org/licenses/by/2.0/" /></entry><entry><id>tag:blogger.com,1999:blog-21038523.post-368773559793357896</id><published>2008-01-23T15:46:00.001+01:00</published><updated>2008-05-15T15:47:50.980+02:00</updated><title type="text">Deserialize, another update</title><content type="html">Some of you pointed out some problems and some possible upgrade for the &lt;a href="http://madchicken.altervista.org/tech/2006/02/prototype-form-serialization-and.html"&gt;"prototype form deserializer"&lt;/a&gt;.&lt;br /&gt;So, &lt;a href="http://madchicken.altervista.org/js/deserialize.js"&gt;here it is&lt;/a&gt; an updated version of the script: the deserialization of textareas should now work (thanks to &lt;a href="http://www.blogger.com/profile/16744179855302741518"&gt;Gliebster&lt;/a&gt;) adds support for JSON deserialization (thanks to &lt;a href="http://www.blogger.com/profile/10667489476751566804"&gt;krzak&lt;/a&gt;).&lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client = "pub-4774451664341226";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
//--&gt;&lt;/script&gt;
&lt;script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;
&lt;/script&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21038523-368773559793357896?l=madchicken.altervista.org%2Ftech%2Findex.html'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=oIF_oRtiKAs:88NnvgZTps8:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=oIF_oRtiKAs:88NnvgZTps8:63t7Ie-LG7Y"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=63t7Ie-LG7Y" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=oIF_oRtiKAs:88NnvgZTps8:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=oIF_oRtiKAs:88NnvgZTps8:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=oIF_oRtiKAs:88NnvgZTps8:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?i=oIF_oRtiKAs:88NnvgZTps8:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.blogger.com/feeds/21038523/368773559793357896/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=21038523&amp;postID=368773559793357896" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/21038523/posts/default/368773559793357896" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/21038523/posts/default/368773559793357896" /><link rel="alternate" type="text/html" href="http://madchicken.altervista.org/tech/2008/01/some-of-you-pointed-out-some-problems.html" title="Deserialize, another update" /><author><name>Madchicken</name><uri>http://www.blogger.com/profile/17697650711794336733</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="16382048800480635377" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><link rel="license" type="text/html" href="http://creativecommons.org/licenses/by/2.0/" /></entry><entry><id>tag:blogger.com,1999:blog-21038523.post-3549821721205050439</id><published>2007-09-23T17:43:00.000+02:00</published><updated>2007-09-23T17:57:00.902+02:00</updated><title type="text">Did you remember the Gajim Status Plugin?</title><content type="html">Hi all! Thanks to Raoul Jean Pierre Bonnal, I released an updated version of the Gajim Status plugin &lt;a href="http://madchicken.altervista.org/tech/2006/10/rhythmbox-096-plugin-for-gajim-status.html"&gt;I released long time ago&lt;/a&gt;. This new version (0.4) now supports Rhythmbox 0.9.8 and Gajim 0.11.1.&lt;br /&gt;&lt;br /&gt;The plugin is useful only if your version of Rhythmbox does not support D-Bus API, since Gajim from versoin 0.11 speaks directly to Rhythmbox via its D-Bus API.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://madchicken.altervista.org/tech/download/gajim-status.tar.gz"&gt;Download the plugin here&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client = "pub-4774451664341226";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
//--&gt;&lt;/script&gt;
&lt;script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;
&lt;/script&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21038523-3549821721205050439?l=madchicken.altervista.org%2Ftech%2Findex.html'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=Hithyq8vq6M:Wb2EMowPvlo:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=Hithyq8vq6M:Wb2EMowPvlo:63t7Ie-LG7Y"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=63t7Ie-LG7Y" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=Hithyq8vq6M:Wb2EMowPvlo:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=Hithyq8vq6M:Wb2EMowPvlo:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=Hithyq8vq6M:Wb2EMowPvlo:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?i=Hithyq8vq6M:Wb2EMowPvlo:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.blogger.com/feeds/21038523/3549821721205050439/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=21038523&amp;postID=3549821721205050439" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/21038523/posts/default/3549821721205050439" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/21038523/posts/default/3549821721205050439" /><link rel="alternate" type="text/html" href="http://madchicken.altervista.org/tech/2007/09/did-you-remember-gajim-status-plugin.html" title="Did you remember the Gajim Status Plugin?" /><author><name>Madchicken</name><uri>http://www.blogger.com/profile/17697650711794336733</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="16382048800480635377" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><link rel="license" type="text/html" href="http://creativecommons.org/licenses/by/2.0/" /></entry><entry><id>tag:blogger.com,1999:blog-21038523.post-3750870041688139318</id><published>2007-08-13T12:14:00.000+02:00</published><updated>2007-08-13T12:16:09.681+02:00</updated><title type="text">Deserializer update</title><content type="html">Hi guys...&lt;a href="http://madchicken.altervista.org/js/deserialize.js"&gt;here it is&lt;/a&gt; an updated version of my script &lt;a href="http://madchicken.altervista.org/tech/2006/02/prototype-form-serialization-and.html"&gt;"prototype form deserializer"&lt;/a&gt;. It solves some bugs people all around has found using it. Thanks to all.&lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client = "pub-4774451664341226";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
//--&gt;&lt;/script&gt;
&lt;script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;
&lt;/script&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21038523-3750870041688139318?l=madchicken.altervista.org%2Ftech%2Findex.html'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=xro9BPZk4zQ:SokDAy6u1g8:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=xro9BPZk4zQ:SokDAy6u1g8:63t7Ie-LG7Y"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=63t7Ie-LG7Y" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=xro9BPZk4zQ:SokDAy6u1g8:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=xro9BPZk4zQ:SokDAy6u1g8:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=xro9BPZk4zQ:SokDAy6u1g8:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?i=xro9BPZk4zQ:SokDAy6u1g8:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.blogger.com/feeds/21038523/3750870041688139318/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=21038523&amp;postID=3750870041688139318" title="4 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/21038523/posts/default/3750870041688139318" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/21038523/posts/default/3750870041688139318" /><link rel="alternate" type="text/html" href="http://madchicken.altervista.org/tech/2007/08/deserializer-update.html" title="Deserializer update" /><author><name>Madchicken</name><uri>http://www.blogger.com/profile/17697650711794336733</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="16382048800480635377" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">4</thr:total><link rel="license" type="text/html" href="http://creativecommons.org/licenses/by/2.0/" /></entry><entry><id>tag:blogger.com,1999:blog-21038523.post-77071905818248888</id><published>2007-06-24T16:36:00.000+02:00</published><updated>2007-06-24T17:02:33.511+02:00</updated><title type="text">A long delay</title><content type="html">After a long period of hard work, I return here to this blog, trying to update some of the scripts I published time ago.&lt;br /&gt;I saw that the script &lt;a href="http://madchicken.altervista.org/tech/2006/10/using-lightbox-to-prevent-form-double.html"&gt;to prevent double submits&lt;/a&gt; had a great success around here...but also it had (and probably has) some bug.&lt;br /&gt;One of those bug is strictly connected to the way browsers are managing events. I the case of my script, the return of an onsubit event was simply ignored: so there was no way to stop the layer to popup after the submit button was pressed, even if the return of the event was &lt;span style="font-style:italic;"&gt;false&lt;/span&gt;.&lt;br /&gt;Now I slightly modified the script, removing the use of Event.observe method (the prototype extension) and adding a more rough but secure way of handling the onsubmit form event, hooking it and calling it just before the layer show.&lt;br /&gt;You can download the latest version &lt;a href="http://madchicken.altervista.org/tech/download/preventdoublesubmit.zip"&gt;here&lt;/a&gt;.&lt;br /&gt;The previous version is still available &lt;a href="http://madchicken.altervista.org/tech/download/preventdoublesubmit_1.9.zip"&gt;here&lt;/a&gt;.&lt;br /&gt;The example was also updated, to show how the script now works.&lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client = "pub-4774451664341226";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
//--&gt;&lt;/script&gt;
&lt;script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;
&lt;/script&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21038523-77071905818248888?l=madchicken.altervista.org%2Ftech%2Findex.html'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=mKNVaLEpeTk:qBb2gx0iK7k:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=mKNVaLEpeTk:qBb2gx0iK7k:63t7Ie-LG7Y"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=63t7Ie-LG7Y" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=mKNVaLEpeTk:qBb2gx0iK7k:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=mKNVaLEpeTk:qBb2gx0iK7k:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=mKNVaLEpeTk:qBb2gx0iK7k:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?i=mKNVaLEpeTk:qBb2gx0iK7k:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.blogger.com/feeds/21038523/77071905818248888/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=21038523&amp;postID=77071905818248888" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/21038523/posts/default/77071905818248888" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/21038523/posts/default/77071905818248888" /><link rel="alternate" type="text/html" href="http://madchicken.altervista.org/tech/2007/06/long-delay.html" title="A long delay" /><author><name>Madchicken</name><uri>http://www.blogger.com/profile/17697650711794336733</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="16382048800480635377" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><link rel="license" type="text/html" href="http://creativecommons.org/licenses/by/2.0/" /></entry><entry><id>tag:blogger.com,1999:blog-21038523.post-6489125379662524701</id><published>2007-03-08T09:26:00.001+01:00</published><updated>2008-09-12T10:05:54.018+02:00</updated><title type="text">Updated version of deserializer</title><content type="html">I just &lt;a href="http://madchicken.altervista.org/js/deserialize.js"&gt;released&lt;/a&gt; an updated version of my old script &lt;a href="http://madchicken.altervista.org/tech/2006/02/prototype-form-serialization-and.html"&gt;"prototype form deserializer"&lt;/a&gt;. It solves some bugs and now uses &lt;a href="http://www.prototypejs.org/"&gt;Prototype 1.5&lt;/a&gt;. An updated version of the example can be found &lt;a href="http://madchicken.altervista.org/tech/download/deserializer.tgz"&gt;here&lt;/a&gt;.&lt;br /&gt;See the old post and its comments for a detailed list of fix of this release.&lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client = "pub-4774451664341226";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
//--&gt;&lt;/script&gt;
&lt;script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;
&lt;/script&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21038523-6489125379662524701?l=madchicken.altervista.org%2Ftech%2Findex.html'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=E5TAH-ItCCU:GjLY5ijFrvw:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=E5TAH-ItCCU:GjLY5ijFrvw:63t7Ie-LG7Y"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=63t7Ie-LG7Y" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=E5TAH-ItCCU:GjLY5ijFrvw:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=E5TAH-ItCCU:GjLY5ijFrvw:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=E5TAH-ItCCU:GjLY5ijFrvw:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?i=E5TAH-ItCCU:GjLY5ijFrvw:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.blogger.com/feeds/21038523/6489125379662524701/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=21038523&amp;postID=6489125379662524701" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/21038523/posts/default/6489125379662524701" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/21038523/posts/default/6489125379662524701" /><link rel="alternate" type="text/html" href="http://madchicken.altervista.org/tech/2007/03/updated-version-of-deserializer.html" title="Updated version of deserializer" /><author><name>Madchicken</name><uri>http://www.blogger.com/profile/17697650711794336733</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="16382048800480635377" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><link rel="license" type="text/html" href="http://creativecommons.org/licenses/by/2.0/" /></entry><entry><id>tag:blogger.com,1999:blog-21038523.post-2090584055300126904</id><published>2007-03-07T09:43:00.000+01:00</published><updated>2007-03-07T11:50:02.240+01:00</updated><title type="text">Updated PreventDoubleSubmit script</title><content type="html">It was a "long" time ago when I published a &lt;a href="http://www2.blogger.com/comment.g?blogID=21038523&amp;postID=116135490124709357&amp;isPopup=true"&gt;"not so good"&lt;/a&gt; PreventDoubleSubmit script, a little script that using prototype and lightbox aims to prevent double submit of forms in your site.&lt;br /&gt;&lt;a href="http://madchicken.altervista.org/tech/2006/10/using-lightbox-to-prevent-form-double.html"&gt;I recently updated&lt;/a&gt; the script, correcting it and adding a new feature.&lt;br /&gt;Read the &lt;a href="http://madchicken.altervista.org/tech/2006/10/using-lightbox-to-prevent-form-double.html"&gt;old article&lt;/a&gt; and its comments, you'll be able to add the new script in a minute to your site.&lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client = "pub-4774451664341226";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
//--&gt;&lt;/script&gt;
&lt;script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;
&lt;/script&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21038523-2090584055300126904?l=madchicken.altervista.org%2Ftech%2Findex.html'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=d4jkzF1tDeA:xxOjN4LyGes:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=d4jkzF1tDeA:xxOjN4LyGes:63t7Ie-LG7Y"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=63t7Ie-LG7Y" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=d4jkzF1tDeA:xxOjN4LyGes:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=d4jkzF1tDeA:xxOjN4LyGes:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=d4jkzF1tDeA:xxOjN4LyGes:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?i=d4jkzF1tDeA:xxOjN4LyGes:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.blogger.com/feeds/21038523/2090584055300126904/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=21038523&amp;postID=2090584055300126904" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/21038523/posts/default/2090584055300126904" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/21038523/posts/default/2090584055300126904" /><link rel="alternate" type="text/html" href="http://madchicken.altervista.org/tech/2007/03/updated-preventdoublesubmit-script.html" title="Updated PreventDoubleSubmit script" /><author><name>Madchicken</name><uri>http://www.blogger.com/profile/17697650711794336733</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="16382048800480635377" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">1</thr:total><link rel="license" type="text/html" href="http://creativecommons.org/licenses/by/2.0/" /></entry><entry><id>tag:blogger.com,1999:blog-21038523.post-116291631947181384</id><published>2006-11-07T17:12:00.000+01:00</published><updated>2006-11-13T10:52:19.132+01:00</updated><title type="text">LiveHTTPHeaders for Firefox 2.0</title><content type="html">For those who, like me, need to use this extension with the new &lt;a href="http://www.mozilla.com"&gt;Firefox&lt;/a&gt; version, &lt;a href="http://madchicken.altervista.org/tech/download/livehttpheaders-0.12-madchicken.xpi"&gt;here's a patched xpi&lt;/a&gt;.&lt;br /&gt;This is version 0.12 with a patched install.rdf file in it, that allows the extension to be installed on Firefox 2.&lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client = "pub-4774451664341226";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
//--&gt;&lt;/script&gt;
&lt;script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;
&lt;/script&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21038523-116291631947181384?l=madchicken.altervista.org%2Ftech%2Findex.html'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=qBFERnibNCo:rSKeU2ZvmgE:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=qBFERnibNCo:rSKeU2ZvmgE:63t7Ie-LG7Y"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=63t7Ie-LG7Y" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=qBFERnibNCo:rSKeU2ZvmgE:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=qBFERnibNCo:rSKeU2ZvmgE:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=qBFERnibNCo:rSKeU2ZvmgE:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?i=qBFERnibNCo:rSKeU2ZvmgE:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.blogger.com/feeds/21038523/116291631947181384/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=21038523&amp;postID=116291631947181384" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/21038523/posts/default/116291631947181384" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/21038523/posts/default/116291631947181384" /><link rel="alternate" type="text/html" href="http://madchicken.altervista.org/tech/2006/11/livehttpheaders-for-firefox-20.html" title="LiveHTTPHeaders for Firefox 2.0" /><author><name>Madchicken</name><uri>http://www.blogger.com/profile/17697650711794336733</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="16382048800480635377" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><link rel="license" type="text/html" href="http://creativecommons.org/licenses/by/2.0/" /></entry><entry><id>tag:blogger.com,1999:blog-21038523.post-116135490124709357</id><published>2006-10-20T16:01:00.000+02:00</published><updated>2007-03-07T09:42:15.586+01:00</updated><title type="text">Using Lightbox to prevent form double submit</title><content type="html">Some month ago I wrote a javascript class that uses a slightly modified version of &lt;a href="http://www.huddletogether.com/projects/lightbox/"&gt;Lightbox&lt;/a&gt; to prevent users to click twice on a form submit button.&lt;br /&gt;The idea is simple: just add a lightbox layer when a user clicks on a submit button and the game is done. This is not an elegant solution, but it works in many cases.&lt;br /&gt;It works also with links that try to call form.submit() method: this class saves previously defined &lt;span style="font-style: italic;"&gt;submit&lt;/span&gt; functions, creates the layer and then calls old function (if it exists).&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;var LightboxForm = Class.create();&lt;br /&gt;LightboxForm.prototype = {&lt;br /&gt;&lt;br /&gt;yPos : 0,&lt;br /&gt;xPos : 0,&lt;br /&gt;&lt;br /&gt;initialize: function(form) {&lt;br /&gt;  form = $(form);&lt;br /&gt;  form.oldsubmitdoublesubmit = form.submit;&lt;br /&gt;  form._lightbox_ = this;&lt;br /&gt;&lt;br /&gt; Event.observe(form, 'submit', this.disableWithOverlay.bindAsEventListener(form), false);&lt;br /&gt; form.submit = this.disableWithOverlayJS;&lt;br /&gt;},&lt;br /&gt;&lt;br /&gt;uninstall: function(form) {&lt;br /&gt; form = $(form);&lt;br /&gt; form.submit = form.oldsubmitdoublesubmit;&lt;br /&gt; Event.stopObserving(form, 'submit', this.disableWithOverlay.bindAsEventListener(form), false);&lt;br /&gt;},&lt;br /&gt;&lt;br /&gt;disableWithOverlay: function(event) {&lt;br /&gt; if(event.returnValue != false) {&lt;br /&gt;  this._lightbox_.activate();&lt;br /&gt;  return true;&lt;br /&gt; } else {&lt;br /&gt;  return false;&lt;br /&gt; }&lt;br /&gt;},&lt;br /&gt;&lt;br /&gt;disableWithOverlayJS: function(event) {&lt;br /&gt; this._lightbox_.activate();&lt;br /&gt; return this.oldsubmitdoublesubmit();&lt;br /&gt;},&lt;br /&gt;&lt;br /&gt;// Turn everything on - mainly the IE fixes&lt;br /&gt;activate: function(){&lt;br /&gt; if (browser == 'Internet Explorer'){&lt;br /&gt;  this.getScroll();&lt;br /&gt;  this.setScroll(0,0);&lt;br /&gt;  this.hideSelects('hidden');&lt;br /&gt; }&lt;br /&gt; this.displayLightbox("block");&lt;br /&gt;},&lt;br /&gt;&lt;br /&gt;// Ie requires height to 100% and overflow hidden or else you can scroll down past the lightbox&lt;br /&gt;prepareIE: function(height, overflow){&lt;br /&gt; bod = document.getElementsByTagName('body')[0];&lt;br /&gt; bod.style.height = height;&lt;br /&gt; bod.style.overflow = overflow;&lt;br /&gt;&lt;br /&gt; htm = document.getElementsByTagName('html')[0];&lt;br /&gt; htm.style.height = height;&lt;br /&gt; htm.style.overflow = overflow;&lt;br /&gt;},&lt;br /&gt;&lt;br /&gt;// In IE, select elements hover on top of the lightbox&lt;br /&gt;hideSelects: function(visibility){&lt;br /&gt; selects = document.getElementsByTagName('select');&lt;br /&gt; for(i = 0; i &lt; visibility =" visibility;" ypos =" self.pageYOffset;" ypos =" document.documentElement.scrollTop;" ypos =" document.body.scrollTop;" display =" display;" display =" display;" browser ="=""&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;When the lightbox is activated a div called &lt;span style="font-weight: bold;"&gt;lightbox&lt;/span&gt; is displayed, so if you want provide some information to the user you can define a div using a function like this:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;// Add in markup necessary to make this work. Basically two divs:&lt;br /&gt;// Overlay holds the shadow&lt;br /&gt;// Lightbox is the centered square that the content is put into.&lt;br /&gt;addLightboxMarkup: function() {&lt;br /&gt;bod = document.getElementsByTagName('body')[0];&lt;br /&gt;overlay = document.createElement('div');&lt;br /&gt;overlay.id = 'overlay';&lt;br /&gt;bod.appendChild(overlay);&lt;br /&gt;&lt;br /&gt;message = document.createElement('div');&lt;br /&gt;message.id = 'lightbox';&lt;br /&gt;message.className = 'leightbox';&lt;br /&gt;message.innerHTML = 'Request sent, please wait...';&lt;br /&gt;bod.appendChild(message);&lt;br /&gt;}&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;Somewhere in your html page you should put something like:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;new PreventDoubleSubmit();&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;Don't forget to use the right css file. You can get a copy &lt;a href="http://madchicken.altervista.org/tech/download/lightbox.css"&gt;here&lt;/a&gt;&lt;br /&gt;You can download a copy of this javascript code &lt;a href="http://madchicken.altervista.org/tech/download/preventdoublesubmit.js"&gt;here&lt;/a&gt;. In this file you will find also a class that provides an hook on onload window event to allow all forms in the current page to be wrapped by the LightboxForm object.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Update 1:&lt;/span&gt;&lt;br /&gt;The script relies on &lt;a href="http://www.prototypejs.org/"&gt;prototype.js&lt;/a&gt; and uses a &lt;a href="http://madchicken.altervista.org/tech/download/browserdetect.js"&gt;script&lt;/a&gt; to detect the browser (the script was made from Chris Campbell from &lt;a href="http://particletree.com"&gt;ParticleTree&lt;/a&gt;).&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Update 2:&lt;/span&gt; due to some error in this post, the script was not working. I apologies for this: this post was made too quickly in the past.&lt;br /&gt;Now I made a little example on how to integrate the script in your pages. Just download &lt;a href="http://madchicken.altervista.org/tech/download/preventdoublesubmit.zip"&gt;this&lt;/a&gt; archive and see the index.html file. It should be quite easy to understand.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Update 3:&lt;/span&gt; Thanks to Ken B. I added a simple and nice feature to the script: customizable html message for the submit.&lt;br /&gt;Actually the message showing during submit is controlled by this line: &lt;i&gt;message.innerHTML = 'Request sent, please wait...';&lt;/i&gt;.&lt;br/&gt;&lt;br /&gt;I changed the source code to let you pass a custom message to the PreventDoubleSubmit object.&lt;br /&gt;So now you can write something like:&lt;br /&gt;&lt;i&gt;PreventDoubleSubmit('&lt;p&gt;Please wait...&lt;/p&gt;');&lt;/i&gt;. Of course, a default message is generated if you continue to  use the old syntax.&lt;br /&gt;I updated the &lt;a href="http://madchicken.altervista.org/tech/download/preventdoublesubmit.js"&gt;script&lt;/a&gt; and the &lt;a href="http://madchicken.altervista.org/tech/download/preventdoublesubmit.zip"&gt;example&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client = "pub-4774451664341226";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
//--&gt;&lt;/script&gt;
&lt;script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;
&lt;/script&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21038523-116135490124709357?l=madchicken.altervista.org%2Ftech%2Findex.html'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=iMvBeZ60NeM:roye2znhELU:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=iMvBeZ60NeM:roye2znhELU:63t7Ie-LG7Y"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=63t7Ie-LG7Y" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=iMvBeZ60NeM:roye2znhELU:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=iMvBeZ60NeM:roye2znhELU:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=iMvBeZ60NeM:roye2znhELU:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?i=iMvBeZ60NeM:roye2znhELU:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.blogger.com/feeds/21038523/116135490124709357/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=21038523&amp;postID=116135490124709357" title="26 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/21038523/posts/default/116135490124709357" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/21038523/posts/default/116135490124709357" /><link rel="alternate" type="text/html" href="http://madchicken.altervista.org/tech/2006/10/using-lightbox-to-prevent-form-double.html" title="Using Lightbox to prevent form double submit" /><author><name>Madchicken</name><uri>http://www.blogger.com/profile/17697650711794336733</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="16382048800480635377" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">26</thr:total><link rel="license" type="text/html" href="http://creativecommons.org/licenses/by/2.0/" /></entry><entry><id>tag:blogger.com,1999:blog-21038523.post-116065207737553316</id><published>2006-10-12T12:39:00.000+02:00</published><updated>2006-11-13T10:52:18.973+01:00</updated><title type="text">Rhythmbox 0.9.6: a plugin for Gajim status message</title><content type="html">I recently switched to Ubuntu Edgy, the new release of &lt;a href="http://www.ubuntu.com"&gt;Ubuntu Linux&lt;/a&gt;. Edgy is still in beta, but works well here on my laptop.&lt;br /&gt;One of the new applications that comes with Gnome 2.16 is &lt;a href="http://www.gnome.org/projects/rhythmbox/"&gt;Rhythmbox 0.9.6&lt;/a&gt;, the default Gnome music player. This new release has plugins support: plugins can be written in c or using the python binding.&lt;br /&gt;Python is very simple, so I wrote a simple plugin that changes the status message of &lt;a href="http://www.gajim.org/"&gt;Gajim Jabber client&lt;/a&gt; according with the song you are playing in &lt;a href="http://www.gnome.org/projects/rhythmbox/"&gt;Rhythmbox&lt;/a&gt;. &lt;br /&gt;This little piece of code uses dbus to communicate with Gajim, gconf to save the configuration and glade for the user interface.&lt;br /&gt;It is a 0.1 version, so keep it "as is". It just works, and shows how to use some &lt;a href="http://www.gnome.org/projects/rhythmbox/"&gt;Rhythmbox&lt;/a&gt; features from a python plugin.&lt;br /&gt;To try it, just extract &lt;a href="http://madchicken.altervista.org/tech/download/gajim-status.tar.gz"&gt;the package&lt;/a&gt; into your ~/.gnome2/rhythmbox/plugins/ folder and start the player. That's all.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;UPDATE to version 0.2:&lt;/span&gt; some make up to the code and added the possibility to customize the "no music" message.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;UPDATE to version 0.3:&lt;/span&gt; Waiting for Gajim 0.11, I upgraded the plugin to v0.3. This version provides a [paused] message when you stop rhythmbox and some minor bug fixes.&lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client = "pub-4774451664341226";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
//--&gt;&lt;/script&gt;
&lt;script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;
&lt;/script&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21038523-116065207737553316?l=madchicken.altervista.org%2Ftech%2Findex.html'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=hpxvO-CptLE:D2vBZmxS_uw:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=hpxvO-CptLE:D2vBZmxS_uw:63t7Ie-LG7Y"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=63t7Ie-LG7Y" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=hpxvO-CptLE:D2vBZmxS_uw:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=hpxvO-CptLE:D2vBZmxS_uw:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=hpxvO-CptLE:D2vBZmxS_uw:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?i=hpxvO-CptLE:D2vBZmxS_uw:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.blogger.com/feeds/21038523/116065207737553316/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=21038523&amp;postID=116065207737553316" title="3 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/21038523/posts/default/116065207737553316" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/21038523/posts/default/116065207737553316" /><link rel="alternate" type="text/html" href="http://madchicken.altervista.org/tech/2006/10/rhythmbox-096-plugin-for-gajim-status.html" title="Rhythmbox 0.9.6: a plugin for Gajim status message" /><author><name>Madchicken</name><uri>http://www.blogger.com/profile/17697650711794336733</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="16382048800480635377" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">3</thr:total><link rel="license" type="text/html" href="http://creativecommons.org/licenses/by/2.0/" /></entry><entry><id>tag:blogger.com,1999:blog-21038523.post-114172913144666237</id><published>2006-03-07T11:53:00.000+01:00</published><updated>2006-11-13T10:52:18.906+01:00</updated><title type="text">DWR 1.1</title><content type="html">&lt;a href="http://getahead.ltd.uk/dwr/changelog/dwr11"&gt;A new version of DWR&lt;/a&gt;, the Java framework for AJAX, is out now.&lt;br /&gt;Well...among others, you can find also my name: &lt;a href="http://getahead.ltd.uk/dwr/server/jsf"&gt;I wrote a JSF integration&lt;/a&gt; for this framework, making possible to resolve managed beans as Javascript objects.&lt;br /&gt;My little contribute for the open source community :)&lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client = "pub-4774451664341226";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
//--&gt;&lt;/script&gt;
&lt;script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;
&lt;/script&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21038523-114172913144666237?l=madchicken.altervista.org%2Ftech%2Findex.html'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=hwyoZDnDNRs:nLFzXeQiAwM:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=hwyoZDnDNRs:nLFzXeQiAwM:63t7Ie-LG7Y"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=63t7Ie-LG7Y" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=hwyoZDnDNRs:nLFzXeQiAwM:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=hwyoZDnDNRs:nLFzXeQiAwM:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=hwyoZDnDNRs:nLFzXeQiAwM:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?i=hwyoZDnDNRs:nLFzXeQiAwM:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.blogger.com/feeds/21038523/114172913144666237/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=21038523&amp;postID=114172913144666237" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/21038523/posts/default/114172913144666237" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/21038523/posts/default/114172913144666237" /><link rel="alternate" type="text/html" href="http://madchicken.altervista.org/tech/2006/03/dwr-11.html" title="DWR 1.1" /><author><name>Madchicken</name><uri>http://www.blogger.com/profile/17697650711794336733</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="16382048800480635377" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><link rel="license" type="text/html" href="http://creativecommons.org/licenses/by/2.0/" /></entry><entry><id>tag:blogger.com,1999:blog-21038523.post-114114326223916789</id><published>2006-02-28T17:04:00.000+01:00</published><updated>2006-11-13T10:52:18.837+01:00</updated><title type="text">Gnome 2.14</title><content type="html">If you're (like me) waiting for this new great release of &lt;a href="http://en.wikipedia.org/wiki/GNOME_desktop"&gt;Gnome&lt;/a&gt;, you can begin by reading &lt;a href="http://www.gnome.org/~davyd/gnome-2-14/"&gt;this&lt;/a&gt; article.&lt;br /&gt;There are many improvements in the 2.14 release, many of them concernig speed up and eye-candy. It will be ready on the 15th of March.&lt;br /&gt;And if you want to be really impressed, well you must check out &lt;a href="http://www.freedesktop.org/~davidr/xgl-demo1.xvid.avi"&gt;this&lt;/a&gt; video: it shows up the new XGL server for linux. I think the video talks by itself...&lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client = "pub-4774451664341226";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
//--&gt;&lt;/script&gt;
&lt;script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;
&lt;/script&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21038523-114114326223916789?l=madchicken.altervista.org%2Ftech%2Findex.html'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=b-wBoRQOLSg:MwhYLUO7-X4:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=b-wBoRQOLSg:MwhYLUO7-X4:63t7Ie-LG7Y"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=63t7Ie-LG7Y" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=b-wBoRQOLSg:MwhYLUO7-X4:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=b-wBoRQOLSg:MwhYLUO7-X4:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=b-wBoRQOLSg:MwhYLUO7-X4:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?i=b-wBoRQOLSg:MwhYLUO7-X4:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.blogger.com/feeds/21038523/114114326223916789/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=21038523&amp;postID=114114326223916789" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/21038523/posts/default/114114326223916789" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/21038523/posts/default/114114326223916789" /><link rel="alternate" type="text/html" href="http://madchicken.altervista.org/tech/2006/02/gnome-214.html" title="Gnome 2.14" /><author><name>Madchicken</name><uri>http://www.blogger.com/profile/17697650711794336733</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="16382048800480635377" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><link rel="license" type="text/html" href="http://creativecommons.org/licenses/by/2.0/" /></entry><entry><id>tag:blogger.com,1999:blog-21038523.post-114010506918175567</id><published>2006-02-16T16:42:00.000+01:00</published><updated>2006-11-13T10:52:18.778+01:00</updated><title type="text">Micro$oft launch Office Live</title><content type="html">&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://membercenter.office.microsoft.com/shell/Images/logo.gif"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 114px;" src="http://membercenter.office.microsoft.com/shell/Images/logo.gif" border="0" alt="" /&gt;&lt;/a&gt; Oh oh...Microsoft has just launched its new service: Office Live, a office suite web based. Wow! It seems awesome! But lets take a look to the system requisites:&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;To use the Edit in Datasheet feature within the Business Applications and Shared Sites areas requires Microsoft Office 2003.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;To export to Business Contact Manager requires Microsoft Office 2003, Microsoft Office XP, or Microsoft Office 2000.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;To import contacts from Microsoft Office Outlook requires Microsoft Office 2003 or Microsoft Office XP.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;To link contacts to Microsoft Office Outlook requires Microsoft Office 2003.&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;Ah...last but not least &lt;span style="font-weight:bold;"&gt;you must use Internet Explorer&lt;/span&gt; in order to use Office Live.&lt;br /&gt;Another time: good work Bill.&lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client = "pub-4774451664341226";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
//--&gt;&lt;/script&gt;
&lt;script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;
&lt;/script&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21038523-114010506918175567?l=madchicken.altervista.org%2Ftech%2Findex.html'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=iW1DmwW92lw:dheIS-ycgwE:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=iW1DmwW92lw:dheIS-ycgwE:63t7Ie-LG7Y"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=63t7Ie-LG7Y" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=iW1DmwW92lw:dheIS-ycgwE:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=iW1DmwW92lw:dheIS-ycgwE:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=iW1DmwW92lw:dheIS-ycgwE:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?i=iW1DmwW92lw:dheIS-ycgwE:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.blogger.com/feeds/21038523/114010506918175567/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=21038523&amp;postID=114010506918175567" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/21038523/posts/default/114010506918175567" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/21038523/posts/default/114010506918175567" /><link rel="alternate" type="text/html" href="http://madchicken.altervista.org/tech/2006/02/microoft-launch-office-live.html" title="Micro$oft launch Office Live" /><author><name>Madchicken</name><uri>http://www.blogger.com/profile/17697650711794336733</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="16382048800480635377" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><link rel="license" type="text/html" href="http://creativecommons.org/licenses/by/2.0/" /></entry><entry><id>tag:blogger.com,1999:blog-21038523.post-113957225676243120</id><published>2006-02-10T11:50:00.000+01:00</published><updated>2006-11-13T10:52:18.713+01:00</updated><title type="text">Put colours in your Ubuntu startup and shutdown console</title><content type="html">One thing I noticed when I first started Ubuntu Hoary  was the lack of colors during start up and shut down process.&lt;br /&gt;Then it came Breezy and USplash replaced the anonymous start up console. But the shut down was still in simple black&amp;white text mode. I don't like it, 'cause often I don't see possible errors.&lt;br /&gt;Ok...this is not a big problem, but all other distros have colours, so why Ubuntu doesn't? :-)&lt;br /&gt;I found a simple solution, exploring the file /lib/lsb/init-functions. In this script file you can find functions used by the system for starting and stopping services and, of course, all logging methods.&lt;br /&gt;I modified it to make the console look more colourful. To install it simply do this:&lt;blockquote&gt;&lt;br /&gt;cd ~&lt;br /&gt;wget http://madchicken.altervista.org/tech/download/init-functions.tar&lt;br /&gt;tar xvf init-functions.tar&lt;br /&gt;sudo mv /lib/lsb/init-functions /lib/lsb/init-functions.old&lt;br /&gt;sudo mv init-functions /lib/lsb/init-functions&lt;br /&gt;rm init-functions.tar&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;And the game is done.&lt;br /&gt;If you want to customize your shell more and more, the way is quite simple: you have only to change echo commands giving the right pattern of characters and colours. To make all things in the right way I used tput command to extract info about the terminal that is running. &lt;br /&gt;Here's simple (really simple!!) guide to tput&lt;blockquote&gt;&lt;br /&gt;tput bold #makes the font bold&lt;br /&gt;tput sgr0 #turns off bold&lt;br /&gt;tput setaf 0-9 #changes the font colour&lt;br /&gt;tput op #reset font colour&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;You can try all these commands from a standard gnome/kde terminal and see what happens.&lt;br /&gt;A simple example could be: &lt;br /&gt;&lt;blockquote&gt;BOLD=`$TPUT bold`&lt;br /&gt;OFFBOLD=`$TPUT sgr0`&lt;br /&gt;GREEN=`$TPUT setaf 2`&lt;br /&gt;BLUE=`$TPUT setaf 4`&lt;br /&gt;RED=`$TPUT setaf 1`&lt;br /&gt;NORMAL=`$TPUT op`&lt;br /&gt;echo "${BLUE}${BOLD}[ ${GREEN}ok${BLUE} ]${NORMAL}${OFFBOLD}"&lt;/blockquote&gt;&lt;br /&gt;This will print the string &lt;span style="font-weight:bold;color:blue;"&gt;[&lt;/span&gt; &lt;span style="font-weight:bold;color:green;"&gt;ok&lt;/span&gt; &lt;span style="font-weight:bold;color:blue;"&gt;]&lt;/span&gt;&lt;br /&gt;And now that you are on the road...happy customization!&lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client = "pub-4774451664341226";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
//--&gt;&lt;/script&gt;
&lt;script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;
&lt;/script&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21038523-113957225676243120?l=madchicken.altervista.org%2Ftech%2Findex.html'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=Rt-m3lhoxWk:Gs5zwXfsLLg:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=Rt-m3lhoxWk:Gs5zwXfsLLg:63t7Ie-LG7Y"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=63t7Ie-LG7Y" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=Rt-m3lhoxWk:Gs5zwXfsLLg:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=Rt-m3lhoxWk:Gs5zwXfsLLg:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=Rt-m3lhoxWk:Gs5zwXfsLLg:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?i=Rt-m3lhoxWk:Gs5zwXfsLLg:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.blogger.com/feeds/21038523/113957225676243120/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=21038523&amp;postID=113957225676243120" title="6 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/21038523/posts/default/113957225676243120" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/21038523/posts/default/113957225676243120" /><link rel="alternate" type="text/html" href="http://madchicken.altervista.org/tech/2006/02/put-colours-in-your-ubuntu-startup-and.html" title="Put colours in your Ubuntu startup and shutdown console" /><author><name>Madchicken</name><uri>http://www.blogger.com/profile/17697650711794336733</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="16382048800480635377" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">6</thr:total><link rel="license" type="text/html" href="http://creativecommons.org/licenses/by/2.0/" /></entry><entry><id>tag:blogger.com,1999:blog-21038523.post-113956294708324133</id><published>2006-02-10T10:04:00.000+01:00</published><updated>2006-11-13T10:52:18.653+01:00</updated><title type="text">GIMP made easy</title><content type="html">If you, like me, are &lt;span style="font-style:italic;"&gt;stuck in the middle&lt;/span&gt; with GIMP, a.k.a. GNU Image Manipulation Program, a.k.a. the open source graphic software for Linux, then probably you need good guide. &lt;a href="http://gug.sunsite.dk/docs/Grokking-the-GIMP-v1.0/"&gt;Here's it one&lt;/a&gt;, free, and also &lt;a href="http://gimp-savvy.com/BOOK/TarDist/Grokking-the-GIMP-v1.0.tar.gz"&gt;downloadable&lt;/a&gt; as html tarball. &lt;br /&gt;And if you want to make a donation to the community, you can also buy a printed copy from &lt;a href="http://www.amazon.com/exec/obidos/ASIN/0735709246/gimpsavvycom"&gt;Amazon&lt;/a&gt;&lt;br /&gt;I really love open source.&lt;br /&gt;Many thaks to &lt;a href="http://linuxhelp.blogspot.com/2006/02/collection-of-books-howtos-and.html"&gt;All about Linux&lt;/a&gt; Blog for this hint.&lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client = "pub-4774451664341226";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
//--&gt;&lt;/script&gt;
&lt;script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;
&lt;/script&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21038523-113956294708324133?l=madchicken.altervista.org%2Ftech%2Findex.html'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=1RW9AhPtXCk:6iyDRsqG32w:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=1RW9AhPtXCk:6iyDRsqG32w:63t7Ie-LG7Y"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=63t7Ie-LG7Y" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=1RW9AhPtXCk:6iyDRsqG32w:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=1RW9AhPtXCk:6iyDRsqG32w:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=1RW9AhPtXCk:6iyDRsqG32w:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?i=1RW9AhPtXCk:6iyDRsqG32w:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.blogger.com/feeds/21038523/113956294708324133/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=21038523&amp;postID=113956294708324133" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/21038523/posts/default/113956294708324133" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/21038523/posts/default/113956294708324133" /><link rel="alternate" type="text/html" href="http://madchicken.altervista.org/tech/2006/02/gimp-made-easy.html" title="GIMP made easy" /><author><name>Madchicken</name><uri>http://www.blogger.com/profile/17697650711794336733</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="16382048800480635377" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><link rel="license" type="text/html" href="http://creativecommons.org/licenses/by/2.0/" /></entry><entry><id>tag:blogger.com,1999:blog-21038523.post-113906178496108127</id><published>2006-02-04T14:48:00.000+01:00</published><updated>2006-11-13T10:52:18.547+01:00</updated><title type="text">OpenAjax and Eclipse</title><content type="html">The Eclipse Foundation wants to expand its &lt;acronym title="Web Tools Platform"&gt;WTP&lt;/acronym&gt; adding an &lt;a href="http://www.eclipse.org/proposals/atf/"&gt;AJAX Toolkit Framework (ATF)&lt;/a&gt;. &lt;br /&gt;The good news is that it seems that Eclipse accepted to add the OpenAjax project source code for ATF: OpenAjax is a new initiative from IBM and David Boloker, CTO of emerging technologies for IBM, is enthusiastic about the OpenAJAX project.&lt;br /&gt;The OpenAJAX framework will come out of the box supporting three ajax frameworks: &lt;a href="http://dojotoolkit.org/"&gt;Dojo&lt;/a&gt;, &lt;a href="http://openrico.org/"&gt;OpenRico&lt;/a&gt;, and &lt;a href="http://www.zimbra.com/"&gt;Zimbra&lt;/a&gt;. All these frameworks supports object-oriented programming, a must for those programmers (like me) are coming from Java and C++ languages. On the other hand, these frameworks are easy to use also for those Web developer who has been developing in HTML and JavaScript for years.&lt;br /&gt;&lt;br /&gt;If someone wants to contribute to the OpenAjax project, can subscribe to their &lt;a href="http://www.openajax.ca"&gt;site&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client = "pub-4774451664341226";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
//--&gt;&lt;/script&gt;
&lt;script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;
&lt;/script&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21038523-113906178496108127?l=madchicken.altervista.org%2Ftech%2Findex.html'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=NvKG7eE3A3Q:TT4zgHpDUh8:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=NvKG7eE3A3Q:TT4zgHpDUh8:63t7Ie-LG7Y"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=63t7Ie-LG7Y" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=NvKG7eE3A3Q:TT4zgHpDUh8:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=NvKG7eE3A3Q:TT4zgHpDUh8:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=NvKG7eE3A3Q:TT4zgHpDUh8:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?i=NvKG7eE3A3Q:TT4zgHpDUh8:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.blogger.com/feeds/21038523/113906178496108127/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=21038523&amp;postID=113906178496108127" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/21038523/posts/default/113906178496108127" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/21038523/posts/default/113906178496108127" /><link rel="alternate" type="text/html" href="http://madchicken.altervista.org/tech/2006/02/openajax-and-eclipse.html" title="OpenAjax and Eclipse" /><author><name>Madchicken</name><uri>http://www.blogger.com/profile/17697650711794336733</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="16382048800480635377" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><link rel="license" type="text/html" href="http://creativecommons.org/licenses/by/2.0/" /></entry><entry><id>tag:blogger.com,1999:blog-21038523.post-113888968730912892</id><published>2006-02-02T15:13:00.000+01:00</published><updated>2006-11-13T10:52:18.464+01:00</updated><title type="text">Venkmann Javascript Debugger for Firefox 1.5.0.1</title><content type="html">Thanks to Diego Caravanna, &lt;a href="http://diego.caravana.to/venkman-for-firefox-1501/"&gt;here's it&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client = "pub-4774451664341226";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
//--&gt;&lt;/script&gt;
&lt;script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;
&lt;/script&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21038523-113888968730912892?l=madchicken.altervista.org%2Ftech%2Findex.html'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=mBoSJ8FMebM:Nw68wDDACQE:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=mBoSJ8FMebM:Nw68wDDACQE:63t7Ie-LG7Y"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=63t7Ie-LG7Y" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=mBoSJ8FMebM:Nw68wDDACQE:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=mBoSJ8FMebM:Nw68wDDACQE:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=mBoSJ8FMebM:Nw68wDDACQE:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?i=mBoSJ8FMebM:Nw68wDDACQE:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.blogger.com/feeds/21038523/113888968730912892/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=21038523&amp;postID=113888968730912892" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/21038523/posts/default/113888968730912892" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/21038523/posts/default/113888968730912892" /><link rel="alternate" type="text/html" href="http://madchicken.altervista.org/tech/2006/02/venkmann-javascript-debugger-for.html" title="Venkmann Javascript Debugger for Firefox 1.5.0.1" /><author><name>Madchicken</name><uri>http://www.blogger.com/profile/17697650711794336733</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="16382048800480635377" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><link rel="license" type="text/html" href="http://creativecommons.org/licenses/by/2.0/" /></entry><entry><id>tag:blogger.com,1999:blog-21038523.post-113748975016934250</id><published>2006-02-02T10:15:00.001+01:00</published><updated>2008-09-12T10:04:47.249+02:00</updated><title type="text">Prototype: Form Serialization and Deserialization</title><content type="html">In the web community &lt;a href="http://www.prototypejs.org/"&gt;Prototype&lt;/a&gt; is a "must" for who wants to implement unobstrusive javascript and web2.0 applications. Why? 'Cause prototype makes things simplest and more Object Oriented.&lt;br /&gt;The fact is that Javascript is often used as a "functional language" and not Object Oriented. Maybe because Javascript is not a clean OO language or maybe because, for historical reasons, people used it to handle (most of the time) the "onclick" event...&lt;br /&gt;With the revolution of these days, javascript is becoming a way to enhance the user experience in web applications (take &lt;a href="http://en.wikipedia.org/wiki/Ajax_%28programming%29"&gt;Ajax&lt;/a&gt; for example...).&lt;br /&gt;So here's it: Prototype is coming to help us develop web2.0 application, using Objects in a more simple way, introducing classes for Ajax integration and much more. Maybe one of these days I'll write a good &lt;span style="font-style:italic;"&gt;Prototype in Action&lt;/span&gt; post, but for the moment use this link as reference:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.sergiopereira.com/articles/prototype.js.html"&gt;http://www.sergiopereira.com/articles/prototype.js.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Update:&lt;/span&gt; now Prototype has its own official documentation. Read it here: &lt;a href="http://www.prototypejs.org/learn"&gt;http://www.prototypejs.org/learn&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Ok...now that you have "the tool" let's see an interesting feature: with prototype you can serialize a form given its id with a simple call:&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;var serializedForm = Form.serialize('myform');&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;This function allow you transform a form in a encoded string, containing all values from the passed form.&lt;br /&gt;Ok, now you can save your form (for example via AJAX on your server...), but what you can do if you want to deserialize back it to your client? No way with the current version of Prototype (1.4)!&lt;br /&gt;So I wrote a simple extension to allow you deserialize forms given a serialized string.&lt;br /&gt;Here is a simple example:&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;form id="myform" action="" onsubmit="$('serializedstring').value = Form.serialize(this); return false;"&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt; &lt;input type="text" id="mytext" name="mytext" value="value using &amp;"/&gt;&lt;br/&gt;&lt;br /&gt; &lt;select id="myselect" name="myselect"&gt;&lt;br /&gt;  &lt;option value="value one"&gt;value one&lt;/option&gt;&lt;br /&gt;  &lt;option value="value two"&gt;value two&lt;/option&gt;&lt;br /&gt;  &lt;option value="value three"&gt;value three&lt;/option&gt;&lt;br /&gt;  &lt;option value="value four"&gt;value four&lt;/option&gt;&lt;br /&gt; &lt;/select&gt;&lt;br/&gt;&lt;br /&gt; &lt;select id="myselect2" name="myselect2" multiple="true"&gt;&lt;br /&gt;  &lt;option value="multi value one"&gt;multi value one&lt;/option&gt;&lt;br /&gt;  &lt;option value="multi value two"&gt;multi value two&lt;/option&gt;&lt;br /&gt;  &lt;option value="multi value three"&gt;multi value three&lt;/option&gt;&lt;br /&gt;  &lt;option value="multi value four"&gt;multi value four&lt;/option&gt;&lt;br /&gt; &lt;/select&gt;&lt;br/&gt;&lt;br /&gt; &lt;input type="radio" id="myradio" name="myradio" value="one"/&gt;radio one&lt;br/&gt;&lt;br /&gt; &lt;input type="radio" id="myradio2" name="myradio" value="two"/&gt;radio two&lt;br/&gt;&lt;br /&gt; &lt;input type="radio" id="myradio3" name="myradio" value="three"/&gt;radio three&lt;br/&gt;&lt;br /&gt; &lt;input type="checkbox" id="mycheck1" name="mycheck1" value="checkone"/&gt;Check box 1&lt;br/&gt;&lt;br /&gt; &lt;input type="checkbox" id="mycheck2" name="mycheck2" value="checktwo"/&gt;Check box 2&lt;br/&gt;&lt;br /&gt; &lt;input type="submit" value="Serialize" id="mysubmit" name="mysubmit"/&gt; &lt;input type="reset" value="reset" id="myreset" name="myreset"/&gt;&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;/form&gt;&lt;br /&gt;&lt;form id="myformdeserialize" action="" onsubmit="Form.deserialize($('myform'), $('serializedstring').value);return false;"&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;&lt;textarea value="" name="serializedstring" id="serializedstring" rows="3" cols="50"/&gt;&lt;/textarea&gt;&lt;br /&gt;&lt;input type="submit" value="Deserialize" name="mydeserialize"&gt; &lt;input type="reset" value="clear" id="myclear" name="myclear"/&gt;&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;/form&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;The call to the function is simple:&lt;blockquote&gt;Form.deserialize(&lt;span style="font-style:italic;"&gt;formElement, serializedString&lt;/span&gt;)&lt;/blockquote&gt;&lt;br /&gt;You can find the .js file &lt;a href="http://madchicken.altervista.org/js/deserialize.js"&gt;here&lt;/a&gt; &lt;br /&gt;A complete example can be downloaded &lt;a href="http://madchicken.altervista.org/tech/download/deserializer.tgz"&gt;here&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client = "pub-4774451664341226";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
//--&gt;&lt;/script&gt;
&lt;script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;
&lt;/script&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21038523-113748975016934250?l=madchicken.altervista.org%2Ftech%2Findex.html'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=tfJsHzmAzi0:UQEKVzn5slM:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=tfJsHzmAzi0:UQEKVzn5slM:63t7Ie-LG7Y"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=63t7Ie-LG7Y" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=tfJsHzmAzi0:UQEKVzn5slM:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=tfJsHzmAzi0:UQEKVzn5slM:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=tfJsHzmAzi0:UQEKVzn5slM:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?i=tfJsHzmAzi0:UQEKVzn5slM:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.blogger.com/feeds/21038523/113748975016934250/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=21038523&amp;postID=113748975016934250" title="22 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/21038523/posts/default/113748975016934250" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/21038523/posts/default/113748975016934250" /><link rel="alternate" type="text/html" href="http://madchicken.altervista.org/tech/2006/02/prototype-form-serialization-and.html" title="Prototype: Form Serialization and Deserialization" /><author><name>Madchicken</name><uri>http://www.blogger.com/profile/17697650711794336733</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="16382048800480635377" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">22</thr:total><link rel="license" type="text/html" href="http://creativecommons.org/licenses/by/2.0/" /></entry><entry><id>tag:blogger.com,1999:blog-21038523.post-113878409755921492</id><published>2006-02-01T09:24:00.000+01:00</published><updated>2006-11-13T10:52:18.400+01:00</updated><title type="text">Ubuntu mania?</title><content type="html">In accordance with &lt;a href="http://www.theregister.co.uk/2006/01/31/google_goes_desktop_linux/"&gt;The Register&lt;/a&gt;, it seems that &lt;blockquote&gt;Google is preparing its own distribution of Linux for the desktop, in a possible bid to take on Microsoft in its core business - desktop software.&lt;/blockquote&gt;The name of the new Google-Linux distribution will be &lt;span style="font-style:italic;"&gt;Goobuntu&lt;/span&gt;...that is: the new system will be a customization of the emerging Linux distribution &lt;a href="http://www.ubuntulinux.org"&gt;Ubuntu&lt;/a&gt;.&lt;br /&gt;It's not sure what Google will do with this project:&lt;blockquote&gt;It's possible that it's just one of the toys Googleplex engineers play with on Fridays&lt;/blockquote&gt;But I'm very happy to see that someone else is working hard on the Ubuntu project.&lt;br /&gt;&lt;blockquote&gt;Whatever Google's intentions, the input of Google engineers and developers, writing new features and fixing bugs, will be a huge boost to the Ubuntu project&lt;/blockquote&gt;I still don't know if Google is the right way to bring &lt;span style="font-style:italic;"&gt;Linux at home&lt;/span&gt;, because I'm not very happy &lt;a href="http://www.theregister.co.uk/2006/01/25/google_censors_chinese_results/"&gt;with all things  Google is doing around&lt;/a&gt;, but I think that otherwise, they are doing great things with Internet: they always are a step forward to others. Thake &lt;a href="http://www.google.com/mail"&gt;GMail&lt;/a&gt; as an example of what I'm trying to explain.&lt;br /&gt;The question is: is the big G an alternative to Microsoft or is it the new one? Maybe it is both.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;UPDATE:&lt;/span&gt;it seems that this rumor about Goobuntu is a fake: read here &lt;a href="http://arstechnica.com/news.ars/post/20060131-6087.html"&gt;ArsTechnica&lt;/a&gt; for details.&lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client = "pub-4774451664341226";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
//--&gt;&lt;/script&gt;
&lt;script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;
&lt;/script&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21038523-113878409755921492?l=madchicken.altervista.org%2Ftech%2Findex.html'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=ojl-VJ7c-6k:OiuV-HFa7EE:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=ojl-VJ7c-6k:OiuV-HFa7EE:63t7Ie-LG7Y"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=63t7Ie-LG7Y" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=ojl-VJ7c-6k:OiuV-HFa7EE:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=ojl-VJ7c-6k:OiuV-HFa7EE:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=ojl-VJ7c-6k:OiuV-HFa7EE:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?i=ojl-VJ7c-6k:OiuV-HFa7EE:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.blogger.com/feeds/21038523/113878409755921492/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=21038523&amp;postID=113878409755921492" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/21038523/posts/default/113878409755921492" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/21038523/posts/default/113878409755921492" /><link rel="alternate" type="text/html" href="http://madchicken.altervista.org/tech/2006/02/ubuntu-mania.html" title="Ubuntu mania?" /><author><name>Madchicken</name><uri>http://www.blogger.com/profile/17697650711794336733</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="16382048800480635377" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><link rel="license" type="text/html" href="http://creativecommons.org/licenses/by/2.0/" /></entry><entry><id>tag:blogger.com,1999:blog-21038523.post-113742755059151659</id><published>2006-01-16T16:54:00.000+01:00</published><updated>2006-11-13T10:52:18.276+01:00</updated><title type="text">Where do we go from here...</title><content type="html">Maybe you are asking yourself what will you find here in this blog.&lt;br /&gt;Well, the main subject of this blog will be computer programming (virtally any language), so you will find hints to solve common web problems, Java and Javascript helper classes, scripts, HOWTOs and sometimes reviews on new frameworks and programming related stuff. &lt;br /&gt;You'll also find Linux related issues, since I work on a &lt;a href="http://www.ubuntulinux.org"&gt;Ubuntu Linux&lt;/a&gt; distribution (Breezy).&lt;br /&gt;The &lt;a href="http://feeds.feedburner.com/techchicken"&gt;RSS feed&lt;/a&gt; is also linked to my &lt;a href="http://www.furl.net"&gt;Furl&lt;/a&gt; archive, where I use to save interesting URLs.&lt;br /&gt;So here's it...stay tuned, I'll post the first technical article soon.&lt;br /&gt;&lt;br /&gt;Ah...english is NOT my primary language, so please forgive me for my poor language.&lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client = "pub-4774451664341226";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
//--&gt;&lt;/script&gt;
&lt;script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;
&lt;/script&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21038523-113742755059151659?l=madchicken.altervista.org%2Ftech%2Findex.html'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=h1mhcfi4KGE:e3dTdnAI1uo:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=h1mhcfi4KGE:e3dTdnAI1uo:63t7Ie-LG7Y"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=63t7Ie-LG7Y" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=h1mhcfi4KGE:e3dTdnAI1uo:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=h1mhcfi4KGE:e3dTdnAI1uo:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=h1mhcfi4KGE:e3dTdnAI1uo:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?i=h1mhcfi4KGE:e3dTdnAI1uo:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.blogger.com/feeds/21038523/113742755059151659/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=21038523&amp;postID=113742755059151659" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/21038523/posts/default/113742755059151659" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/21038523/posts/default/113742755059151659" /><link rel="alternate" type="text/html" href="http://madchicken.altervista.org/tech/2006/01/where-do-we-go-from-here.html" title="Where do we go from here..." /><author><name>Madchicken</name><uri>http://www.blogger.com/profile/17697650711794336733</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="16382048800480635377" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">1</thr:total><link rel="license" type="text/html" href="http://creativecommons.org/licenses/by/2.0/" /></entry><entry><id>tag:blogger.com,1999:blog-21038523.post-113742548950450060</id><published>2006-01-16T16:10:00.000+01:00</published><updated>2006-11-13T10:52:18.213+01:00</updated><title type="text">What is this?</title><content type="html">Hi guys.&lt;br /&gt;I recently decided to start a new blog since &lt;a href="http://madchicken.altervista.org"&gt;my old one&lt;/a&gt; is apparently defunct.&lt;br /&gt;The problem with my "old" blog is that it was intended as a &lt;span style="font-style:italic;"&gt;private life blog&lt;/span&gt;. At the moment I don't have time for updating a blog of my private life, 'cause my job is getting hard and when I return to my home I want to stay with my family. &lt;br /&gt;So here's the fact: I'll start a new blog (in english as yuo can see...) to publish technical stuff, mainly things that have something related to my work.&lt;br /&gt;If you don't know, I'm a Software Architect: my main activity is to design "good" software and frameworks to help developers writing web application faster. I write most of my code in Java, but I also write components in Javascript.&lt;br /&gt;So, starting today, I'll share part of my knowledge with the community, hoping to help someone out of there...&lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client = "pub-4774451664341226";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
//--&gt;&lt;/script&gt;
&lt;script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;
&lt;/script&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21038523-113742548950450060?l=madchicken.altervista.org%2Ftech%2Findex.html'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=aX_h0hZdf8U:z3pFfO9WthM:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=aX_h0hZdf8U:z3pFfO9WthM:63t7Ie-LG7Y"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=63t7Ie-LG7Y" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=aX_h0hZdf8U:z3pFfO9WthM:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=aX_h0hZdf8U:z3pFfO9WthM:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/techchicken?a=aX_h0hZdf8U:z3pFfO9WthM:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/techchicken?i=aX_h0hZdf8U:z3pFfO9WthM:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.blogger.com/feeds/21038523/113742548950450060/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=21038523&amp;postID=113742548950450060" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/21038523/posts/default/113742548950450060" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/21038523/posts/default/113742548950450060" /><link rel="alternate" type="text/html" href="http://madchicken.altervista.org/tech/2006/01/what-is-this.html" title="What is this?" /><author><name>Madchicken</name><uri>http://www.blogger.com/profile/17697650711794336733</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="16382048800480635377" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><link rel="license" type="text/html" href="http://creativecommons.org/licenses/by/2.0/" /></entry><entry><title type="text">Links for 2006-10-20 [del.icio.us]</title><link rel="alternate" type="text/html" href="http://del.icio.us/madchicken#2006-10-20" /><updated>2006-10-21T00:00:00-07:00</updated><id>http://del.icio.us/madchicken#2006-10-20</id><content type="html">&lt;ul&gt;
&lt;li&gt;&lt;a href="http://madchicken.altervista.org/tech/2006/10/using-lightbox-to-prevent-form-double.html"&gt;TechChicken: Using Lightbox to prevent form double submit&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://madchicken.altervista.org/tech/2006/10/rhythmbox-096-plugin-for-gajim-status.html"&gt;TechChicken: Rhythmbox 0.9.6: a plugin for Gajim status message&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</content></entry><entry><title type="text">Links for 2006-02-10 [del.icio.us]</title><link rel="alternate" type="text/html" href="http://del.icio.us/madchicken#2006-02-10" /><updated>2006-02-11T00:00:00-08:00</updated><id>http://del.icio.us/madchicken#2006-02-10</id><content type="html">&lt;ul&gt;
&lt;li&gt;&lt;a href="http://madchicken.altervista.org/tech/2006/02/put-colours-in-your-ubuntu-startup-and.html"&gt;TechChicken: Put colours in your Ubuntu startup and shutdown console&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://madchicken.altervista.org/tech/2006/02/gimp-made-easy.html"&gt;TechChicken: GIMP made easy&lt;/a&gt;&lt;br/&gt;
Free online book about GIMP graphic software&lt;/li&gt;
&lt;/ul&gt;</content></entry><entry><title type="text">Links for 2006-02-02 [del.icio.us]</title><link rel="alternate" type="text/html" href="http://del.icio.us/madchicken#2006-02-02" /><updated>2006-02-03T00:00:00-08:00</updated><id>http://del.icio.us/madchicken#2006-02-02</id><content type="html">&lt;ul&gt;
&lt;li&gt;&lt;a href="http://madchicken.altervista.org/tech/2006/02/prototype-form-serialization-and.html#links"&gt;TechChicken: Prototype: Form Serialization and Deserialization&lt;/a&gt;&lt;br/&gt;
An article about a simple way to deserialize forms using prototype&lt;/li&gt;
&lt;li&gt;&lt;a href="http://madchicken.altervista.org/tech/2006/02/venkmann-javascript-debugger-for.html#links"&gt;TechChicken: Venkmann Javascript Debugger for Firefox 1.5.0.1&lt;/a&gt;&lt;br/&gt;
Updated javascript debugger extension for Firefox 1.5.0.1&lt;/li&gt;
&lt;/ul&gt;</content></entry></feed>
