$(document).ready(function() {
	SOURCE_LANG = "sv"
	ATTACH_CONTROLS_ID = "#sidebar"
	TRANSLATE_DIV_ID = "#content"

    // Translate based on previously set cookie
	var destLang = $.cookie('destLang');
    if (destLang) {
        translateTo(destLang);
	}
	else {
		// Remove CSS class set from preload.js
		$("html").removeClass("loading");
	}

	function mark_selected(lang) {
		$("#translate img").removeClass("selected");
		$("#lang_" + lang).addClass("selected");
	}
	function translateTo(lang) {
		$(TRANSLATE_DIV_ID).translate(SOURCE_LANG, lang, {
			fromOriginal: true,
			toogle: true,
			start: function() {
                $("html").addClass("loading");
		    },
			complete: function() {
                $("html").removeClass("loading");
		    }
		});
	}
	function translate_trigger(lang) {
		translateTo(lang);
		mark_selected(lang);
		options = { path: '/' }; // Make cookie sitewide
		if (lang != SOURCE_LANG) {
			$.cookie('destLang', lang, options);
		}
		else {
			$.cookie('destLang', null, options); // Delete cookie
		}
	}

	// Generate interface for changing language
	var country_lang_map = { gb: "en", de: "de", fr: "fr", es: "es", no: "no", dk: "da", fi: "fi", se: "sv" };
	$(ATTACH_CONTROLS_ID).prepend("<div id=\"translate\"></div>");
	$.each(country_lang_map, function(country, lang) {
		$("#translate").append(
			"<img src=\"" + MEDIA_URL + "img/" + country + ".png\" id=\"lang_" + lang + "\"" +
			" alt=\"" + lang + "\" height=\"24\" width=\"24\">");
		$("#lang_" + lang).click(function() {
			translate_trigger(lang, this);
		})
	})
	$("#translate").append("<p>Note: " +
		"<a href=\"http://www.google.com/intl/en/help/faq_translation.html\">" +
		"Automatic translation</a> via Google Translate.</p>");
	mark_selected(destLang ? destLang : SOURCE_LANG);
})
