

// <script>

var languages = new Array();
languages['af'] = new Array('Afrikaans', 'Afrikaans');
languages['sq'] = new Array('Albanian', 'Shqipe');
languages['ar'] = new Array('Arabic', '&#1593;&#1585;&#1576;&#1610;');
languages['be'] = new Array('Belarusian', '&#1041;&#1077;&#1083;&#1072;&#1088;&#1091;&#1089;&#1082;&#1072;&#1103;');
languages['bg'] = new Array('Bulgarian', '&#x0411;&#x044A;&#x043B;&#x0433;&#x0430;&#x0440;&#x0441;&#x043A;&#x0438;');
languages['ca'] = new Array('Catalan', 'Catal&#x00E0;');
languages['zh-CN'] = new Array('Chinese (Simplified)', '&#x4E2D;&#x6587;&#xFF08;&#x7B80;&#x4F53;&#xFF09;');
languages['zh-TW'] = new Array('Chinese (Traditional)', '&#x4E2D;&#x6587;&#xFF08;&#x7E41;&#x9AD4;&#xFF09;');
languages['hr'] = new Array('Croatian', 'Hrvatski');
languages['cs'] = new Array('Czech', '&#x010C;e&#x0161;tina');
languages['da'] = new Array('Danish', 'Dansk');
languages['nl'] = new Array('Dutch', 'Nederlands');
languages['en'] = new Array('English', 'English');
languages['et'] = new Array('Estonian', 'Eesti');
languages['tl'] = new Array('Filipino', 'Filipino');
languages['fi'] = new Array('Finnish', 'Suomi');
languages['fr'] = new Array('French', 'Fran&#x00E7;ais');
languages['gl'] = new Array('Galician', 'Galego');
languages['de'] = new Array('German', 'Deutsch');
languages['el'] = new Array('Greek', '&#x0395;&#x03BB;&#x03BB;&#x03B7;&#x03BD;&#x03B9;&#x03BA;&#x03AC;');
languages['iw'] = new Array('Hebrew', '&#x05E2;&#x05D1;&#x05E8;&#x05D9;&#x05EA;');
languages['hi'] = new Array('Hindi', '&#x0939;&#x093F;&#x0928;&#x094D;&#x0926;&#x0940;');
languages['hu'] = new Array('Hungarian', 'Magyar');
languages['is'] = new Array('Icelandic', '&#205;slenska');
languages['id'] = new Array('Indonesian', 'Bahasa Indonesia');
languages['ga'] = new Array('Irish', 'Gaeilge');
languages['it'] = new Array('Italian', 'Italiano');
languages['ja'] = new Array('Japanese', '&#x65E5;&#x672C;&#x8A9E;');
languages['ko'] = new Array('Korean', '&#xD55C;&#xAD6D;&#xC5B4;');
languages['lv'] = new Array('Latvian', 'Latvie&#x0161;u');
languages['lt'] = new Array('Lithuanian', 'Lietuvi&#x0173;');
languages['mk'] = new Array('Macedonian', '&#1052;&#1072;&#1082;&#1077;&#1076;&#1086;&#1085;&#1089;&#1082;&#1080;');
languages['ms'] = new Array('Malay', 'Bahasa Melayu');
languages['mt'] = new Array('Maltese', 'Malti');
languages['no'] = new Array('Norwegian', 'Norsk');
languages['fa'] = new Array('Persian', '&#1601;&#1575;&#1585;&#1587;&#1740;');
languages['pl'] = new Array('Polish', 'Polski');
languages['pt'] = new Array('Portuguese', 'Portugu&#x00EA;s');
languages['ro'] = new Array('Romanian', 'Rom&#x00E2;n');
languages['ru'] = new Array('Russian', '&#x0420;&#x0443;&#x0441;&#x0441;&#x043A;&#x0438;&#x0439;');
languages['sr'] = new Array('Serbian', '&#x0421;&#x0440;&#x043F;&#x0441;&#x043A;&#x0438;');
languages['sk'] = new Array('Slovak', 'Slovensk&#x00FD;');
languages['sl'] = new Array('Slovenian', 'Slovenski');
languages['es'] = new Array('Spanish', 'Espa&#x00F1;ol');
languages['sw'] = new Array('Swahili', 'Kiswahili');
languages['sv'] = new Array('Swedish', 'Svenska');
languages['th'] = new Array('Thai', '&#x0E44;&#x0E17;&#x0E22;');
languages['tr'] = new Array('Turkish', 'T&#x00FC;rk&#x00E7;e');
languages['uk'] = new Array('Ukrainian', '&#x0423;&#x043A;&#x0440;&#x0430;&#x0457;&#x043D;&#x0441;&#x044C;&#x043A;&#x0430;');
languages['vi'] = new Array('Vietnamese', 'Ti&#x1EBF;ng Vi&#x1EC7;t');
languages['cy'] = new Array('Welsh', 'Cymraeg');
languages['yi'] = new Array('Yiddish', '&#1497;&#1497;&#1460;&#1491;&#1497;&#1513;');

