Saturday, December 30, 2006

Major kudos to Singpolyma for putting in some significant effort at the Blogger Hacks Wiki, updating the navigation and sorting the hacks by platform. Now you can see the hacks as follows:

The goal of Stephen's restructuring of the Wiki is to keep the content relevant, as well as providing a dedicated hub for all of the great new hacks that have been generated for the new Blogger platform. This is great work!

So over to you.... If you've got a great hack (whether for Beta or Classic), and you want to ensure maximum exposure for your work, as well as placing your hack up against similar ones to allow users to make comparisons, make sure you're adding your hacks to the wiki.

If you're working on your template (whether in Beta or Classic) and you want some extra features for your blog, borrow a hack or two from the wiki and test them out. As Stephen notes, it would be particularly useful to the Wiki community if you'd road-test hacks from the (currently rather large) platform unknown collection so that they can be cataloged appropriately according to platform.

Check out Stephen's wiki update to get the latest on the request hacks process and page.

Filed in:

Thursday, December 21, 2006

K-Rally

K-Rally from Infinite Dreams


3D top-down racer where your car is equipped with mines, rockets and has several kinds of useful upgrades available. Leave a trail of destruction behind as you blast ahead of the competition. Make your opponents spin and crash as you bombard them with a barrage of weapons! Take them out of the race with rockets and mines. Win races and prize money so you can progress to the next level of competition for more fire action.

Unique features:
* 10 upgradable cars
* 14 ingame characters
* weapons (mines, rockets)
* shop, garage, armory, bets in career mode
* random track generator
* downloadable content (new gfx, tracks,cars).

Sunday, December 17, 2006

This version is outdated. A newer (and better) version is present here.


What if you can view the posts having a particular label without leaving the current page? What if you can do your bit of reading and other stuff and keep clicking away without wasting your time while the labels are loaded in the background and displayed when they are ready? (Okay, enough of that. I see some people rolling their eyes now. :D )

AJAX labels does just the same... It opens a block of text just above all the posts, showing snippets of posts having the label you selected. Click on any of the categories on the right sidebar to see the hack in action.

INTRODUCTION
I had this hack in my personal blog about a month back. It had some really rigorous logic to parse the RSS feed, and hence was not very fast. Now that Google has implemented JSON feeds in their GData structure, my job becomes easier. I also decided to open this hack for the public.

My earlier implementation was in AJAX, i.e. I had used the XMLHttpRequest function for asynchronous procurement of the RSS data and XML DOM parsing to display it. Needless to say, JSON cuts down most of the logic, because of its inherent nature. (I could have used Singpolyma's excellent Outline Converter application, but it would simply have added to the overhead. Also, I don't like NING because they take the website offline too frequently. :p)
If you are interested, here is the link to my original script to parse the XML feed.

This looks strikingly similar to Aditya's ABC Index, but the similarity ends there. The ABC Index was for old Blogger which didn't have the category support or JSON feeds. So he had to make use of del.icio.us categories. Also, the implementation did not use the XMLHttpRequest, but was nevertheless asynchronously loaded. But the XMLHttpRequest gives the best asynchronous experience.
The idea of showing the categories in a block was originally Aditya's, so I should give him due credit.

So much for the intro babble. Lets get on with the hack, shall we?

THE HACK
1. First things first. You should get yourself a copy of the prototype JS framework for this hack to work. Host it in a place of your convenience, maybe your Google Pages, since you already have a Google account. Otherwise, you can get one from here.
<script type="text/javascript" src="http://bloggerhacked.googlepages.com/prototype.js" />

Add this (Change the link if you opt to host the file) inside the <head> section of your template. I would recommend pasting it just above the closing </head> tag.

2. Now the heart of the hack.
Go to http://bloggerhacked.googlepages.com/ajaxlabelsscript
and copy the javascript and paste it just below the code you just added in step 1.

Optional Step: You can modify the CSS part of the javascript you just copied to suit the theme of your blog. I will give some basic tips to modify them here.

#indicator is the loading indicator. To change the background color, modify the hex value of background-color inside. To change the border color, change the hex value of border inside the #indicator.

#search-result is the box in which the category results are displayed.

.search-result-meta is the RSS feed for the label on the top.

.search-title is the post title of the category results.

.search-cat is the list of other categories of each post.

.search-close is the "Click to close" text at the bottom.

