// Initialize version 1.0 of Google AJAX API
google.load("language", "1");
// Google Language API accepts 5000 characters per request, this makes sure the html doesn't get chopped 
var words = 1000;
var mainIndex=0;
var mainLen=0;
var mainLastPart=false;
var mainTranslated="";
var mainText=""
var mainDone=false;
var col3Index=0;
var col3Len=0;
var col3LastPart=false;
var col3Translated="";
var col3Text=""
var col3Done=false;
var navIndex=0;
var navLen=0;
var navLastPart=false;
var navTranslated="";
var navText=""
var navDone=false;
var sourceTextLang = "en";
var lang="";
var translationInProgress='<table cellspacing="0" cellpadding="0" border="0" width="100%"><tr><Td><img src="../../includes/site_images/spacers/spacer.gif" width="20" alt="" border="0"></td><td><br><br><br><br><b>Translation in Progress</b></td></tr></table>';
var translationCookie = 'weareny_language_preference'; // This is the name of the cookie that is used.

var translationText=new Array();
translationText[translationText.length]=["ar","&#1575;&#1604;&#1578;&#1585;&#1580;&#1605;&#1577; &#1601;&#1610; &#1575;&#1604;&#1578;&#1602;&#1583;&#1605;"];
translationText[translationText.length]=["bg","&#1055;&#1088;&#1077;&#1074;&#1086;&#1076;&#1080; &#1074; &#1087;&#1088;&#1086;&#1094;&#1077;&#1089; &#1085;&#1072;"];
translationText[translationText.length]=["ca","Traducci&#243; en curs"];
translationText[translationText.length]=["zh-CN","&#32763;&#35793;&#20013;&#30340;&#36827;&#23637;"];
translationText[translationText.length]=["zh-TW","&#32763;&#35695;&#20013;&#30340;&#36914;&#23637;"];
translationText[translationText.length]=["hr","Prijevodi u tijeku"];
translationText[translationText.length]=["cs","P&#345;eklad v pokrok"];
translationText[translationText.length]=["da","Overs&#230;ttelse i gang"];
translationText[translationText.length]=["nl","Vertaling in progress"];
translationText[translationText.length]=["tl","Pagsasalin sa progreso"];
translationText[translationText.length]=["fi","K&#228;&#228;nt&#228;minen k&#228;ynniss&#228;"];
translationText[translationText.length]=["fr","Traduction en cours"];
translationText[translationText.length]=["de","&#220;bersetzung in progress"];
translationText[translationText.length]=["el","&#924;&#949;&#964;&#940;&#966;&#961;&#945;&#963;&#951; &#963;&#949; &#949;&#958;&#941;&#955;&#953;&#958;&#951;"];
translationText[translationText.length]=["iw","&#1489;&#1514;&#1492;&#1500;&#1497;&#1498; &#1514;&#1512;&#1490;&#1493;&#1501;"];
translationText[translationText.length]=["hi","&#2346;&#2381;&#2352;&#2327;&#2340;&#2367; &#2350;&#2375;&#2306; &#2309;&#2344;&#2369;&#2357;&#2366;&#2342;"];
translationText[translationText.length]=["id","Terjemahan dalam kemajuan"];
translationText[translationText.length]=["it","Traduzione in corso"];
translationText[translationText.length]=["ja","&#36914;&#34892;&#20013;&#12398;&#32763;&#35379;"];
translationText[translationText.length]=["ko","&#51652;&#54665;&#51473;&#51064; &#48264;&#50669;"];
translationText[translationText.length]=["lv","Tulko&#353;anas darbi"];
translationText[translationText.length]=["lt","Vertimo darbai"];
translationText[translationText.length]=["no","Oversettelse p&#229;g&#229;r"];
translationText[translationText.length]=["pl","T&#322;umaczenie w toku"];
translationText[translationText.length]=["pt","Tradu&#231;&#227;o em andamento"];
translationText[translationText.length]=["ro","Traducere &#238;n curs de"];
translationText[translationText.length]=["ru","&#1055;&#1077;&#1088;&#1077;&#1074;&#1086;&#1076; &#1074; &#1087;&#1088;&#1086;&#1075;&#1088;&#1077;&#1089;&#1089;"];
translationText[translationText.length]=["sr","&#1050;&#1083;&#1091;&#1073; &#1112;&#1077; &#1091; &#1090;&#1086;&#1082;&#1091;"];
translationText[translationText.length]=["sk","Preklad v pokrok"];
translationText[translationText.length]=["sl","Prevajanje je v teku"];
translationText[translationText.length]=["es","Traducci&#243;n en progreso"];
translationText[translationText.length]=["sv","&#214;vers&#228;ttning p&#229;g&#229;r"];
translationText[translationText.length]=["uk","&#1055;&#1077;&#1088;&#1077;&#1082;&#1083;&#1072;&#1076; &#1074; &#1087;&#1088;&#1086;&#1075;&#1088;&#1077;&#1089;"];
translationText[translationText.length]=["vi","Ng&#432;&#7901;i d&#7883;ch"];