var translate_script_loaded = true;
var language_current = "en"; var language_selected = get_cookie("language"); var language_replace = "en"; var language_refresh = "GET";
var language_refreshed = get_cookie("language_refreshed"); 
if(language_replace != ""){
	language_selected = language_replace;
	set_language_cookie();
}

var translate_processing_num = 0;
var translate_processing_array = new Array;

delete_cookie("language_refreshed");

function google_translate_phrase(text, language_from, language_to, element, element_container){
	if(text == null || text == undefined || text == ""){return false;} 	if(!loaded_google_language){ 		LoadGoogleLanguage( function(){ google_translate_phrase(text, language_from, language_to, element, element_container); } );
		return true;
	}
	if(element_container == null || element_container == ""){element_container = "innerHTML";} 		if(language_from == "en" && !element.translateOrigText){
		element.translateOrigText = text;
	}
		if(language_to == "en"){
        if(element.translateOrigText == null || element.translateOrigText == undefined){return false;}
		eval('element.'+element_container+' = element.translateOrigText;');
			}
		else{
				if(language_from != "en"){
            if(element.translateOrigText == null || element.translateOrigText == undefined){return false;}
			language_from = "en";
			text = element.translateOrigText;
		}
				if(text.length <= 1500){
						var processing_i = translate_processing("+", null, element); 			eval( 				'google.language.translate(text, language_from, language_to, '+
					'function(result){'+ 						'if(result.error){'+ 																		'}'+
						'else{'+ 							'msg = FixEntities(result.translation);'+
							'element.'+element_container+' = msg;'+ 													'}'+
						'translate_processing("-", processing_i, null);'+ 					'}'+
				');'
			);
		}
				else{
			            if(element.translateOrigText == null || element.translateOrigText == undefined){return false;}
			eval('element.'+element_container+' = element.translateOrigText;');
								}
	}
}


function google_translate_all(language_to, specific_only){
	alert("t");
	if(language_current == language_to){return true;} 	if(!loaded_google_language){ 		LoadGoogleLanguage( function(){ google_translate_all(language_to, specific_only); } );
		return true;
	}
			        var elements = new Array();
		elements[0] = new Array("buttons", document.getElementsByTagName("input"), "value");
        if(!specific_only){ 			elements[1] = new Array("h1", document.getElementsByTagName("h1"), "innerHTML");
			elements[2] = new Array("h2", document.getElementsByTagName("h2"), "innerHTML");
			elements[3] = new Array("h3", document.getElementsByTagName("h3"), "innerHTML");
			elements[3] = new Array("h4", document.getElementsByTagName("h4"), "innerHTML");
			elements[4] = new Array("p", document.getElementsByTagName("p"), "innerHTML");
			elements[5] = new Array("li", document.getElementsByTagName("li"), "innerHTML");
		}
		elements[6] = new Array("atranslate", getElementsByClass("atranslate"), "innerHTML");
        elements[7] = new Array("atranslate2", getElementsByClass("atranslate2"), "innerHTML");
        
		        for(i in elements){
        	if(i != parseInt(i)){ continue; }         	var element_type = elements[i]; 			for(var j=0; j<element_type[1].length; j++){             	var element = element_type[1][j]; 				if(element_type[0] == "buttons" && (element.type == null || (element.type != "button" && element.type != "submit"))){continue;} 				                var parent_translated = false;
                var element_check = element;
                while(element_check != null && element_check != window && element_check != document){                     if(element_check.parentNode != null && element_check.parentNode != undefined){
	                    element_check = element_check.parentNode;
                    }
                    else{                     	element_check = null;
	                    parent_translated = true;
                        break;
                    }
                	                }
                if(parent_translated == true){continue;}                 				eval("if(element."+element_type[2]+" != null && element."+element_type[2]+" != undefined){ google_translate_phrase(element."+element_type[2]+", language_current, language_to, element, element_type[2]); }"); 			}
		}
		language_current = language_to; 	}


