// frame buster for content pages

function frameBuster(){
	if(window == top){
		var pattern_content = /^\/(tips|content)\//i;
		var theUrl = top.location.pathname.toLowerCase();
		if(pattern_content.test(theUrl)){
			var pattern_lang = /^\/content\/[a-z]{2}\/(bde|ben|bfr|bnl|lde|len|lfr)/i;
			var result = theUrl.match(pattern_lang);
			var redirect = "/home_fs.cfm?"
			if(result != null){
				redirect += "lang=" + result[1].toUpperCase() + "&";
			}
			redirect += "contentpage=" + escape(top.location.href);
			top.location.replace(redirect);
		}
	}
}
frameBuster();


// SwapImage
var SwapImage = new Object();
var selectedImg = "";

// Preload images into browsercache
function preload(referName,fileName) {
   	var key = referName.toLowerCase();
	var folder = '/images/nav_images/';
	var pattern = /^de_(cvcontact|personal|edutraining|work|language|knowledge)_de$/i
	if (pattern.test(key)){
		folder = '/images/cv_images/';
	}
	SwapImage[key] = new Object();
	SwapImage[key].off = new Image();
	SwapImage[key].off.src = folder + fileName + '.gif';
	SwapImage[key].on = new Image();
	SwapImage[key].on.src = folder + fileName + '_on.gif';
	SwapImage[key].filename = fileName;
}

// Highlight the Over Image
function over(referName){
   	var key = referName.toLowerCase();
	if(SwapImage[key]){
		for (var i = 0; i < document.images.length; i++){
			if(document.images[i].name.toLowerCase()==key){
				document.images[i].src = SwapImage[key].on.src;
			}
		}
	}
}

function overCVInsert(referName){
			if (referName == de_cvcontact_de)
			{
			document.de_cvcontact_de.src = "/images/cv_images/de_cvcontact_de_on.gif";
			}

			if (referName == de_personal_de)
			{
			document.de_personal_de.src = "/images/cv_images/de_personal_de_on.gif";
			}

			if (referName == de_edutraining_de)
			{
			document.de_edutraining_de.src = "/images/cv_images/de_edutraining_de_on.gif";
			}

			if (referName == de_work_de)
			{
			document.de_work_de.src = "/images/cv_images/de_work_de_on.gif";
			}

			if (referName == de_language_de)
			{
			document.de_language_de.src = "/images/cv_images/de_language_de_on.gif";
			}

			if (referName == de_knowledge_de)
			{
			document.de_knowledge_de.src = "/images/cv_images/de_knowledge_de_on.gif";
			}

	}


// Reset the Highlight Image, maybe the forgotten ones...;-)...
function out(referName){
	if(referName){
		var key = referName.toLowerCase();
		if(SwapImage[key] && key != selectedImg){
			for (var i = 0; i < document.images.length; i++){
				if(document.images[i].name.toLowerCase()==key){
					document.images[i].src = SwapImage[key].off.src;
				}
			}
		}
	}
	else invert();
}

	
function invert(referName){
	var newSrc,key;
	if(!referName) key = "";
	else{
		key = referName.toLowerCase();
		selectedImg = key;
	} 
	for (var i = 0; i < document.images.length; i++){
		if(key!="" && SwapImage[key] && document.images[i].name.toLowerCase()==key){
			document.images[i].src = SwapImage[key].on.src;
		}
		else if(document.images[i].name != '' && document.images[i].name != 'De2' && document.images[i].name != 'Fr2' && document.images[i].name != 'Nl2' && document.images[i].name != 'En2' && document.images[i].name.toLowerCase() != selectedImg){
			newSrc = document.images[i].src.replace(/_on\.gif$/i,".gif");
			document.images[i].src = newSrc;
		}
	}
}

function navFrame(){
	var obj = null;
	if(parent.left) obj = parent.left;
	else if(top.maincontent.left) obj = top.maincontent.left;
	return obj;
}

function waitFor(waitForImageName)
{
	var nav = navFrame();
	if(nav && typeof nav.invert == "function")
		nav.invert(waitForImageName);
}

function highlightLeftNavigation(leftNavFileName, hightLightImageName){
	waitForImageName = hightLightImageName;
	var nav = navFrame();
	if(leftNavFileName =='test'){
		waitFor(waitForImageName);
	}
	else if(nav) {
		var fullFileName = window.location.protocol + "//" + window.location.host + leftNavFileName;
		if (nav.location.href.toLowerCase() != fullFileName.toLowerCase()){
			nav.location.replace(fullFileName);
			window.setTimeout('waitFor(waitForImageName)',5000);
		}
		else{
			window.setTimeout('waitFor(waitForImageName)',1500);
		}
	}
}



function highlightLeftNavigationSSL( leftNavFileName, hightLightImageName){
	highlightLeftNavigation(leftNavFileName, hightLightImageName)
}

//Check for ClickImg first
function highlightTopNavigation(image,place,theWindow)
{
	
	//alert('Started!');
	
	// check for the window
	if(typeof(theWindow) == 'undefined'){
		var theWindow = parent.parent.frames['navigation'];
	}
	
	// check for function ClickImg in the window
	if(theWindow){
		if(typeof(theWindow.ClickImg) == 'function'){
			theWindow.ClickImg(image,place);
		}
	}
}


var req = window.location.search.substr(1,window.location.search.length);

// Récupération des paires paramètre=valeur
var dbl = req.split('&');

var aPrm = new Array();    // Pour stock. le nom des paramètres
var aVal = new Array();    // Pour stock. la valeur des paramètres
var objQS = new Object();  // Objet pour stock. le nom des paramètres

for (i=0;i < dbl.length;i++) {
  // Recup. le nom des parametres (Attention : elem.1 du tab. = param.1)
  aPrm[i+1] = dbl[i].substring(0,dbl[i].indexOf('='));
  
  // Recup. la valeur des parametres (Attention : elem.1 du tab. = val.param.1)
  aVal[i+1] = unescape(dbl[i].substring(dbl[i].indexOf('=')+1,dbl[i].length));
  
  // Stock la valeur des paramètres sous forme de propriété
  objQS[aPrm[i+1]] = aVal[i+1];
}

// Renvoie la valeur d'un parametre par son nom
function getQueryStringByName(pname) 
{
  return eval("objQS." + pname);
}

// Renvoie la valeur d'un paramètre par sa position dans la requete
// Attention : le premier paramètre de la requete est le 1 etc..
function getQueryStringByPos(ppos)
{
  return aVal[ppos];
}

// Renvoie le nom d'un paramètre par sa position dans la requete
// Attention : le premier paramètre de la requete est le 1 etc..
function getParamNameByPos(ppos)
{
  return aPrm[ppos];
}
