function createTextImage( el ) {
	var elText = el.get( 'text' );
	el.empty();
	var tagname = el.tagName.toLowerCase();
	var classRegex = /textimage-([a-z0-9-]+)/;
	var classMatch = classRegex.exec( el.className );
	if ( classMatch ) tagname = classMatch[1];
    var file = Base64.encode( elText );
    file = file.replace('+', '-');
    file = file.replace('/', '_');
	new Element( 'img', { 'src': THEME_IMAGE_DIR + '/dynamic/' + tagname + '/' + file + '.png', 'alt': elText } ).inject( el );
}

var WebCodeForm = new Class({
	webcodes: {
		'bklt2010': 'http://markusstudiert.de/booklet/',
		'3pYKad': 'http://googleblog.blogspot.com/2009/07/google-apps-is-out-of-beta-yes-really.html',
		'eZ5GI': 'http://gmailblog.blogspot.com/2009/07/gmail-leaves-beta-launches-back-to-beta.html',
		'wikipedia': 'http://de.wikipipedia.org/',
		'kottke': 'http://kottke.org/',
		'facebook': 'http://facebook.com/',
		'zwonull': 'http://tacker.medieninformatiker.info/s1/gg/referat/',
		'wave': 'http://wave.google.com/',
		'rgb': 'http://de.wikipedia.org/wiki/RGB-Farbraum',
		'euroskala': 'http://de.wikipedia.org/wiki/Euroskala',
		'processing': 'http://de.wikipedia.org/wiki/Processing',
		'4Yw52u': 'http://www.heise.de/ct/ftp/07/24/206/',
		'trees': 'http://www.openprocessing.org/visuals/?visualID=2925'
	},
	initialize: function()
	{
		$('webcodeform').addEvent('submit', this.submitHandler.bind(this));
		$('webcode').addEvent('keyup', this.keyHandler.bind(this));
	},
	keyHandler: function(ev)
	{
		if (ev.key === 'enter') $('webcodeform').fireEvent('submit');
	},
	submitHandler: function(ev)
	{
		if (ev) ev.preventDefault();
		var webcodes = new Hash(this.webcodes);
		var code = $('webcode').get('value');
		if (webcodes.has(code)) window.location.href = webcodes.get(code);
	}
});

window.addEvent('domready', function() {

  	$$('h1').addEvent('click', function(ev) {
    	document.location.href = '/';
   	});

    var ie6 = (Browser.Engine.trident && parseInt(Browser.Engine.version) === 4);
    if (!ie6) {
        new Asset.css(THEME_CSS_DIR + '/chrome.css', {'media': 'screen'});

    	// Text-Images
    	$$( '.textimage' ).each( function( el ) {
    		createTextImage( el );
      	} );
    }

    FB.init('31d5be1b1d4cfeea5115ed64c49343ba', '/fbconnect/xd_receiver.htm');

    // Webcodes
    if ($('webcodeform')) new WebCodeForm();
});
