var languages = new Array();
languages["ar"] = "es";
languages["au"] = "en";
languages["br"] = "pt-BR";
languages["ca"] = "en";
languages["cn"] = "zh-CN";
languages["fr"] = "fr";
languages["de"] = "de";
languages["gr"] = "el";
languages["hk"] = "zh-TW";
languages["in"] = "hi";
languages["id"] = "id";
languages["it"] = "it";
languages["jp"] = "ja";
languages["kr"] = "ko";
languages["mx"] = "es";
languages["nl"] = "en";
languages["es"] = "es";
languages["se"] = "sv";
languages["tw"] = "zh-TW";
languages["gb"] = "en";
languages["us"] = "en";


$().ready(function() {
	registerCountrySelectorEvents();
	selectCurrentCountry();
});

function registerCountrySelectorEvents() {
	// register events for each country
	$('ul.countryList li').map(registerCountryEvents);
	
	// register events when the country arrow is clicked
	$('div#countrySelectorContainer').hover(showSelector, hideSelector);	
}

function registerCountryEvents() {

	// set country flag
	var country = $(this).attr("id");	
	$(this).css("background-image", "url(/images/flags/flag_" + country + ".gif)");
	
	// register behavior when mouse over and out
	$(this).hover(function(){
		// when over, set 'over' class
		$(this).addClass('over');
	}, function(){
		// when out, remove 'over' class
		$(this).removeClass('over');
	});
	
	// register event when clicked
	$(this).click(countryClicked);	
}

function selectCurrentCountry() {	
	var myCountry = $("input#myCountry").val();	
	changeCountry(myCountry);
}

function countryClicked() {
	var country = $(this).attr("id");	
	changeCountry(country);

	// set the cookie
	var options = { path: '/', expires: 1000 };
	$.cookie("mystart-country", country, options);		

	// update the cx
	updatecx();
	
	// reload the page if not the homepage
	if ($("body#home").length == 0) {
		$("button#searchbtn").click();
	}	
}

function changeCountry(country) {	
	// change the value of the hidden country value
	$("input[name='lz']").val(country);
	
	// set the new selected country to 'selected'
	$('ul.countryList li').removeClass("selected");
	$('ul.countryList li#' + country).addClass("selected");
	
	// change the flag image
	$('img#selectedCountry').attr("src", "/images/flags/flag_" + country + ".gif");
		
	// change the language according to the selected country
	var lang = languages[country];
	$("input[name='hl']").val(lang);
}

function showSelector(event) {
	$("div#countrySelector").show();
}

function hideSelector(event) {
	$("div#countrySelector").hide();
}

function updatecx() {
	var partner = $("input[name='pr']").val();
	var country = $("ul.countryList li.selected").attr("id");
	
	$.get("/getcx.php", {pr: partner, country: country}, function(data) {
		data = data.replace(/^\s+|\s+$/g,""); // remove non-alpha characters
		$("input[name='cx']").val(data);
	});
}
