//2007/03/16 pmackie@transunion.com
//triggered by blank page not found page, will redirect to proper lang page:
(window.attachEvent) ? window.attachEvent('onload', pageNotFound) : window.addEventListener('load', pageNotFound, false);

//redirect to appropriate lang not found page:
//1st search for TULang cookie, then path, then OS lang
function pageNotFound() {
  var sLang=getCookie("TULang");
  if(sLang=='')sLang=getLang(document.referrer);
  if(sLang=='') {
    sLang = navigator.language || navigator.browserLanguage;
    sLang = sLang.substr(0,2);
  }
  //if blank or different than "en" or "fr" set to default to "en"
  if(sLang=='' || (sLang!='en' && sLang!='fr') )sLang="en";
  var sURL = "/ca/error/pagenotfound_"+sLang+".page";
  document.location.replace(sURL);
} //pageNotFound()

//extract lang from path, for example: blah_fr.page will return "fr"
//return undefined if not found
function getLang(sPath) {
  var sNoSuffix=sPath.substr(0,sPath.lastIndexOf('.'));
  return sNoSuffix.indexOf('_')!=-1?sNoSuffix.substr(sNoSuffix.lastIndexOf('_')+1):undefined;
} //getLang()

function getCookie(sName) {
  var sRE = "(?:; )?" + sName + "=([^;]*);?";
  var oRE = new RegExp(sRE);
  return (oRE.test(document.cookie)) ? decodeURIComponent(RegExp["$1"]) : null;
} //getCookie()

