//**********************************************************************
// file: 	lang.js
// author:	Claude M. Landry
// Date:	Jan 2008
//
// the orginal source can be found at:
//   http://www.rocketbusiness.com/js/lang.js
//
//**********************************************************************

//**********************************************************************
// Get the most likely prefered language of the user
//
// Returns a string containing the most likely prefered language
//**********************************************************************
function getUserLanguage() {
	var language="en";
	// IE default language for the browser
	if ( navigator.browserLanguage ) { language=navigator.browserLanguage }
	// IE browser language set by the user
	if ( navigator.userLanguage ) { language=navigator.userLanguage }
	// IE operating system language
	if ( navigator.systemLanguage ) { language=navigator.systemLanguage }
	// Netscape language sniff
	if ( navigator.language ) { language=navigator.language }
	// Turn all variants of "en-us", "en-au" etc into plain "en"
	if ( language.indexOf('-')==2 ) { language=language.substring(0,2); }
	return language;
}

//**********************************************************************
// Set the prefered language for the website
//
// value     prefered language
//
// Returns a string containing the prefered language set
//**********************************************************************
function setWSLanguage(value, duration) {
	if ( duration == null ) {
		duration = 365;	// Days
	}
	var expDate = new Date(); // now
	expDate.setTime(expDate.getTime() + (duration*24*60*60*1000)); // milliseconds

	if ( value != "en" && value != "fr" ) { value="en" }
	setCookie("WSLanguage", value, expDate, "/");
	//alert("I am setting the website prefered language to: "+value);
	return value;
}

//**********************************************************************
// Get the prefered language for the website
//
// Returns a string containing the prefered language
//**********************************************************************
function getWSLanguage() {
	var language = getCookie("WSLanguage");
	if ( language != "en" && language != "fr" ) {
		language = getUserLanguage();
		setWSLanguage(language);
	}
    //alert("I am detecting the website prefered language as: "+language);
	return language;	
}

//**********************************************************************
// Set the user's website id
//
//**********************************************************************
function setWSID() {
	var wsid = getCookie("WSID");
	// is wsid already set?
	if( wsid ) return wsid;
	
	// date.js is required
	if( !formatDate ) return null;
	var now = new Date();
	wsid = formatDate(now, "yyyyMMdd_kkmmss");
	
	var	duration = 3650;	// about 10 years
	var expDate = new Date(); // now
	expDate.setTime(expDate.getTime() + (duration*24*60*60*1000)); // milliseconds	
	setCookie("WSID", wsid, expDate, "/");

	// set the value in Google Analytics if loaded
	if( pageTracker ) {
		var value = "WSID."+wsid+".";
		pageTracker._setVar(value);
	}
	return wsid;
}

//**********************************************************************
// Redirect the browser to the root directory of the website prefered language
//
//**********************************************************************
function redirectRootWSLanguage() {
	var filename = window.location.pathname;
	if ( filename == "/index.html" || filename == "/" ) {
		var language = getWSLanguage();
		window.location.replace("/"+language+"/index.html");
	}
	return;
}


setWSID();
redirectRootWSLanguage();
