function get_cookie(name) {
	if (document.cookie.length>0) {
		c_start=document.cookie.indexOf(name + "=");
		if (c_start!=-1) {
			c_start=c_start + name.length+1;
			c_end=document.cookie.indexOf(";",c_start);
			if (c_end==-1) c_end=document.cookie.length;
			
			return unescape(document.cookie.substring(c_start,c_end));
		}
	}
	return "";
}
var lang = get_cookie('language');

if ( lang != '' && lang != 'en' ) {
   	google.load("language", "1");
	function traverseTree(foo, searchNode) {
		var childNodes = (searchNode || document.body).childNodes;
	    var cnLength = childNodes.length;
	    var excludes = ',html,head,style,title,link,meta,script,object,iframe,';
	    var translatable_atts = ['alt', 'title', 'value'];
	    while (cnLength--) {
	        var currentNode = childNodes[cnLength];
	        if (currentNode.nodeType === 1 ) {
	            arguments.callee(foo, currentNode);
	        }
	        if (currentNode.attributes != null) {
	        	for (var i=0; i < translatable_atts.length; i++) {
	        		var att = translatable_atts[i];
	        		if (currentNode.nodeType==1 && currentNode.getAttribute(att)) {
	        			var _currentNode = currentNode;
	        			google.language.translate(currentNode.getAttribute(att), 'en', lang, function(result) {
							if (result.translation) {
								_currentNode.setAttribute(att, result.translation);
							}
						});
						_currentNode.setAttribute(att, '');
	        		}
	        	};
	        }
	        if (currentNode.nodeType !== 3 && (excludes).indexOf(',' + currentNode.nodeName.toLowerCase() + ',') === -1) {
	            continue;
	        }
	        var str = jQuery.trim(currentNode.data);
	        if ( str == '') {continue; };
	       	if (str.length > 1) {
				google.language.translate(jQuery.trim(str), 'en', lang, function(result) {
					if (result.translation) {
						currentNode.data = result.translation;
					}
				});
	       	};
	        currentNode.data = '';
	    }
	}
    google.setOnLoadCallback(traverseTree);
};


jQuery(document).ready(function($){
	$('#language-bar .icons a').click(function() {
		var lang = $(this).attr('href').match(/\#lang=(.*)/);
		if ( typeof(lang[1]) == 'undefined' ) {
			return false;
		};
		lang=lang[1];
		document.cookie = 'language=' + lang;
		window.location = window.location;
		return false;
	});
})(jQuery);