3. Locate the following code in your template:
<div class='tags'> Labels:
<ul>
<b:loop values='data:post.labels' var='label'>
<li><a expr:href='data:label.url' rel='tag'><data:label.name/></a></li>
</b:loop>
</ul>
</div>

Replace the red part of the code with this:

<a expr:href='"javascript:getCat(\"" + data:label.name + "\")"' rel='tag'>

4. Go to Page Layout screen. Add a HTML/Javascript widget just above the Blog Posts widget.
Give the title as blank and following code in body.
<div id="indicator" style="display: none;">
<img alt="Indicator" src="http://bloggerhacked.googlepages.com/indicator.gif" /> Loading...
</div>
<div id='search-result' style='display:none'></div>


5. Save your template and you are done.

ADDITIONAL STEPS IF YOU HAVE LABELS WIDGET IN YOUR SIDEBAR
1. Look for the code of your labels widget. If you don't know how, search for the following:
<b:loop values='data:labels' var='label'>
<li>
<b:if cond='data:blog.url == data:label.url'>
<data:label.name/>
<b:else/>
<a expr:href='data:label.url' rel='tag'><data:label.name/></a>
</b:if>
(<data:label.count/>)
</li>
</b:loop>

Change the red portion of code with this:

<a expr:href='"javascript:getCat(\"" + data:label.name + "\")"' rel='tag'>

USAGE
Simply click on the label at the sidebar or at the bottom of a post and see the results coming up.

LIMITATIONS AND ROADMAP
I have limited the number of results returned to 5, because it will take up too much of page space otherwise. You can change the value if you change the max-results variable in the query inside the javascript.
I am planning to make a web-based script creator for this, with a truckload of customisations.
Also in the papers is support for navigation of the query results within the result block, a la the previous-posts-next-posts navigation.

Update: Minor correction based on comment by Tsung-kai Chen. Changes in blue. Sorry for the error.
Update 2: Another correction in the main script in http://bloggerhacked.googlepages.com/ajaxlabelsscript.
I won't make silly mistakes anymore. Promise! :D

Saturday, December 16, 2006

Update:
There are subtle changes in the script so that it now supports more than 31 quotes. The limit is now technically 365, which I think is more than enough. Please edit the widget and repeat Step 3 below. For those who are interested, the changed portions are in blue.

If you have visited my personal blog, (Cheap publicity here, I know ;) ) you might have noticed a "Quick Quote Quill's Quote of the day". Do I change the quote every day? No. It is automatic. It is one of my earliest javascript codes and not specific to blogger or even for blogs. However, I made it into a widget so you can use it in Beta Blogger.

This is more than a quote fetcher. You can add whatever quotes you want. (Even quoted by you!) This code cycles a set of quotes each day, i.e., it will display a new quote each day. When it reaches the last quote in your list, it starts from the first again. And all these quotes are added by you.

You can make it a widget in your Blogger Beta blog. How? Read along:

1. First thing you have to do is create a HTML/Javascript element from your Page Layout view. Create it anywhere you like.
You probably want it just below the blog title/description block, but will see that you are not able to add or drag elements to the area just below the blog title block.
To overcome that limitation, go to Edit Template and look for this code in there.
<div id="header-wrapper">
<b:section class="header" id="header" showaddelement="no">
<b:widget id="Header1" locked="false" title="xxxxxx(Header)" type="Header">
</b:widget>
</b:section>
</div>

The part of interest is the red-colored one - showaddelement.
The name suggests it all. Make it yes and save. You will find the "Add element" region in your layout next time.

2. Give a name you like to be the title of your quote of the day.

3. Paste the following code inside the content area of the widget:
<script type="text/javascript">
var today= new Date();
var first = new Date(today.getFullYear(), 0, 1);
var day = Math.round(((today - first) / 86400000), 0);

var numquotes = 3;
quotes = new Array(numquotes+1);
authors = new Array(numquotes+1);
quotes[1] = "Quote_1";
quotes[2] = "Quote_2";
quotes[3] = "Quote_3";
authors[1] = "Author_1";
authors[2] = "Author_2";
authors[3] = "Author_3";
var ran = (day % numquotes) + 1;
document.write(quotes[ran] + '<p style="text-align: right"><i>' + authors[ran] + '</i></p>');
</script>