function translatePage() {
	lang = GetCookie(translationCookie);
	if (lang == null) {
		lang = sourceTextLang;
	}
	if (lang != sourceTextLang){
		mainIndex=0;
		mainLastPart=false;
		mainText = document.getElementById("main_content").innerHTML;
		mainText=mainText.replace(/((\s+(?=<[^<]+?>))|(\s\s))/gi,' ');
		document.getElementById("english_button").style.display='';
		document.getElementById("translate_button").style.display = 'none';
		document.getElementById("progress_text").innerHTML=getTranslationText(lang);
		showProgressPopup();
		document.getElementById("main_content").innerHTML="";
		mainLen = mainText.length;
		mainTranslated="";
		if(mainLen>0){
			if(mainIndex+words<mainLen){
				var endTag=mainText.indexOf(">",mainIndex+words);
				var sectionMainLength=(endTag-mainIndex)+1;
				var toTranslate=mainText.substr(mainIndex,sectionMainLength);
				google.language.translate (toTranslate, sourceTextLang, lang, translateMain);
				mainIndex=endTag+1;
			}else{
				mainLastPart=true;
				var toTranslate=mainText.substr(mainIndex);
				google.language.translate (toTranslate, sourceTextLang, lang, translateMain);
				mainIndex=mainLen;
			}
		}
		navIndex=0;
		navLastPart=false;
		navText = document.getElementById("nav_content").innerHTML;
		navText=navText.replace(/((\s+(?=<[^<]+?>))|(\s\s))/gi,' ');
		document.getElementById("nav_content").innerHTML="";
		navLen = navText.length;
		navTranslated="";
		if(navLen>0){
			if(navIndex+words<navLen){
				var endTag=navText.indexOf(">",navIndex+words);
				var sectionNavLength=(endTag-navIndex)+1;
				var toTranslate=navText.substr(navIndex,sectionNavLength);
				google.language.translate (toTranslate, sourceTextLang, lang, translateNav);
				navIndex=endTag+1;
			}else{
				navLastPart=true;
				var toTranslate=navText.substr(navIndex);
				google.language.translate (toTranslate, sourceTextLang, lang, translateNav);
				navIndex=navLen;
			}
		}
		if(document.getElementById("col3_content")){
			col3Index=0;
			col3LastPart=false;
			col3Text = document.getElementById("col3_content").innerHTML;
			col3Text=col3Text.replace(/((\s+(?=<[^<]+?>))|(\s\s))/gi,' ');
			document.getElementById("col3_content").innerHTML="";
			col3Len = col3Text.length;
			col3Translated="";
			if(col3Len>0){
				if(col3Index+words<col3Len){
					var endTag=col3Text.indexOf(">",col3Index+words);
					var sectionCol3Length=(endTag-col3Index)+1;
					var toTranslate=col3Text.substr(col3Index,sectionCol3Length);
					google.language.translate (toTranslate, sourceTextLang, lang, translateCol3);
					col3Index=endTag+1;
				}else{
					col3LastPart=true;
					var toTranslate=col3Text.substr(col3Index);
					google.language.translate (toTranslate, sourceTextLang, lang, translateCol3);
					col3Index=col3Len;
				}
			}
		}else{
			col3Done=true;
		}
	}
}

function getTranslationText(theLanguage){
	for(var i=0;i<translationText.length;i++){
		if(theLanguage==translationText[i][0]){
			return(translationText[i][1]);
		}
	}
}

function setLanguage(theLanguage){
	if(theLanguage.length>0){
		SetCookie(translationCookie,theLanguage);
		doRefresh();
	}
}

