UpdatePageOnLanguage();

function UpdatePageOnLanguage()
{
	var language = Get_Cookie("language");
	
	if (language==null || language=="")
	{
		if (navigator.browserLanguage)
			language = navigator.browserLanguage;
		else
			language = navigator.language;
	}
	
	var languageExt = GetPageLanguage(document.URL);

	if (language.indexOf('fr') > -1)
	{
		ChangeLanguage(languageExt, 'fr');
	}
	else if (language.indexOf('es') > -1)
	{
		ChangeLanguage(languageExt, 'es');
	}
	else if (language.indexOf('it') > -1)
	{
		ChangeLanguage(languageExt, 'it');
	}
	else if (language.indexOf('de') > -1)
	{
		ChangeLanguage(languageExt, 'de');
	}
	else if (language.indexOf('zh') > -1)
	{
		ChangeLanguage(languageExt, 'zh');
	}
	else if (language.indexOf('tr') > -1)
	{
		ChangeLanguage(languageExt, 'tr');
	}
	else if (language.indexOf('ka') > -1)
	{
		ChangeLanguage(languageExt, 'ka');
	}
	else if (language.indexOf('tw') > -1)
	{
		ChangeLanguage(languageExt, 'tw');
	}
	else if (language.indexOf('ru') > -1)
	{
		ChangeLanguage(languageExt, 'ru');
	}
	else
	{
		ChangeLanguage(languageExt, 'en');
	}
}

function Set_Cookie(c_name, value)
{
	document.cookie=c_name+ "=" +escape(value) + "; expires=" + new Date( new Date().getTime()+86400000*30).toGMTString();
}

function Get_Cookie(name)
{
	var nameEQ = name + "=";
	var ca = document.cookie.split(';');
	for(var i=0;i < ca.length;i++) 
	{
		var c = ca[i];
		while (c.charAt(0)==' ') 
			c = c.substring(1,c.length);
		if (c.indexOf(nameEQ) == 0) 
			return unescape(c.substring(nameEQ.length,c.length));
	}
	return null;
}

function deleteCookie(name) {
	setCookie(name,"",-1);
}

function ForceEnglishVersion()
{
	Set_Cookie('language', 'en');
	UpdatePageOnLanguage();
}

function ForceFrenchVersion()
{
	Set_Cookie('language', 'fr');
	UpdatePageOnLanguage();
}

function ForceSpanishVersion()
{
	Set_Cookie('language', 'es');
	UpdatePageOnLanguage();
}

function ForceItalianVersion()
{
	Set_Cookie('language', 'it');
	UpdatePageOnLanguage();
}

function ForceGermanVersion()
{
	Set_Cookie('language', 'de');
	UpdatePageOnLanguage();
}

function ForceChineeseVersion()
{
	Set_Cookie('language', 'zh');
	UpdatePageOnLanguage();
}

function ForceTaiwanVersion()
{
	Set_Cookie('language', 'tw');
	UpdatePageOnLanguage();
}

function ForceTurkishVersion()
{
	Set_Cookie('language', 'tr');
	UpdatePageOnLanguage();
}

function ForceGeorgianVersion()
{
	Set_Cookie('language', 'ka');
	UpdatePageOnLanguage();
}

function ForceRussianVersion()
{
	Set_Cookie('language', 'ru');
	UpdatePageOnLanguage();
}

function GetPageLanguage(address)
{
	// Divid an address
	// For instance : "http://www.screenpresso.com/index-fr.html"
	// [0] => "http://www.screenpresso.com/index"
	// [1] => "fr"
	// [2] => ".html"
	var reg = new RegExp("^(.+)\\-(..)(\\.html|\\.aspx|\\.html\\?.+|\\.aspx\\?.+)$");
	var matches = reg.exec(address);
	if (matches && matches.length > 3)
	{
		return [matches[1], matches[2], matches[3]];
	}
	else 
	{
		// Divid an address
		// For instance : "http://www.screenpresso.com/index.html"
		// [0] => "http://www.screenpresso.com/index"
		// [1] => ""
		// [2] => ".html"
		var reg2 = new RegExp("^(.+)(\\.html|\\.aspx|\\.html\\?.+|\\.aspx\\?.+)$");
		var matches2 = reg2.exec(address);
		if (matches2 && matches2.length > 2)
		{
			return [matches2[1], "", matches2[2]];
		}
		else
		{
			return null;
		}
	}
}

function ChangeLanguage(languageExt, language)
{
	if (languageExt)
	{
		if (language == "en")
		{
			if (languageExt[1] != "")
				document.location.href = languageExt[0] + languageExt[2];
		}
		else if (languageExt[1] != language)
		{
			// Exception for tr
			if (language == "tr" && languageExt[2] == "aspx")
			{
				document.location.href = languageExt[0] + languageExt[2];
			}
			else
			{
				document.location.href = languageExt[0] + "-" + language + languageExt[2];
			}
		}
	}
	else if (language != "en")
	{
		if (document.URL.lastIndexOf("/store") > -1)
			document.location.href += "default-" + language + ".aspx";
		else 
			document.location.href += "index-" + language + ".html";		
	}
}