Note the red colored regions. This is where you make your customisations.
You can modify the text (Quote_1, Author_1 etc.) to the quotes of your choice.
You can leave the Author text blank, i.e. just the "".
(Technically, the quote text too, but that doesn't make sense, does it?)

4. You can even add new quotes.
I have given an example with 3 quotes. You can give as many quotes as you want.
For that, add a new line just below the last quote line (quotes[3] = "Quote_3"; in this case).
The line should read like quotes[4] = "YOUR_QUOTE";
(You know what to fill in instead of YOUR_QUOTE)
Similarly, add a new authors line.
authors[4] = "YOUR_AUTHOR";
Also change numquotes to 4.

Remember, you can add more quotes in a similar fashion.
Just make sure that the

numquotes=N;
quotes[N]="";
and
authors[N]="";

lines tally.

5. Save the widget. Save the template.


Now that team blogs are able to make the transition to Beta, my Google interface has a couple of new and highly suggestive arm-twists to encourage the move... Are these new, or just new to me?


Filed in:

First post

Hello all,

So I finally decided to open my technical blog after about 6 months of creating it. I don't know what made me do that. I had been hacking my personal blog for a long time, but all the hacks remained in my blog only. After months of prowling in Blogger Help Group as Janus (Janus, because I'm a man with two faces. We all are!), one fine day I got a inner call to publish my hacks. :D

I have to admit that it's really tough to compile a step by step procedure for others to implement a hack, particularly when you have to keep in mind that most of them won't understand the code and it's a kind of spoon feeding.

But now I'm into the waters. And you can expect some cool hacks for your blog.

Thursday, December 14, 2006

Volker Lehmann has developed a very cool feed hub for Blogger hacks that pulls feeds from 9 of the usual suspects & displays the content all on a single page. Click the magnifying glass / plus sign icon to expand the post you're interested in. You can see what's hot in the hackosphere with one click. All v. non-plagiaristic too, since Volker asked permission, links to both source blog & source feed in each box's header, and doesn't carry links over into his reproduced posts. A fine resource, w/ space for expansion & the addition of other sources.

Oh, and another great incentive to write descriptive, explanatory post titles!

Filed in:

Monday, December 11, 2006

Milaro Adventures Of Sherlock Holmes The Silver Earring J2me Games

Sherlock Holmes Java Games

The young lady Miss Lavinia Bromsby has just returned to England a few days ago and her father the rich construction tycoon Mr. Melvin Bromsby invited many people to his country estate Sherringford Hall.
adventure java gamesdetective stories java games

Rumors say that during opening address the host is to pronounce something very important concerning the future of his company. He barely started welcoming his guests in the ballroom as Sir Melvyn Bromsby suddenly falls on the floor. A red spot is visible on his tuxedo right on his heart. As the crowd gathers around the dead tycoon Sherlock Holmes and Dr. Watson start their investigations…
Watson, could you hand me the mobile?

Combatible Devices J2me :

LG U8110 U8120 U8130 U8138 U8150 U8290 U8330 U8360 U8380 U880
Motorola E398 E550 E770v MPx200 MPx220 PEBL RAZR V3 ROKR E1 V360 V360v V500 V525 V545 V547 V550 V600 V620 V635 V80 V975 V980 V300
Panasonic X700
Samsung D410 D415 D500 E530 E720 E760 Z130 Z140 Z500 ZM60
Siemens SX1
Sony Ericsson K600i K608i K700i K750i V600i V800 W550i W600 W800i W810i Z1010 Z800i D750i
Nokia 3230 3250 3660 6260 6600 6630 6670 6680 6681 7610 7650 N70 N91

Tuesday, December 5, 2006

Tom Clancy's Rainbow Six Vegas
Developer : Gameloft

SAVE VEGAS FROM AN ESCALATING TERRORIST THREAT!


While trying to capture international terrorist Irena Morales, Team Rainbow has uncovered a plot to attack Las Vegas and the existence of a reusable microwave-pulse weapon capable of killing millions of people. The Rainbow operatives will need to secure casino floors, take to the chaotic streets of Sin City, and ultimately defeat the terrorist threat at Hoover Dam.

Immerse yourself in an enthralling brand new plot in the tempting, exciting, and bright Sin City like no other tactical/action game has ever offered you.
Now the fate of Las Vegas is in your hands. Will you take up the challenge?

;;

By :
Free Blog Templates