function checkDone(){
	if(col3Done&&mainDone&&navDone){
		hideProgressPopup();
		document.getElementById("main_content").innerHTML=mainTranslated;
		document.getElementById("nav_content").innerHTML=navTranslated;
		if(document.getElementById("col3_content")){
			document.getElementById("col3_content").innerHTML=col3Translated;
		}
		document.getElementById("image_nav").style.display="none";
		document.getElementById("nav_content").style.display="";
	}
}

function translateMain(result){
	mainTranslated=mainTranslated+result.translation;
	if(mainLastPart){
		mainTranslated=mainTranslated.replace(/text-align:right;direction:rtl/gi,'');
		mainDone=true;
		checkDone();
	}else{
		if(mainIndex+words<mainLen){
			var endTag=mainText.indexOf(">",mainIndex+words);
			var sectionMainLength=(endTag-mainIndex)+1;
			var toTranslate=mainText.substr(mainIndex,sectionMainLength);
			google.language.translate (toTranslate, sourceTextLang, lang, translateMain);
			mainIndex=endTag+1;
		}else{
			mainLastPart=true;
			var toTranslate=mainText.substr(mainIndex);
			google.language.translate (toTranslate, sourceTextLang, lang, translateMain);
			mainIndex=mainLen;
		}
	}
}

function translateNav(result){
	navTranslated=navTranslated+result.translation;
	if(navLastPart){
		navTranslated=navTranslated.replace(/text-align:right;direction:rtl/gi,'');
		navDone=true;
		checkDone();
	}else{
		if(navIndex+words<navLen){
			var endTag=navText.indexOf(">",navIndex+words);
			var sectionNavLength=(endTag-navIndex)+1;
			var toTranslate=navText.substr(navIndex,sectionNavLength);
			google.language.translate (toTranslate, sourceTextLang, lang, translateNav);
			navIndex=endTag+1;
		}else{
			navLastPart=true;
			var toTranslate=navText.substr(navIndex);
			google.language.translate (toTranslate, sourceTextLang, lang, translateNav);
			navIndex=navLen;
		}
	}
}

function translateCol3(result){
	col3Translated=col3Translated+result.translation;
	if(col3LastPart){
		col3Translated=col3Translated.replace(/text-align:right;direction:rtl/gi,'');
		col3Done=true;
		checkDone();
	}else{
		if(col3Index+words<col3Len){
			var endTag=col3Text.indexOf(">",col3Index+words);
			var sectionCol3Length=(endTag-col3Index)+1;
			var toTranslate=col3Text.substr(col3Index,sectionCol3Length);
			google.language.translate (toTranslate, sourceTextLang, lang, translateCol3);
			col3Index=endTag+1;
		}else{
			col3LastPart=true;
			var toTranslate=col3Text.substr(col3Index);
			google.language.translate (toTranslate, sourceTextLang, lang, translateCol3);
			col3Index=col3Len;
		}
	}
}

function showTranslate(){
	document.getElementById("shim").style.height=document.getElementById("translate_popup").offsetHeight;
	document.getElementById("shim").style.width=document.getElementById("translate_popup").offsetWidth;
	document.getElementById("translate_popup").style.top = 356;
	document.getElementById("translate_popup").style.visibility = "visible";
	document.getElementById("shim").style.top = document.getElementById("translate_popup").style.top;
	document.getElementById("shim").style.visibility = "visible";
}

function hideTranslate(){
	document.getElementById("translate_popup").style.visibility = "hidden";
	document.getElementById("shim").style.visibility = "hidden";
}

function hideProgressPopup(){
	document.getElementById("progress_popup").style.visibility = "hidden";
	document.getElementById("shim").style.visibility = "hidden";
}

function showProgressPopup(){
	document.getElementById("shim").style.height=document.getElementById("progress_popup").offsetHeight;
	document.getElementById("shim").style.width=document.getElementById("progress_popup").offsetWidth;
	document.getElementById("progress_popup").style.top = 356;
	document.getElementById("progress_popup").style.visibility = "visible";
	document.getElementById("shim").style.top = document.getElementById("progress_popup").style.top;
	document.getElementById("shim").style.visibility = "visible";
}

var temp_f=window.onload;

window.onload=function(){
	if(temp_f){
		temp_f();
	}
	translatePage();
};