function update_language(language){
	var language_text = languages[language][0];
	if(language != "en"){
		language_text += " ("+languages[language][1]+")";
	}
	if(document.getElementById('div_language_current') != null){
		document.getElementById('div_language_current').innerHTML = language_text;
	}
}


function change_language(language, language_text, start){
	if(language == ""){return false;} 	document.getElementById('div_notespopup_999').style.visibility = 'hidden'; 	if(language_current == language){return true;} 	
		update_language(language);
		language_selected = language;
	set_language_cookie();
	
		if(start != null && start != undefined && start == true){
		google_translate_all(language);
			}
}

function refresh_language(language, url){
			set_cookie("language_refreshed", "1");
				if(language_refresh == 'POST'){
			document.form_translate_repost.language.value = language;
			document.form_translate_repost.submit();
					}
				else{
			var orig_url = location.href;
			if(url != null && url != undefined && url != ""){
				orig_url = url;
			}
			var new_location = "";
			var url_query = orig_url.split('?');
			new_location += url_query[0]; 			var new_query = "";
			if(url_query[1] != null && url_query[1] != ""){
				new_query += "?";
				var url_query2 = url_query[1].split('language=');
				if(url_query2[1] != null && url_query2[1] != ""){
					new_query += url_query2[0];
					var url_query3 = url_query2[1].split('&');
	
					if(url_query3[1] != null && url_query3[1] != ""){
						new_query += url_query3[1];
					}
				}
				else{
					new_query += url_query[1];
				}
								if(new_query.length > 1 && new_query.substring(new_query.length-1, new_query.length) == "&"){
					new_query = new_query.substring(0, new_query.length-1);
				}
			}
			if(new_query.length > 1){
				new_location += new_query
			}
						window.location.href = new_location;
					}
	}


function translate_processing(action, i, element){
	if(i == null){
		i = translate_processing_array.length;
	}
	
	if(action == "-"){
		translate_processing_num--;
		translate_processing_array[i][0] = 'Completed';
	}
	else{
		translate_processing_num++;
		translate_processing_array[i] = new Array('Translating', element);
	}
	
	if(translate_processing_num > 0){
		display = "inline";
	}
	else{
		display = "none";
	}
	
	if(document.getElementById('div_processing_google_translate') != null){
		document.getElementById('div_processing_google_translate').style.display = display;
	}
	
	return i;
}


function LoadGoogleJsapi(callback){
	if(!script_google_jsapi){
		url = "https://www.google.com/jsapi";
		if(callback){
			url += "?callback=LoadGoogleJsapiCallback";
		}
		script_google_jsapi = LoadJs(url);
	} else {
		LoadGoogleJsapiCallback();
	}
	return script_google_jsapi;
}
script_google_jsapi = false;


function LoadGoogleJsapiCallback(){
	if(load_google_jsapi_callback){
		load_google_jsapi_callback();
		load_google_jsapi_callback = false;
	}
}
load_google_jsapi_callback = false;


function LoadGoogleLanguage(callback){
	if(!loaded_google_language){
		loaded_google_language = true;
		google_language_callback = function(){ if(callback){callback();}  };
		load_google_jsapi_callback = function(){ google.load("language", "1", {callback: google_language_callback}); };
		LoadGoogleJsapi(true);
	}
}
loaded_google_language = false;


function getElementsByClass(searchClass, node, tag){
	if(node == null){node = document;}
	if(tag == null){tag = '*';}
	var classElements = new Array();
	var els = node.getElementsByTagName(tag);
	var elsLen = els.length;
	var pattern = new RegExp("(^|\\s)"+searchClass+"(\\s|$)");
	for(i=0, j=0; i<elsLen; i++){
		if(pattern.test(els[i].className)){
			classElements[j] = els[i];
			j++;
		}
	}
	return classElements;
}


function get_cookie(name){
	if(document.cookie.length < 1){return false;}
	start = document.cookie.indexOf(name + "=");
	if(start == -1){return false;}
	start = start + name.length + 1;
	end = document.cookie.indexOf(";", start);
	if(end == -1){end = document.cookie.length;}
	return unescape(document.cookie.substring(start, end));
}


function set_cookie(name, value, expires){
	document.cookie = name+"="+value+((expires) ? ";expires="+expires : "")+";path=/;domain=.carboncopypro.com";
}


function delete_cookie(name){
	if(get_cookie(name)){
		set_cookie(name, "", "Thu, 01-Jan-1970 00:00:01 GMT");
	}
}

function set_language_cookie(){
	set_cookie("language", language_selected);
}



