<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:creativeCommons="http://backend.userland.com/creativeCommonsRssModule" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>Dreams of Thought</title>
	
	<link>http://gingerjoos.com/blog</link>
	<description>Are dreams thoughts... or are thoughts dreams..</description>
	<lastBuildDate>Mon, 22 Feb 2010 15:58:56 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=abc</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/DreamsOfThought" /><feedburner:info uri="dreamsofthought" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><creativeCommons:license>http://creativecommons.org/licenses/by-sa/3.0/</creativeCommons:license><item>
		<title>How to programmatically create and log in drupal users</title>
		<link>http://feedproxy.google.com/~r/DreamsOfThought/~3/YIZNXqIJ0Bc/how-to-programmatically-create-and-log-in-drupal-users</link>
		<comments>http://gingerjoos.com/blog/code/drupal-code/how-to-programmatically-create-and-log-in-drupal-users#comments</comments>
		<pubDate>Mon, 22 Feb 2010 15:09:35 +0000</pubDate>
		<dc:creator>Anirudh</dc:creator>
				<category><![CDATA[drupal]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[user]]></category>

		<guid isPermaLink="false">http://gingerjoos.com/blog/?p=275</guid>
		<description><![CDATA[

Creating a new user is very easy in Drupal 6. Here&#8217;s how.
&#60;p&#62;&#62;&#60;p&#62;$new_user = array(&#60;/p&#62;&#60;p&#62;&#039;name&#039;                   =&#62; $username,&#60;br /&#62; &#039;mail&#039;                    [...]


Related posts:<ol><li><a href='http://gingerjoos.com/blog/code/drupal-code/gravatar-support-in-drupal' rel='bookmark' title='Permanent Link: Gravatar support  in Drupal'>Gravatar support  in Drupal</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<!-- Chitika|Premium - WordPress Plugin --><div class="chitika-adspace above"><script type="text/javascript"><!--
ch_client = "gingerjoos";
ch_type = "mpu";
ch_width = 300;
ch_height = 150;
ch_color_bg = "";
ch_color_title = "";
ch_color_site_link = "";
ch_color_text = "";
ch_non_contextual = 4;
ch_vertical = "premium";
ch_font_title = "";
ch_font_text = "";
ch_sid = "wordpress-plugin";
var ch_queries = new Array( );
var ch_selected=Math.floor((Math.random()*ch_queries.length));
if ( ch_selected < ch_queries.length ) {
ch_query = ch_queries[ch_selected];
}
//--></script>
<script  src="http://scripts.chitika.net/eminimalls/amm.js" type="text/javascript"></script></div>
<p>Creating a new user is very easy in Drupal 6. Here&#8217;s how.
<pre class="brush: php">&lt;p&gt;&gt;&lt;p&gt;$new_user = array(&lt;/p&gt;&lt;p&gt;&#039;name&#039;                   =&gt; $username,&lt;br /&gt; &#039;mail&#039;                     =&gt; $mail,&lt;br /&gt; &#039;pass&#039;                    =&gt; user_password(),&lt;br /&gt; &#039;status&#039;                  =&gt; 1,&lt;br /&gt; &#039;auth_MODULENAME&#039; =&gt; $username&lt;br /&gt;)&lt;/p&gt;&lt;p&gt;$user = user_save(NULL,$new_user)&lt;/p&gt;&lt;p&gt;// log the user in&lt;/p&gt;&lt;p&gt;$user = user_authenticate($new_user)&lt;/p&gt;&lt;p&gt;</pre>
</p>
<p>Now for the explanation. We create a $new_user array with values we want the newly created user to have.  We pass this along to the <a href="http://api.drupal.org/api/function/user_save/6">user_save</a> function and set the 1st parameter as NULL. From the code comments in the user module -</p>
<blockquote><p>* @param $account<br /> *   The $user object for the user to modify or add. If $user-&gt;uid is<br /> *   omitted, a new user will be added.<br /> *<br /> * @param $array<br /> *   (optional) An array of fields and values to save. For example,<br /> *   array(&#8216;name&#8217; =&gt; &#8216;My name&#8217;); Setting a field to NULL deletes it from<br /> *   the data column.</p>
</blockquote>
<p>So setting the 1st parameter as NULL creates a new user.</p>
<p>The parameters name, mail, pass and status are all self explanatory. The <a href="http://api.drupal.org/api/function/user_password/6">user_password</a> function generates a random password (by default with a length of 10).</p>
<p>The (optional) &#8216;auth_MODULENAME&#8217; element will record the user as being created externally. This will result in an entry in the authmap table like this -</p>
<p>&#8220;aid&#8221;    &#8220;uid&#8221;    &#8220;authname&#8221;    &#8220;module&#8221;<br />&#8220;2&#8243;    &#8220;20&#8243;    &#8220;USERNAME&#8221;    &#8220;MODULENAME&#8221;</p>
<p>The <a href="http://api.drupal.org/api/function/user_authenticate/6">user_authenticate</a> function logs the user in. This function expects an array as a parameter. It first loads the user in using the <a href="http://api.drupal.org/api/function/user_load/6">user_load</a> function and in case of no errors logs the user in.</p>
<p>This approach of logging in a user is useful when we have the array with us which contains the raw values used to create the user. If all you have is the uid of the user, then logging the user in is very simple. Just use the global $user object.</p>
<p>
<pre class="brush: php">&lt;/p&gt;&lt;p&gt;global $user&lt;/p&gt;&lt;p&gt;$account = user_load( array(&#039;name&#039; =&gt; &#039;USERNAME&#039;) ); // or user_load(UID)&lt;/p&gt;&lt;p&gt;$user = $account&lt;/p&gt;&lt;p&gt;</pre>
</p>
<p>Don&#8217;t use the user_authenticate function here as it expects the raw values(form values).  This wil not work -</p>
<p>
<pre class="brush: php">&lt;/p&gt;&lt;p&gt;$account = user_load( array(&#039;name&#039; =&gt; &#039;USERNAME&#039;) ); // or user_load(UID)&lt;/p&gt;&lt;p&gt;user_authenticate((array)$account)&lt;/p&gt;&lt;p&gt;</pre>
</p>
<p>It will take whatever password is stored in the user object(the raw password), md5 it and then run a query to load that user. Since the password in the query is not the raw password but the md5, the query will return nothing. This will cause an error in the user_authenticate function.</p>
<p>For a direct code example for programmatic log in, check the <a href="http://drupal.org/project/Devel">devel</a> module&#8217;s devel_switch_user function.</p>


<p>Related posts:<ol><li><a href='http://gingerjoos.com/blog/code/drupal-code/gravatar-support-in-drupal' rel='bookmark' title='Permanent Link: Gravatar support  in Drupal'>Gravatar support  in Drupal</a></li>
</ol></p><img src="http://feeds.feedburner.com/~r/DreamsOfThought/~4/YIZNXqIJ0Bc" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://gingerjoos.com/blog/code/drupal-code/how-to-programmatically-create-and-log-in-drupal-users/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://gingerjoos.com/blog/code/drupal-code/how-to-programmatically-create-and-log-in-drupal-users</feedburner:origLink></item>
		<item>
		<title>Helen Fry – Dilbert strip February 16, 2010</title>
		<link>http://feedproxy.google.com/~r/DreamsOfThought/~3/m4VqaI5tCzQ/helen-fry-dilbert-strip-february-16-2010</link>
		<comments>http://gingerjoos.com/blog/from-the-web/helen-fry-dilbert-strip-february-16-2010#comments</comments>
		<pubDate>Wed, 17 Feb 2010 05:25:20 +0000</pubDate>
		<dc:creator>Anirudh</dc:creator>
				<category><![CDATA[from the web]]></category>
		<category><![CDATA[comics]]></category>
		<category><![CDATA[dilbert]]></category>

		<guid isPermaLink="false">http://gingerjoos.com/blog/?p=272</guid>
		<description><![CDATA[


I didn&#8217;t really get this. Who the heck is Helen Fry? I had to read the comments in the site to realise &#8220;Go to Helen Fry&#8221; should be read as &#8220;Go to Hell and Fry&#8221;!  
There are other beauties in there as well &#8211; Sofa King, Helen Wait&#8230;  
PS : click on the [...]


No related posts.]]></description>
			<content:encoded><![CDATA[<!-- Chitika|Premium - WordPress Plugin --><div class="chitika-adspace above"><script type="text/javascript"><!--
ch_client = "gingerjoos";
ch_type = "mpu";
ch_width = 300;
ch_height = 150;
ch_color_bg = "";
ch_color_title = "";
ch_color_site_link = "";
ch_color_text = "";
ch_non_contextual = 4;
ch_vertical = "premium";
ch_font_title = "";
ch_font_text = "";
ch_sid = "wordpress-plugin";
var ch_queries = new Array( );
var ch_selected=Math.floor((Math.random()*ch_queries.length));
if ( ch_selected < ch_queries.length ) {
ch_query = ch_queries[ch_selected];
}
//--></script>
<script  src="http://scripts.chitika.net/eminimalls/amm.js" type="text/javascript"></script></div>
<p><a title="Dilbert.com" href="http://dilbert.com/strips/comic/2010-02-16/"><img src="http://dilbert.com/dyn/str_strip/000000000/00000000/0000000/000000/80000/2000/200/82272/82272.strip.gif" border="0" alt="Dilbert.com" /></a></p>
<p>I didn&#8217;t really get this. Who the heck is Helen Fry? I had to read the comments in the site to realise &#8220;Go to Helen Fry&#8221; should be read as &#8220;Go to Hell and Fry&#8221;! <img src='http://gingerjoos.com/blog/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> </p>
<p>There are other beauties in there as well &#8211; Sofa King, Helen Wait&#8230; <img src='http://gingerjoos.com/blog/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' /> </p>
<p>PS : click on the image to see it in full size</p>


<p>No related posts.</p><img src="http://feeds.feedburner.com/~r/DreamsOfThought/~4/m4VqaI5tCzQ" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://gingerjoos.com/blog/from-the-web/helen-fry-dilbert-strip-february-16-2010/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://gingerjoos.com/blog/from-the-web/helen-fry-dilbert-strip-february-16-2010</feedburner:origLink></item>
		<item>
		<title>How to dump or export all the table definitions in a MySQL database</title>
		<link>http://feedproxy.google.com/~r/DreamsOfThought/~3/I1TodwaBioc/how-to-dump-or-export-all-the-table-definitions-in-a-mysql-database</link>
		<comments>http://gingerjoos.com/blog/code/how-to-dump-or-export-all-the-table-definitions-in-a-mysql-database#comments</comments>
		<pubDate>Fri, 05 Feb 2010 11:11:20 +0000</pubDate>
		<dc:creator>Anirudh</dc:creator>
				<category><![CDATA[code]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[mysqldump]]></category>

		<guid isPermaLink="false">http://gingerjoos.com/blog/?p=264</guid>
		<description><![CDATA[

So you have  a database with loads of tables. You want the table definitions of all of them. You don&#8217;t really need the data. mysqldump to the rescue!

mysqldump -u USERNAME --password=PASSWORD --no-data --opt DB1 &#62; DUMPFILE

That&#8217;s it! Easy as a pie   The key here is the &#8211;no-data option. It dumps all the table [...]


No related posts.]]></description>
			<content:encoded><![CDATA[<!-- Chitika|Premium - WordPress Plugin --><div class="chitika-adspace above"><script type="text/javascript"><!--
ch_client = "gingerjoos";
ch_type = "mpu";
ch_width = 300;
ch_height = 150;
ch_color_bg = "";
ch_color_title = "";
ch_color_site_link = "";
ch_color_text = "";
ch_non_contextual = 4;
ch_vertical = "premium";
ch_font_title = "";
ch_font_text = "";
ch_sid = "wordpress-plugin";
var ch_queries = new Array( );
var ch_selected=Math.floor((Math.random()*ch_queries.length));
if ( ch_selected < ch_queries.length ) {
ch_query = ch_queries[ch_selected];
}
//--></script>
<script  src="http://scripts.chitika.net/eminimalls/amm.js" type="text/javascript"></script></div>
<p>So you have  a database with loads of tables. You want the table definitions of all of them. You don&#8217;t really need the data. <a href="http://dev.mysql.com/doc/refman/5.1/en/mysqldump.html">mysqldump</a> to the rescue!</p>
<p>
<pre class="brush: php">mysqldump -u USERNAME --password=PASSWORD --no-data --opt DB1 &gt; DUMPFILE</pre>
</p>
<p>That&#8217;s it! Easy as a pie <img src='http://gingerjoos.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  The key here is the &#8211;no-data option. It dumps all the table definitions, but not the table data.</p>
<p>Want to do this for multiple databases? No problem.</p>
<p>
<pre class="brush: php">mysqldump -u USERNAME --password=PASSWORD --no-data --opt --databases DB1 DB2 &gt; DUMPFILE</pre>
</p>
<p>The &#8211;databases option allows you to add multiple databases.</p>
<p>
<pre class="brush: php">mysqldump -u USERNAME --password=PASSWORD --no-data --opt --all-databases &gt; DUMPFILE</pre>
</p>
<p>The &#8211;all-databases option allows you to dump all the databases.</p>
<p>
<pre class="brush: php">mysqldump -u USERNAME --password=PASSWORD --no-data --opt DB1 --ignore-table DB1.TABLENAME1 --ignore-table DB1.TABLENAME2 &gt; DUMPFILE</pre>
</p>
<p>&#8211;ignore-table option allows you to skip dumping certain tables. Do not forget to specify the databasename when using this option.</p>
<p> </p>
<p>Know any more tricks? Let us know in the comments below <img src='http://gingerjoos.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>


<p>No related posts.</p><img src="http://feeds.feedburner.com/~r/DreamsOfThought/~4/I1TodwaBioc" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://gingerjoos.com/blog/code/how-to-dump-or-export-all-the-table-definitions-in-a-mysql-database/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://gingerjoos.com/blog/code/how-to-dump-or-export-all-the-table-definitions-in-a-mysql-database</feedburner:origLink></item>
		<item>
		<title>How I recovered my Thunderbird mail from backup</title>
		<link>http://feedproxy.google.com/~r/DreamsOfThought/~3/208tn7ACgW8/how-i-recovered-my-thunderbird-mail-from-backup</link>
		<comments>http://gingerjoos.com/blog/technology/how-i-recovered-my-thunderbird-mail-from-backup#comments</comments>
		<pubDate>Tue, 02 Feb 2010 11:34:13 +0000</pubDate>
		<dc:creator>Anirudh</dc:creator>
				<category><![CDATA[technology]]></category>

		<guid isPermaLink="false">http://gingerjoos.com/blog/?p=258</guid>
		<description><![CDATA[

So the best way to backup your mails from Thunderbird is to copy your complete profile directory. Follow these steps for restoring your mail.
The fool that I am, instead of copying the full profile directory I ended up backing up just the Mail subdirectory in the profile directory. It took me a while to figure [...]


Related posts:<ol><li><a href='http://gingerjoos.com/blog/computer-security/hoax-mail-from-microsoft' rel='bookmark' title='Permanent Link: Hoax mail from &#8220;Microsoft&#8221;'>Hoax mail from &#8220;Microsoft&#8221;</a></li>
<li><a href='http://gingerjoos.com/blog/linux/copy-files-preserving-the-permissions' rel='bookmark' title='Permanent Link: Copy files preserving the permissions'>Copy files preserving the permissions</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<!-- Chitika|Premium - WordPress Plugin --><div class="chitika-adspace above"><script type="text/javascript"><!--
ch_client = "gingerjoos";
ch_type = "mpu";
ch_width = 300;
ch_height = 150;
ch_color_bg = "";
ch_color_title = "";
ch_color_site_link = "";
ch_color_text = "";
ch_non_contextual = 4;
ch_vertical = "premium";
ch_font_title = "";
ch_font_text = "";
ch_sid = "wordpress-plugin";
var ch_queries = new Array( );
var ch_selected=Math.floor((Math.random()*ch_queries.length));
if ( ch_selected < ch_queries.length ) {
ch_query = ch_queries[ch_selected];
}
//--></script>
<script  src="http://scripts.chitika.net/eminimalls/amm.js" type="text/javascript"></script></div>
<p>So the best way to backup your mails from Thunderbird is to <a href="http://www.mozilla.org/support/thunderbird/profile#backup">copy your complete profile directory</a>. Follow these steps for <a href="http://www.mozilla.org/support/thunderbird/profile#move">restoring your mail</a>.</p>
<p>The fool that I am, instead of copying the full profile directory I ended up backing up just the Mail subdirectory in the profile directory. It took me a while to figure out how to restore the backup, so I thought I would share it with you.</p>
<p>The first thing you do is install Thunderbird (if you haven&#8217;t already). Now Run( Windows : Start-&gt;Run or press Win key+r ; Mac/Linux &#8211; you&#8217;re smart enough to know <img src='http://gingerjoos.com/blog/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' />  ) this command &#8220;thunderbird.exe -profilemanager&#8221;. Create a dummy profile &#8211; just have some dummy email address in there. Now exit Thunderbird.</p>
<p>Next step is to <a href="http://www.mozilla.org/support/thunderbird/profile#locate">find your newly created profile directory</a>. Locate the Mail directory in there. Now you have to copy 2 files from your backup &#8211; both have the same name. One has a .msf extension and the other has no extension. I had created a separate thunderbird mail folder with a filter and I needed to backup just that one alone. So I just copied those 2 files (from the Inbox.sbd directory) and put them in the Local Folders subdirectory in the Mail directory (which already had empty files like Trash and Trash.msf).</p>
<p>The file without extension &#8211; this is the actual mail file. It&#8217;s in the <a href="http://en.wikipedia.org/wiki/Mbox">mbox</a> format. The other is an index file.</p>
<p><strong>Acknowledgements :</strong></p>
<p>I posted a <a href="http://vark.com/t/eee11d">question on Aardvark</a> &#8211; <a href="http://vark.com/t/eee11d">http://vark.com/t/eee11d</a>. I got replies from Shel and Moez. I would like to thank both of them for helping me out.</p>


<p>Related posts:<ol><li><a href='http://gingerjoos.com/blog/computer-security/hoax-mail-from-microsoft' rel='bookmark' title='Permanent Link: Hoax mail from &#8220;Microsoft&#8221;'>Hoax mail from &#8220;Microsoft&#8221;</a></li>
<li><a href='http://gingerjoos.com/blog/linux/copy-files-preserving-the-permissions' rel='bookmark' title='Permanent Link: Copy files preserving the permissions'>Copy files preserving the permissions</a></li>
</ol></p><img src="http://feeds.feedburner.com/~r/DreamsOfThought/~4/208tn7ACgW8" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://gingerjoos.com/blog/technology/how-i-recovered-my-thunderbird-mail-from-backup/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://gingerjoos.com/blog/technology/how-i-recovered-my-thunderbird-mail-from-backup</feedburner:origLink></item>
		<item>
		<title>Techcrunch site “hacked”</title>
		<link>http://feedproxy.google.com/~r/DreamsOfThought/~3/tEeu_8Mn1UU/techcrunch-site-hacked</link>
		<comments>http://gingerjoos.com/blog/from-the-web/techcrunch-site-hacked#comments</comments>
		<pubDate>Wed, 27 Jan 2010 06:38:27 +0000</pubDate>
		<dc:creator>Anirudh</dc:creator>
				<category><![CDATA[from the web]]></category>
		<category><![CDATA[crack]]></category>
		<category><![CDATA[techcrunch]]></category>

		<guid isPermaLink="false">http://gingerjoos.com/blog/?p=249</guid>
		<description><![CDATA[

Some content below may not be safe for work (wink wink)  
So TechCrunch got broken into/&#8221;hacked&#8221;/cracked. Apparently because someone was pissed off by the ads shown. Heh heh.
So here&#8217;s a screenshot before they fix things.
 
This is the text inserted into the TechCrunch page
So Arrington, how much did all the media coverage yesterday brought you [...]


No related posts.]]></description>
			<content:encoded><![CDATA[<!-- Chitika|Premium - WordPress Plugin --><div class="chitika-adspace above"><script type="text/javascript"><!--
ch_client = "gingerjoos";
ch_type = "mpu";
ch_width = 300;
ch_height = 150;
ch_color_bg = "";
ch_color_title = "";
ch_color_site_link = "";
ch_color_text = "";
ch_non_contextual = 4;
ch_vertical = "premium";
ch_font_title = "";
ch_font_text = "";
ch_sid = "wordpress-plugin";
var ch_queries = new Array( );
var ch_selected=Math.floor((Math.random()*ch_queries.length));
if ( ch_selected < ch_queries.length ) {
ch_query = ch_queries[ch_selected];
}
//--></script>
<script  src="http://scripts.chitika.net/eminimalls/amm.js" type="text/javascript"></script></div>
<p>Some content below may <strong>not</strong> be <strong>safe for work</strong> (wink wink) <img src='http://gingerjoos.com/blog/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> </p>
<p>So <a href="http://www.techcrunch.com/">TechCrunch</a> got broken into/&#8221;hacked&#8221;/cracked. Apparently because someone was pissed off by the <a href="http://www.techcrunch.com/welcome.html">ads</a> shown. Heh heh.</p>
<p>So here&#8217;s a screenshot before they fix things.</p>
<p> </p>
<p> <div id="attachment_251" class="wp-caption alignnone" style="width: 160px"><a href="http://gingerjoos.com/blog/wp-content/uploads/2010/01/techcrunch_cracked_2.jpg"><img class="size-thumbnail wp-image-251" title="techcrunch_cracked_2" src="http://gingerjoos.com/blog/wp-content/uploads/2010/01/techcrunch_cracked_2-150x150.jpg" alt="TechCrunch" width="150" height="150" /></a><p class="wp-caption-text">TechCrunch hacked</p></div>
<p>This is the text inserted into the TechCrunch page</p>
<blockquote><p>So Arrington, how much did all the media coverage yesterday brought you in trough the welcome.html ad you<br /> forced<br /> people to? What a fucking retarded move was that you twat. You should be thanking me and sucking on my fucking ballsack for not deleting everyone on the box and publishing the mysql, if that&#8217;s what you want O.K, I can do that. Also, you fucking dickwads from sites like Yahoo!, BBC and plenty more, where the FUCK do you see adult content on<br /> http://dupedb.com/<br /> ???????? I mean honestly, are you fucktards also in just for the money?!?!?!<br /> So Arrington, how much did all the media coverage yesterday brought you in trough the welcome.html ad you<br /> forced<br /> people to? What a fucking retarded move was that you twat. You should be thanking me and sucking on my fucking ballsack for not deleting everyone on the box and publishing the mysql, if that&#8217;s what you want O.K, I can do that. Also, you fucking dickwads from sites like Yahoo!, BBC and plenty more, where the FUCK do you see adult content on<br /> http://dupedb.com/<br /> ???????? I mean honestly, are you fucktards also in just for the money?!?!?!</p>
<p> </p>
</blockquote>
<p>Update : TechCrunch has <a href="http://www.techcrunch.com/2010/01/26/techcrunch-hacked/">posted on this</a> issue and promised to update the post with info as it comes along.</p>


<p>No related posts.</p><img src="http://feeds.feedburner.com/~r/DreamsOfThought/~4/tEeu_8Mn1UU" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://gingerjoos.com/blog/from-the-web/techcrunch-site-hacked/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://gingerjoos.com/blog/from-the-web/techcrunch-site-hacked</feedburner:origLink></item>
		<item>
		<title>Firebug opens automatically for all pages</title>
		<link>http://feedproxy.google.com/~r/DreamsOfThought/~3/v6mKVCga5Zo/firebug-opens-automatically-for-all-pages</link>
		<comments>http://gingerjoos.com/blog/code/firebug-opens-automatically-for-all-pages#comments</comments>
		<pubDate>Wed, 20 Jan 2010 14:31:55 +0000</pubDate>
		<dc:creator>Anirudh</dc:creator>
				<category><![CDATA[code]]></category>
		<category><![CDATA[firebug]]></category>

		<guid isPermaLink="false">http://gingerjoos.com/blog/?p=245</guid>
		<description><![CDATA[

Faced this bizzare issue today in Firefox. Firebug was opening automatically for all pages. Even on closing firebug, all I had to do was click on a new link in the same tab for it to appear again. This happened for all tabs.
Turns out I had accidently turned on &#8220;On for all Web Pages&#8221; option. [...]


Related posts:<ol><li><a href='http://gingerjoos.com/blog/technology/twitter-maintenance' rel='bookmark' title='Permanent Link: Twitter maintenance'>Twitter maintenance</a></li>
<li><a href='http://gingerjoos.com/blog/linux/vimdiff-the-cool-way-to-diff-for-vim-users' rel='bookmark' title='Permanent Link: vimdiff &#8211; the cool way to diff for vim users'>vimdiff &#8211; the cool way to diff for vim users</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<!-- Chitika|Premium - WordPress Plugin --><div class="chitika-adspace above"><script type="text/javascript"><!--
ch_client = "gingerjoos";
ch_type = "mpu";
ch_width = 300;
ch_height = 150;
ch_color_bg = "";
ch_color_title = "";
ch_color_site_link = "";
ch_color_text = "";
ch_non_contextual = 4;
ch_vertical = "premium";
ch_font_title = "";
ch_font_text = "";
ch_sid = "wordpress-plugin";
var ch_queries = new Array( );
var ch_selected=Math.floor((Math.random()*ch_queries.length));
if ( ch_selected < ch_queries.length ) {
ch_query = ch_queries[ch_selected];
}
//--></script>
<script  src="http://scripts.chitika.net/eminimalls/amm.js" type="text/javascript"></script></div>
<p>Faced this bizzare issue today in Firefox. Firebug was opening automatically for all pages. Even on closing firebug, all I had to do was click on a new link in the same tab for it to appear again. This happened for all tabs.</p>
<p>Turns out I had accidently turned on &#8220;On for all Web Pages&#8221; option. Right clicked on the Firebug icon to turn it off. Problem solved <img src='http://gingerjoos.com/blog/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> </p>
<div id="attachment_246" class="wp-caption aligncenter" style="width: 310px"><a href="http://gingerjoos.com/blog/wp-content/uploads/2010/01/firebug_options_disable.png"><img class="size-medium wp-image-246" title="firebug_options_disable" src="http://gingerjoos.com/blog/wp-content/uploads/2010/01/firebug_options_disable-300x212.png" alt="Right click Firebug" width="300" height="212" /></a><p class="wp-caption-text">Right click Firebug to disable &quot;On For All Web Pages&quot;</p></div>


<p>Related posts:<ol><li><a href='http://gingerjoos.com/blog/technology/twitter-maintenance' rel='bookmark' title='Permanent Link: Twitter maintenance'>Twitter maintenance</a></li>
<li><a href='http://gingerjoos.com/blog/linux/vimdiff-the-cool-way-to-diff-for-vim-users' rel='bookmark' title='Permanent Link: vimdiff &#8211; the cool way to diff for vim users'>vimdiff &#8211; the cool way to diff for vim users</a></li>
</ol></p><img src="http://feeds.feedburner.com/~r/DreamsOfThought/~4/v6mKVCga5Zo" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://gingerjoos.com/blog/code/firebug-opens-automatically-for-all-pages/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://gingerjoos.com/blog/code/firebug-opens-automatically-for-all-pages</feedburner:origLink></item>
		<item>
		<title>Booking tatkal tickets on IRCTC the supercool way</title>
		<link>http://feedproxy.google.com/~r/DreamsOfThought/~3/PCUt6o84X3s/booking-tatkal-tickets-on-irctc-the-supercool-way</link>
		<comments>http://gingerjoos.com/blog/misc/booking-tatkal-tickets-on-irctc-the-supercool-way#comments</comments>
		<pubDate>Thu, 31 Dec 2009 11:12:22 +0000</pubDate>
		<dc:creator>Anirudh</dc:creator>
				<category><![CDATA[misc]]></category>
		<category><![CDATA[irctc]]></category>
		<category><![CDATA[railway]]></category>
		<category><![CDATA[tatkal]]></category>

		<guid isPermaLink="false">http://gingerjoos.com/blog/?p=222</guid>
		<description><![CDATA[

This article is a short demo to using Firefox&#8217;s Autofill Forms extension to book tatkal tickets. First step is to go to https://addons.mozilla.org/en-US/firefox/addon/4775 and install the extension. You&#8217;ll need to restart Firefox for the extension to take effect.
Now that it&#8217;s done, head to the IRCTC website and login. Now head to the Quick Book page. [...]


Related posts:<ol><li><a href='http://gingerjoos.com/blog/misc/ckwl-on-tatkal-railway-ticket' rel='bookmark' title='Permanent Link: CKWL on Tatkal railway ticket'>CKWL on Tatkal railway ticket</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<!-- Chitika|Premium - WordPress Plugin --><div class="chitika-adspace above"><script type="text/javascript"><!--
ch_client = "gingerjoos";
ch_type = "mpu";
ch_width = 300;
ch_height = 150;
ch_color_bg = "";
ch_color_title = "";
ch_color_site_link = "";
ch_color_text = "";
ch_non_contextual = 4;
ch_vertical = "premium";
ch_font_title = "";
ch_font_text = "";
ch_sid = "wordpress-plugin";
var ch_queries = new Array( );
var ch_selected=Math.floor((Math.random()*ch_queries.length));
if ( ch_selected < ch_queries.length ) {
ch_query = ch_queries[ch_selected];
}
//--></script>
<script  src="http://scripts.chitika.net/eminimalls/amm.js" type="text/javascript"></script></div>
<p>This article is a short demo to using Firefox&#8217;s <a href="https://addons.mozilla.org/en-US/firefox/addon/4775">Autofill Forms</a> extension to book tatkal tickets. First step is to go to <a href="https://addons.mozilla.org/en-US/firefox/addon/4775">https://addons.mozilla.org/en-US/firefox/addon/4775</a> and install the extension. You&#8217;ll need to restart Firefox for the extension to take effect.</p>
<p>Now that it&#8217;s done, head to the <a href="http://irctc.co.in/">IRCTC</a> website and login. Now head to the Quick Book page. You can fill in the details.<a href="http://gingerjoos.com/blog/wp-content/uploads/2009/12/quick_book.jpg"><img class="aligncenter size-thumbnail wp-image-223" title="quick book" src="http://gingerjoos.com/blog/wp-content/uploads/2009/12/quick_book-150x150.jpg" alt="quick book on IRCTC" width="150" height="150" /></a><br />If you do not know the train number, you can get it from the &#8220;Plan My Travel&#8221; page. Now that you&#8217;ve filled up all the details you want to, right click on one of the form textboxes. Click on the &#8220;Add complete form as profile&#8221; option.<a href="http://gingerjoos.com/blog/wp-content/uploads/2009/12/add_form_profile.jpg"><img class="aligncenter size-thumbnail wp-image-224" title="add_form_profile" src="http://gingerjoos.com/blog/wp-content/uploads/2009/12/add_form_profile-150x150.jpg" alt="add complete form as profile" width="150" height="150" /></a></p>
<p>A new window like this will now open up</p>
<p><a href="http://gingerjoos.com/blog/wp-content/uploads/2009/12/autofill_profile.jpg"><img class="aligncenter size-thumbnail wp-image-225" title="autofill_profile" src="http://gingerjoos.com/blog/wp-content/uploads/2009/12/autofill_profile-150x150.jpg" alt="Autofill forms profile" width="150" height="150" /></a></p>
<p>You can close the window and reload the QuickBook page. Press the Alt+j key combination to autofill the form. You can reload the page as many times as you want and press Alt+j to autofill.</p>
<p> </p>
<p>This post is dedicated to my good friend Dhanya.</p>
<p><strong>Edit :</strong> OK, I&#8217;m giving into blackmail from someone crafty and cunning(not my words) <img src='http://gingerjoos.com/blog/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' /> </p>
<blockquote><p>@gjoos : i want my name included in that blogpost if you want me to TRY booking tickets for you tomorrow !!! <img src='http://gingerjoos.com/blog/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' /> </p>
</blockquote>
<p>So, Divya chechi.. this post is dedicated to you as well <img src='http://gingerjoos.com/blog/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' /> </p>
<p><strong>Update :</strong> Wondering what <a href="http://gingerjoos.com/blog/misc/ckwl-on-tatkal-railway-ticket">CKWL</a> means? Check out my blog post on <a href="http://gingerjoos.com/blog/misc/ckwl-on-tatkal-railway-ticket">CKWL status on Tatkal railway ticket</a>.</p>


<p>Related posts:<ol><li><a href='http://gingerjoos.com/blog/misc/ckwl-on-tatkal-railway-ticket' rel='bookmark' title='Permanent Link: CKWL on Tatkal railway ticket'>CKWL on Tatkal railway ticket</a></li>
</ol></p><img src="http://feeds.feedburner.com/~r/DreamsOfThought/~4/PCUt6o84X3s" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://gingerjoos.com/blog/misc/booking-tatkal-tickets-on-irctc-the-supercool-way/feed</wfw:commentRss>
		<slash:comments>6</slash:comments>
		<feedburner:origLink>http://gingerjoos.com/blog/misc/booking-tatkal-tickets-on-irctc-the-supercool-way</feedburner:origLink></item>
		<item>
		<title>CKWL on Tatkal railway ticket</title>
		<link>http://feedproxy.google.com/~r/DreamsOfThought/~3/4-5NXc5gWoQ/ckwl-on-tatkal-railway-ticket</link>
		<comments>http://gingerjoos.com/blog/misc/ckwl-on-tatkal-railway-ticket#comments</comments>
		<pubDate>Wed, 09 Dec 2009 08:15:21 +0000</pubDate>
		<dc:creator>Anirudh</dc:creator>
				<category><![CDATA[misc]]></category>
		<category><![CDATA[indian railways]]></category>
		<category><![CDATA[irctc]]></category>
		<category><![CDATA[tatkal]]></category>
		<category><![CDATA[waiting list]]></category>

		<guid isPermaLink="false">http://gingerjoos.com/blog/?p=210</guid>
		<description><![CDATA[

So the other day I booked a tatkal ticket online from IRCTC. After the usual 500 errors and multiple tries I came to the &#8220;Congratulations!&#8221; page where they gave me the ticket details. And this is what I found in the ticket&#8217;s status &#8220;CKWL 23&#8243;. I wondered what the heck it was. Googling did not [...]


Related posts:<ol><li><a href='http://gingerjoos.com/blog/misc/booking-tatkal-tickets-on-irctc-the-supercool-way' rel='bookmark' title='Permanent Link: Booking tatkal tickets on IRCTC the supercool way'>Booking tatkal tickets on IRCTC the supercool way</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<!-- Chitika|Premium - WordPress Plugin --><div class="chitika-adspace above"><script type="text/javascript"><!--
ch_client = "gingerjoos";
ch_type = "mpu";
ch_width = 300;
ch_height = 150;
ch_color_bg = "";
ch_color_title = "";
ch_color_site_link = "";
ch_color_text = "";
ch_non_contextual = 4;
ch_vertical = "premium";
ch_font_title = "";
ch_font_text = "";
ch_sid = "wordpress-plugin";
var ch_queries = new Array( );
var ch_selected=Math.floor((Math.random()*ch_queries.length));
if ( ch_selected < ch_queries.length ) {
ch_query = ch_queries[ch_selected];
}
//--></script>
<script  src="http://scripts.chitika.net/eminimalls/amm.js" type="text/javascript"></script></div>
<p>So the other day I booked a tatkal ticket online from <a href="http://irctc.co.in/">IRCTC</a>. After the usual <a href="http://en.wikipedia.org/wiki/HTTP_Status#5xx_Server_Error">500</a> errors and multiple tries I came to the &#8220;Congratulations!&#8221; page where they gave me the ticket details. And this is what I found in the ticket&#8217;s status &#8220;CKWL 23&#8243;. I wondered what the heck it was. Googling did not help. I shot off a mail to the IRCTC customer care and within half an hour I got their reply. Reproducing their reply below -</p>
<blockquote><p>Dear Customer,</p>
<p>Kindly note that CK stands for Tatkal CKWL means  Tatkal Wait list Ticket.</p>
<p>Thanks &amp; Regards</p>
</blockquote>
<p>So there it goes. Official reply from IRCTC. CKWL is the waiting list for the tatkal quota. It&#8217;s just like the &#8220;WL&#8221; you get on the normal ticket, except it&#8217;s on the tatkal quota. No idea what CK stands for though.</p>
<p>Although the reply wasn&#8217;t exactly Shakespeare, I was impressed that they got back to me so soon. It&#8217;s nice to see the Railways doing good stuff. There&#8217;s still room to improve though.</p>
<p>Have you had a similar experience with IRCTC? Frustrating one? Good one? The comment form is right below <img src='http://gingerjoos.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p><strong>Update :</strong> Found something in the IRCTC site in the ngpay <a href="http://www.irctc.co.in/ngpay/faq.htm">FAQ</a>. It says(in point 9)</p>
<blockquote><p>Booking can be done against general (GN), ladies (LD) and tatkal (CK) quota berths/seats only.</p>
<p> </p>
</blockquote>
<p>. What this means is that GNWL is General Quota Waiting list, LDWL is Ladies Quota Waiting List and CKWL is Tatkal Quota Waiting list.</p>
<p>If you&#8217;re looking to <a href="http://gingerjoos.com/blog/misc/booking-tatkal-tickets-on-irctc-the-supercool-way">improve the time it takes to book tatkal tickets</a>, you can try the Autofill forms extension. Check out my blog post on <a href="http://gingerjoos.com/blog/misc/booking-tatkal-tickets-on-irctc-the-supercool-way">how to use the Autofill forms addon</a>.</p>


<p>Related posts:<ol><li><a href='http://gingerjoos.com/blog/misc/booking-tatkal-tickets-on-irctc-the-supercool-way' rel='bookmark' title='Permanent Link: Booking tatkal tickets on IRCTC the supercool way'>Booking tatkal tickets on IRCTC the supercool way</a></li>
</ol></p><img src="http://feeds.feedburner.com/~r/DreamsOfThought/~4/4-5NXc5gWoQ" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://gingerjoos.com/blog/misc/ckwl-on-tatkal-railway-ticket/feed</wfw:commentRss>
		<slash:comments>10</slash:comments>
		<feedburner:origLink>http://gingerjoos.com/blog/misc/ckwl-on-tatkal-railway-ticket</feedburner:origLink></item>
		<item>
		<title>Comparison of Google Public DNS and Open DNS response</title>
		<link>http://feedproxy.google.com/~r/DreamsOfThought/~3/XICoku0bM_M/comparison-of-google-public-dns-and-open-dns-response</link>
		<comments>http://gingerjoos.com/blog/technology/comparison-of-google-public-dns-and-open-dns-response#comments</comments>
		<pubDate>Sat, 05 Dec 2009 07:33:53 +0000</pubDate>
		<dc:creator>Anirudh</dc:creator>
				<category><![CDATA[technology]]></category>
		<category><![CDATA[dns]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[opendns]]></category>

		<guid isPermaLink="false">http://gingerjoos.com/blog/?p=201</guid>
		<description><![CDATA[

Google announced that it&#8217;s making 2 DNS servers available publicly. The servers are 8.8.8.8 and 8.8.4.4 . They&#8217;ve also given configuration instructions on their DNS page. I configured my /etc/resolv.conf to refer to Google&#8217;s DNS. Before this I ran some quick tests using dig to compare it with OpenDNS.

$ dig @208.67.222.222 gingerjoos.com

; &#60;&#60;&#62;&#62; DiG 9.4.2 [...]


Related posts:<ol><li><a href='http://gingerjoos.com/blog/technology/user-agent-gtb-or-gtb5-is-the-google-toolbar' rel='bookmark' title='Permanent Link: User agent GTB or GTB5 is the Google Toolbar'>User agent GTB or GTB5 is the Google Toolbar</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<!-- Chitika|Premium - WordPress Plugin --><div class="chitika-adspace above"><script type="text/javascript"><!--
ch_client = "gingerjoos";
ch_type = "mpu";
ch_width = 300;
ch_height = 150;
ch_color_bg = "";
ch_color_title = "";
ch_color_site_link = "";
ch_color_text = "";
ch_non_contextual = 4;
ch_vertical = "premium";
ch_font_title = "";
ch_font_text = "";
ch_sid = "wordpress-plugin";
var ch_queries = new Array( );
var ch_selected=Math.floor((Math.random()*ch_queries.length));
if ( ch_selected < ch_queries.length ) {
ch_query = ch_queries[ch_selected];
}
//--></script>
<script  src="http://scripts.chitika.net/eminimalls/amm.js" type="text/javascript"></script></div>
<p><a href="http://googleblog.blogspot.com/2009/12/introducing-google-public-dns.html">Google announced</a> that it&#8217;s making 2 <a href="http://code.google.com/speed/public-dns/">DNS servers available publicly</a>. The servers are 8.8.8.8 and 8.8.4.4 . They&#8217;ve also given<a href="http://code.google.com/speed/public-dns/docs/using.html"> configuration instructions</a> on their DNS page. I configured my /etc/resolv.conf to refer to Google&#8217;s DNS. Before this I ran some quick tests using <a href="http://linux.die.net/man/1/dig">dig</a> to compare it with <a href="http://www.opendns.com/">OpenDNS</a>.</p>
<pre class="brush: text">
$ dig @208.67.222.222 gingerjoos.com

; &lt;&lt;&gt;&gt; DiG 9.4.2 &lt;&lt;&gt;&gt; @208.67.222.222 gingerjoos.com
; (1 server found)
;; global options:  printcmd
;; Got answer:
;; -&gt;&gt;HEADER&lt;&lt;- opcode: QUERY, status: NOERROR, id: 1273
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;gingerjoos.com.                        IN      A

;; ANSWER SECTION:
gingerjoos.com.         14400   IN      A       208.113.199.196

;; Query time: 751 msec
;; SERVER: 208.67.222.222#53(208.67.222.222)
;; WHEN: Fri Dec  4 09:13:58 2009
;; MSG SIZE  rcvd: 48

$ dig @8.8.8.8 gingerjoos.com

; &lt;&lt;&gt;&gt; DiG 9.4.2 &lt;&lt;&gt;&gt; @8.8.8.8 gingerjoos.com
; (1 server found)
;; global options:  printcmd
;; Got answer:
;; -&gt;&gt;HEADER&lt;&lt;- opcode: QUERY, status: NOERROR, id: 2594
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;gingerjoos.com.                        IN      A

;; ANSWER SECTION:
gingerjoos.com.         14400   IN      A       208.113.199.196

;; Query time: 616 msec
;; SERVER: 8.8.8.8#53(8.8.8.8)
;; WHEN: Fri Dec  4 09:14:09 2009
;; MSG SIZE  rcvd: 48

$ dig @8.8.4.4 gingerjoos.com

; &lt;&lt;&gt;&gt; DiG 9.4.2 &lt;&lt;&gt;&gt; @8.8.4.4 gingerjoos.com
; (1 server found)
;; global options:  printcmd
;; Got answer:
;; -&gt;&gt;HEADER&lt;&lt;- opcode: QUERY, status: NOERROR, id: 34741
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;gingerjoos.com.                        IN      A

;; ANSWER SECTION:
gingerjoos.com.         14321   IN      A       208.113.199.196

;; Query time: 123 msec
;; SERVER: 8.8.4.4#53(8.8.4.4)
;; WHEN: Fri Dec  4 09:15:28 2009
;; MSG SIZE  rcvd: 48
</pre>
<p>Dig allows you to directly query a DNS server and get its reply. It shows stats from that query &#8211; response. The stat we&#8217;re interested in is this one</p>
<p><strong>;; Query time: 123 msec</strong></p>
<p>The IP 208.67.222.222 is the address of the OpenDNS server. Let&#8217;s try one more query</p>
<pre class="brush: text">

$ dig @208.67.222.222 mec.ac.in

; &lt;&lt;&gt;&gt; DiG 9.4.2 &lt;&lt;&gt;&gt; @208.67.222.222 mec.ac.in
; (1 server found)
;; global options:  printcmd
;; Got answer:
;; -&gt;&gt;HEADER&lt;&lt;- opcode: QUERY, status: NOERROR, id: 44308
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;mec.ac.in.                     IN      A

;; ANSWER SECTION:
mec.ac.in.              604800  IN      A       210.212.232.132

;; Query time: 389 msec
;; SERVER: 208.67.222.222#53(208.67.222.222)
;; WHEN: Sat Dec  5 12:38:57 2009
;; MSG SIZE  rcvd: 43

$ dig @8.8.8.8 mec.ac.in

; &lt;&lt;&gt;&gt; DiG 9.4.2 &lt;&lt;&gt;&gt; @8.8.8.8 mec.ac.in
; (1 server found)
;; global options:  printcmd
;; Got answer:
;; -&gt;&gt;HEADER&lt;&lt;- opcode: QUERY, status: NOERROR, id: 56600
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;mec.ac.in.                     IN      A

;; ANSWER SECTION:
mec.ac.in.              160448  IN      A       210.212.232.131

;; Query time: 121 msec
;; SERVER: 8.8.8.8#53(8.8.8.8)
;; WHEN: Sat Dec  5 12:39:06 2009
;; MSG SIZE  rcvd: 43
</pre>
<p>You can try more queries and see for yourself. At least as of now Google DNS seems to be faster.</p>


<p>Related posts:<ol><li><a href='http://gingerjoos.com/blog/technology/user-agent-gtb-or-gtb5-is-the-google-toolbar' rel='bookmark' title='Permanent Link: User agent GTB or GTB5 is the Google Toolbar'>User agent GTB or GTB5 is the Google Toolbar</a></li>
</ol></p><img src="http://feeds.feedburner.com/~r/DreamsOfThought/~4/XICoku0bM_M" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://gingerjoos.com/blog/technology/comparison-of-google-public-dns-and-open-dns-response/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://gingerjoos.com/blog/technology/comparison-of-google-public-dns-and-open-dns-response</feedburner:origLink></item>
		<item>
		<title>Gravatar support  in Drupal</title>
		<link>http://feedproxy.google.com/~r/DreamsOfThought/~3/7Z7VYg2Z3Bs/gravatar-support-in-drupal</link>
		<comments>http://gingerjoos.com/blog/code/drupal-code/gravatar-support-in-drupal#comments</comments>
		<pubDate>Wed, 04 Nov 2009 13:52:12 +0000</pubDate>
		<dc:creator>Anirudh</dc:creator>
				<category><![CDATA[drupal]]></category>
		<category><![CDATA[gravatar]]></category>

		<guid isPermaLink="false">http://gingerjoos.com/blog/?p=185</guid>
		<description><![CDATA[

If you&#8217;ve been using Wordpress you probably know about Gravatar. Gravatar is an abbreviation for &#8220;Globally Recognized Avatar&#8221;. It&#8217;s a service which provides an avatar across sites. While Gravatar support is built-in in Wordpress, it requires an external module to be installed in Drupal. Recently I had to use the module in a Drupal 5 [...]


Related posts:<ol><li><a href='http://gingerjoos.com/blog/code/drupal-code/how-to-programmatically-create-and-log-in-drupal-users' rel='bookmark' title='Permanent Link: How to programmatically create and log in drupal users'>How to programmatically create and log in drupal users</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<!-- Chitika|Premium - WordPress Plugin --><div class="chitika-adspace above"><script type="text/javascript"><!--
ch_client = "gingerjoos";
ch_type = "mpu";
ch_width = 300;
ch_height = 150;
ch_color_bg = "";
ch_color_title = "";
ch_color_site_link = "";
ch_color_text = "";
ch_non_contextual = 4;
ch_vertical = "premium";
ch_font_title = "";
ch_font_text = "";
ch_sid = "wordpress-plugin";
var ch_queries = new Array( );
var ch_selected=Math.floor((Math.random()*ch_queries.length));
if ( ch_selected < ch_queries.length ) {
ch_query = ch_queries[ch_selected];
}
//--></script>
<script  src="http://scripts.chitika.net/eminimalls/amm.js" type="text/javascript"></script></div>
<p>If you&#8217;ve been using Wordpress you probably know about Gravatar. Gravatar is an abbreviation for &#8220;Globally Recognized Avatar&#8221;. It&#8217;s a service which provides an avatar across sites. While Gravatar support is built-in in Wordpress, it requires an external module to be installed in Drupal. Recently I had to use the module in a Drupal 5 instance.</p>
<p>The module provides a gravatar only for comments. You can have the module insert the gravatar into the comment body itself or have it provide a field in the comment object ($comment-&gt;gravatar) which can be used by the theme. It does this by using the hook_comment() .</p>
<p>In our case though, we needed it to show the gravatar instead of the user picture if the user had not uploaded any. This was very easy to do. The key function here is _gravatar_get_gravatar(). You can provide it any or all of these parameters &#8211; mail, default, size or rating. Mail is the email id of the user. Gravatar can supply a unique generated avatar in case the email id you send them is not that of a registered Gravatar user. This can be of many types &#8211; identicon, wavatar or monsterid. Which of these are what you want, is specified in the default parameter. The size is of course, the size. The gravatars uploaded come with a rating &#8211; G, PG, R or X. You can specify a maximum rating with the rating parameter. You can read more about the <a href="http://en.gravatar.com/site/implement/url">gravatar parameters</a>.</p>
<p>You can pass whichever of these parameters you want to _gravatar_get_gravatar() and it will return to you the url of the gravatar. Now pass this to the theme_gravatar() function in the gravatar module.</p>
<pre class="brush: php">$picture = theme(&#039;gravatar&#039;,$gravatar_url,$username,$url);</pre>
<p>You have to do all of this in the theme_user_picture function of your theme. If your theme is something like -</p>
<pre class="brush: php">
function THEMENAME_user_picture($account) {
  if (variable_get(&#039;user_pictures&#039;, 0)) {
    if ($account-&gt;picture &amp;&amp; file_exists($account-&gt;picture)) {
      $picture = file_create_url($account-&gt;picture);
    }
    else if (variable_get(&#039;user_picture_default&#039;, &#039;&#039;)) {
      $picture = variable_get(&#039;user_picture_default&#039;, &#039;&#039;);
    }
</pre>
<p>You could change it to something like -</p>
<pre class="brush: php">
function THEMENAME_user_picture($account) {
  if (variable_get(&#039;user_pictures&#039;, 0)) {
    if ($account-&gt;picture &amp;&amp; file_exists($account-&gt;picture)) {
      $picture = file_create_url($account-&gt;picture);
    }
    else if (user_access(&#039;use gravatar&#039;, $account) &amp;&amp; (!user_access(&#039;disable own gravatar&#039;, $account) || !isset($account-&gt;gravatar) || $account-&gt;gravatar)) {
      $picture = _gravatar_get_gravatar(array(&#039;mail&#039; =&gt; $account-&gt;mail));
      return theme(&#039;gravatar&#039;,$picture,$account-&gt;name,&#039;&#039;);
    }
    else if (variable_get(&#039;user_picture_default&#039;, &#039;&#039;)) {
      $picture = variable_get(&#039;user_picture_default&#039;, &#039;&#039;);
    }
</pre>
<p>You could even rewrite the default theme_gravatar provided by the gravatar module with your own THEMENAME_gravatar theme function. </p>


<p>Related posts:<ol><li><a href='http://gingerjoos.com/blog/code/drupal-code/how-to-programmatically-create-and-log-in-drupal-users' rel='bookmark' title='Permanent Link: How to programmatically create and log in drupal users'>How to programmatically create and log in drupal users</a></li>
</ol></p><img src="http://feeds.feedburner.com/~r/DreamsOfThought/~4/7Z7VYg2Z3Bs" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://gingerjoos.com/blog/code/drupal-code/gravatar-support-in-drupal/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://gingerjoos.com/blog/code/drupal-code/gravatar-support-in-drupal</feedburner:origLink></item>
	</channel>
</rss><!-- Dynamic page generated in 5.312 seconds. --><!-- Cached page generated by WP-Super-Cache on 2010-03-11 00:05:30 -->
