/////////// THIS MUST BE SETUP FOR JAVASCRIPT PURPOSES
var projectVersionName = "v2/";
/////////////////////////////////////////////////////


var counter;
var isDemo = false;
var currentIntervall = "0-0";
var datesModifiedByUser = false;
var followerSetupHasChanged = false;
var maxTestsReached = false;
var refactorCharts = false;
var myMenu = "accueil";
var translateResults = false; 
var needToUpdateCorrectResults = false;
var needToUpdateDeletionList = false;
var needToUpdateRegularList = false;
var needToUpdateIncorrectResults = false;
var needToReloadListPage = false;
var rootProjectUrl = location.protocol + '//' + location.host + '/' + projectVersionName;
var checkStack = new Array();
var followerName = "";
var jqueryloaded = false;
var activeFollowerId = null;

// variables to manage error window position
var IE = document.all?true:false;
if (!IE) document.captureEvents(Event.MOUSEMOVE);

//variables to manage error window position
document.onmousedown = getMouseXY;
document.onmousemove = getMouseXY;

var finalX;
var finalY;


	function getCookie(c_name) {
	 	
		if (document.cookie.length > 0){
		  	c_start=document.cookie.indexOf(c_name + "=");
		  	if (c_start!=-1){ 
		    	c_start=c_start + c_name.length+1; 
		    	c_end=document.cookie.indexOf(";",c_start);
		    	if (c_end==-1) c_end=document.cookie.length;
		    	return unescape(document.cookie.substring(c_start,c_end));
		    } 
		}
		return "";
		 
	}
	
		
	function addJavascript(jsname,pos) {
		var th = document.getElementsByTagName(pos)[0];
		var s = document.createElement('script');
		s.setAttribute('type','text/javascript');
		s.setAttribute('src',jsname);
		th.appendChild(s);
	} 
		
	
	
	function addStyleSheet(cssname,pos) {
		var th = document.getElementsByTagName(pos)[0];
		var s = document.createElement('link');
		s.setAttribute('type','text/css');
		s.setAttribute('rel','StyleSheet');
		s.setAttribute('href',cssname);
		th.appendChild(s);
	}
	
	function addCharSet(charset, pos) {
		var th = document.getElementsByTagName(pos)[0];
		var s = document.createElement('meta');
		s.setAttribute('http-equiv','Content-Type');
		s.setAttribute('content','text/html');
		s.setAttribute('charset', charset);
		th.appendChild(s);
	} 
	
	
	function removeAllChildNodes(nodeElement){
		while (nodeElement.hasChildNodes()) {
			nodeElement.removeChild(nodeElement.lastChild);
		}
	}
		
	
	function hide(nodeName){
		// this function hides this Node and all child nodes
		// meaning that it gives the property display:none to all
		// this allows to better manage elements
		

		var nodeElement = document.getElementById(nodeName);
		
		if (nodeElement != null){
			var treeListing = nodeElement.getElementsByTagName("*");
					
			for (var i = 0 ; i < treeListing.length ; i ++){
				if (treeListing[i].nodeType == 1){
					treeListing[i].style.display = "none";
				}			
			}
		}
	}
	

	function show(nodeName){
		// same as hide but shows all elements
		
		var nodeElement = document.getElementById(nodeName);
		if (nodeElement != null){
			var treeListing = nodeElement.getElementsByTagName("*");
					
			for (var i = 0 ; i < treeListing.length ; i ++){
				if (treeListing[i].nodeType == 1){
					treeListing[i].style.display = "";
				}
			}
		}
	
	}
	
	
	function initSignUp(){
		
		if (document.getElementById("CustomerType").value.toLowerCase() == "entreprise"){
		
			if (document.getElementById("idBirthData") != null) {						
				hide("idBirthData");				
				show("idCompanyContent");
				// products
				//hideProducts("particulier");
				//showProducts("entreprise");
				
			}
		}	
		else if (document.getElementById("CustomerType").value.toLowerCase() == "particulier"){
		
			if (document.getElementById("idCompanyContent") != null) {						
				show("idBirthData");				
				hide("idCompanyContent");
				// products
				//hideProducts("entreprise");
				//showProducts("particulier");
				
			}
		}
		else{
			// hides everything per default if nothing is set
			hide("idCompanyContent");		
			hide("idBirthData");
		}
			
		
	}
	

	
	function isRedirection(myJsonObj){
		if (myJsonObj.redirect != null && myJsonObj.redirect != "undefined"){
			return true;
		}
		else return false;
	}
	
	function redirect(_myJsonObj){		
		window.location.replace(_myJsonObj.redirect.toString());
	}
	
	

	addJavascript(rootProjectUrl + 'js/json/json_sans_eval.js','head');
	addJavascript(rootProjectUrl + 'js/wosheo/checkData2.js','head');
	//addStyleSheet('default.css','head');
	addStyleSheet('ISO-8859-1','head');
	
	
	
	function getValueFromUrl(_key){
		
		var arguments = window.location.search;
		var keyIndexEnd;
				
		if ( ! (arguments == null || arguments == "")){		
			//string comes + instead of spaces. these + characters must be deleted
			var lsRegExp = /\+/g; 
			// gets product		
			var resultMessage = unescape(arguments.substring(1,arguments.length));
			resultMessage = resultMessage.replace(lsRegExp, " ");

			var keyIndexStart = resultMessage.indexOf(_key + "=");

			if (keyIndexStart != -1 ){

				// cuts the left part
				var trimedLeft = resultMessage.substring(keyIndexStart + _key.length + 1);

				// checks if there are other arguments 
				if (trimedLeft.indexOf("&") == -1 ){
					extractedMessage = trimedLeft;
				}
				else {
					keyIndexEnd = trimedLeft.indexOf("&") - 1;
					extractedMessage = trimedLeft.substring(0, keyIndexEnd + 1);				
				}			
			}
			else extractedMessage = null;

			return extractedMessage;		
		}
		else return null;
	} 
	
	
	function buttonCheck(_idButton, _inputTab){
		
		var incompleteField = 0;

		// evaluate all fields
		for (var i = 0 ; i < _inputTab.length ; i++){
			var fieldValue = document.getElementById(_inputTab[i]).value;
			if (fieldValue == "") incompleteField ++;
		}

		// if one is missing, desactivate button, otherwise, activate it
		if (incompleteField == 0) {
			document.getElementById(_idButton).removeAttribute("disabled");
		}
		else {
			document.getElementById(_idButton).setAttribute("disabled", true);
		}
			
	}
	
	
	function contains (array, value){
		
		//if (array.length == 0) return false;
		
		for (var i = 0 ; i < array.length ; i++){		
			if (array[i] == value) return true;									
		}
		
		return false;
		
	}
	
	
	function isNumber(x) 
	{ 
	  return ( (typeof x === typeof 1) && (null !== x) && isFinite(x) );
	}

	
	
	function removeAllChilds(nodeId){
		
		var thisNode = document.getElementById(nodeId);	
		
		if (thisNode != null && thisNode != undefined){
		
			while (thisNode.hasChildNodes()){
				//if (thisNode.firstChild != undefined && thisNode.firstChild != null)
				thisNode.removeChild(thisNode.firstChild);
			}
		}
		
	}
	
	function addTextNode(_whichNode, _text){
			         
		var whichNode = document.getElementById(_whichNode);
		var insideDiv = document.createElement("div");
		
		// display new content    
	    insideDiv.innerHTML = _text;   
	    if (whichNode != null && whichNode != undefined){
	    	whichNode.appendChild(insideDiv);
	    }
	
	}
	
	
	
	function cloneObj(o) {
	     if(typeof(o) != 'object') return o;
	     if(o == null) return o;
	   
	     var newO = new Object();
	   
	     for(var i in o) newO[i] = cloneObj(o[i]);
	      return newO;
	 }

	

	function stringtoXML(text){
		
		if (window.ActiveXObject){
			var doc=new ActiveXObject('Microsoft.XMLDOM');
			doc.async='false';
			doc.loadXML(text);
		} else {
			var parser=new DOMParser();
			var doc=parser.parseFromString(text,'text/xml');
		}
		return doc;
	} 
	
	function XmlToString(xmlObject){

		if (window.ActiveXObject){
			 return xmlObject.xml;
		}
		else{
			return (new XMLSerializer()).serializeToString(xmlObject);
		}

	}
	
	
	
	function removeBlank(s){ 
		return s.replace(/[\n\r\t]/g,''); 
		}

	
	function getRandomNumber(_max){
		if (_max < 100 || _max == undefined || _max == null) _max = 100;
		
		return Math.floor(Math.random()* _max);
		
	}

	function closeWindow(nodeId){
		document.getElementById(nodeId).style.display="none";
	}
	
	function closeIdAnyMessage(_reloadPage){
		if (document.getElementById("idAnyMessage") != null)
			document.getElementById("idAnyMessage").style.display="none";
		
		if (_reloadPage == "true") window.location.reload();
		
	}
	
	function closeCaptchaErrorWindow(nodeId){
		if (document.getElementById(nodeId) != null)
			document.getElementById(nodeId).style.display="none";
			
			updateCaptcha("imageCaptcha");
		
		if (document.getElementById("localeCaptcha") != null)
			document.getElementById("localeCaptcha").value="";
	}


	function displayMessage(_message){						 	

		//hides a loader if there is one
		hideSubLoader();
		hideSubLoaderCentered();
		
		
		removeAllChilds("idAnyMessage");
		document.getElementById("idAnyMessage").innerHTML = _message;
		
		
		//var largeur = screen.availWidth;
		var largeur = getNavigatorWidth();
		// message box is 200 px width
		
		// calculates if the message should appear at the left or the right of the mouse, depending on the cursor place.
		if (finalX + 250 > largeur) finalX = finalX - 400;
		
		document.getElementById("idAnyMessage").style.display = "block";		
		document.getElementById("idAnyMessage").style.left = finalX + "px";
		document.getElementById("idAnyMessage").style.top = finalY + "px";
		document.getElementById("idAnyMessage").innerHTML = _message;
		
		
		//displayDialog();

	}
	
	
	
	// this function displays a message a a special node specified in parameters
	function displayNodeMessage(_idNode, _message){						 	
		
		removeAllChilds(_idNode);		
		
		if (document.getElementById(_idNode) != null){
			document.getElementById(_idNode).style.display = "block";		
			document.getElementById(_idNode).style.left = finalX + "px";
			document.getElementById(_idNode).style.top = finalY + "px";
			document.getElementById(_idNode).innerHTML = _message;
		}
	}
	
	
	function displayAvertCenter(_message){						 	
		
		mNodeName = "idAnyAvert";
		if (document.getElementById(mNodeName) == null) mNodeName = "idAnyMessage";
		
		removeAllChilds(mNodeName);		
		
		//largeur = screen.availWidth - 300;
		largeur = getNavigatorWidth() - 300;
		hauteur = screen.availHeight - 150 - 150;
		pointx = (largeur) / 2;
		pointy = (hauteur) / 2;
		
		if (document.getElementById(mNodeName) != null){
			document.getElementById(mNodeName).style.display = "block";		
			document.getElementById(mNodeName).style.left = pointx + "px";
			document.getElementById(mNodeName).style.top = pointy + "px";
			//document.getElementById(mNodeName).style.top = finalY + "px";
			document.getElementById(mNodeName).innerHTML = _message;		
		}
		
	}
	
function displayMsgCenter(_message){						 	
		
		hideSubLoader();
		hideSubLoaderCentered();
	
		mNodeName = "idAnyMessage";
		if (document.getElementById(mNodeName) == null) mNodeName = "idAnyMessage";
		
		removeAllChilds(mNodeName);		
		
		//largeur = screen.availWidth - 300;
		largeur = getNavigatorWidth() - 500;
		hauteur = screen.availHeight - 300 - 300;
		myleft = (screen.width / 2) - (500 / 2) + getScrollX() ;
		mytop = (screen.height / 2) - 200 + getScrollY() ;
		
		if (document.getElementById(mNodeName) != null){
			document.getElementById(mNodeName).style.display = "block";		
			document.getElementById(mNodeName).style.left = myleft + "px";
			document.getElementById(mNodeName).style.top = mytop + "px";
			document.getElementById(mNodeName).innerHTML = _message;		
		}
}
	
	
function hideAvertCenter(){						 	
		
		document.getElementById("idAnyAvert").style.display = "none";		
	
	}
	
function hideAvertCenter(){						 	
		if (document.getElementById("idAnyAvert") != null){
			removeAllChilds("idAnyAvert");		
			document.getElementById("idAnyAvert").style.display = "none";		
		}
	}
	
	
	function displayContextMenu(_idResult){
		
		var nrOfLines = 0;
		var lastItem = "";

		// code for menu me / not me
		var menuHtmlMeNotMe = ""; 
		if (imgNotMeItsMe != "") {
			menuHtmlMeNotMe =  
				"<div id='menuNotMe' class='contextMenuItem'>" +
					"<span class='contextMenuImg'><img style='margin-top:-2px;' width='22px' height='22px' src='img/" + imgNotMeItsMe + "'></img></span>" +
					"<span class='menuItemText'>" +
						"<a class=\"regular\" style=\"vertical-align:top;\" href=\"javascript:" + activateOrDeactivate + "('" + _idResult + "', false);\">" + visibleTextItsMe + "</a>" +
					"</span>" +
					
					"<span class='contextMenuImg'><img id=\"interr1-" + _idResult + "\" " +
					
						" customTitle=\"Vous pouvez écarter ce résultat si vous considérez qu'il n'a pas de rapport avec votre agent de recherche. <br /><br />" +
						"Si vous l'écartez, vous pourrez automatiquement exclure tous les résultats similaires. <br /><br />" +
						"Les résultats écartés apparaîtront alors dans l'onglet <b>Résultats écartés</b>.\" " +
 						" displayTitle=\"true\" " +
 						" onMouseOver=\"javascript:showTitlePopup(this.id);\" " + 
						" onMouseOut=\"javascript:clearTitlePopup();\" " +
					
						"  style=\"float:right;margin-right:5px;\" width=\"15px\" height=\"15px\" src=\"./img/interrogationpoint.png\"></img></span>" +
					
					
				"</div>" ;
			
			nrOfLines++;
			lastItem = "menuNotMe";
		}

		// code for menu deletion 
		var menuHtmlDeletion = ""; 
		if (imgDeletionMgt  != "") {
			menuHtmlDeletion =  
				"<div id='menuDeletion' class='contextMenuItem'>" +
					"<span class='contextMenuImg'><img style='margin-left:4px;' width='22px' height='22px' src='img/" + imgDeletionMgt + "'></img></span>" +
					"<span class='menuItemText'>" +
						"<a class=\"regular\" style=\"vertical-align:top;\" href=\"javascript:" + deleteOrUndelete + "('" + currentActiveList  + "', '" + _idResult + "');\">" + visibleTextDeletion + "</a>" +
					"</span>" +
					
					"<span class='contextMenuImg'><img id=\"interr2-" + _idResult + "\" " +
					
					" customTitle=\"Ce résultat est gênant pour votre réputation ? Vous souhaitez le faire disparaître complètement d'internet ?<br /><br />" +
					" Cliquez pour l'ajouter au panier des suppressions.\" " +
					" displayTitle=\"true\" " +
					" onMouseOver=\"javascript:showTitlePopup(this.id);\" " + 
					" onMouseOut=\"javascript:clearTitlePopup();\" " +
				
					"  style=\"float:right;margin-right:5px;\" width=\"15px\" height=\"15px\" src=\"./img/interrogationpoint.png\"></img></span>" +
					
				"</div>" ;
			
			nrOfLines++;
			lastItem = "menuDeletion";
		}
		
		// code for menu add to lists
		var menuHtmlLists = ""; 
		if (imgListMgt  != "") {
			menuHtmlLists =  
				"<div id='menuList' class='contextMenuItem'>" +
					"<span class='contextMenuImg'><img width='22px' height='22px' src='img/" + imgListMgt + "'></img></span>" +
					"<span class='menuItemText'>" +
					"<a class=\"regular\" style=\"vertical-align:top;\" href=\"javascript:" + listAddOrRemove + "('" + currentActiveList + "','" + _idResult + "');\">" +
					visibleTextList +
					"</a>" +
					"</span>" +
					
					"<span class='contextMenuImg'><img id=\"interr3-" + _idResult + "\" " +
					
					" customTitle=\" Vous souhaitez accéder plus tard très rapidement à ce résultat ? " +
					" Cliquez pour le sauvegarder dans une de vos listes.  \" " +
					" displayTitle=\"true\" " +
					" onMouseOver=\"javascript:showTitlePopup(this.id);\" " + 
					" onMouseOut=\"javascript:clearTitlePopup();\" " +
				
					"  style=\"float:right;margin-right:5px;\" width=\"15px\" height=\"15px\" src=\"./img/interrogationpoint.png\"></img></span>" +
					
				"</div>" ;
			
			nrOfLines++;
			lastItem = "menuList";
		}
		
		
		
		// calculates the height of the menu to display at the right place bove the button
		var menuHeight = 22*nrOfLines;
		//var stringHeight = "style='height:" + menuHeight + "px;'";
		
		var htmlContent = 			
		// contextmenu
			"<div id='contextMenu" + _idResult + "' class='contextMenu'>" +
				menuHtmlMeNotMe + 
				menuHtmlDeletion +
				menuHtmlLists +				 
			"</div>" ;
		
		
		// replaces the class of the last item to have a border at the bottom
		var stringToReplace = "<div id='" + lastItem + "' class='contextMenuItem'>";
		var stringReplaceBy = "<div id='" + lastItem + "' class='contextMenuLastItem'>";
		htmlContent = htmlContent.replace(stringToReplace, stringReplaceBy);
		
		
		var isDisplayed = document.getElementById("idContextMenu").style.display ;
		
		if (isDisplayed == "none" || isDisplayed == " " || isDisplayed == ""){
						
			
			//get postion of option image starter 
			var element = document.getElementById("buttonContextMenu" + _idResult);			
			var leftCoord = getLeftCoords(element);			
			
			// sets position
			if (leftCoord != null && leftCoord != undefined){
				document.getElementById("idContextMenu").style.left = leftCoord + "px";
			}
			else{
				alert("left coord not found");
				document.getElementById("idContextMenu").style.left = (finalX - 30) + "px";
			}
						
			
			finalY = finalY - menuHeight;			
			
			document.getElementById("idContextMenu").style.display = "block";
			document.getElementById("idContextMenu").style.top = finalY + "px";
			document.getElementById("idContextMenu").innerHTML = htmlContent;						
			document.getElementById("idContextMenu").style.top = finalY + "px";						
			
		}
		else{
			document.getElementById("idContextMenu").style.display = "none";
		}
		
	}
	
	
	function displaySnaphot(_url){
		
		removeAllChilds("idSnapshot");
		
		var tagimg = document.createElement("img");
		tagimg.setAttribute("src", _url);
		var divNode = document.getElementById("idSnapshot");
		divNode.appendChild(tagimg);				
		
		document.getElementById("idSnapshot").style.left = finalX + "px";
		document.getElementById("idSnapshot").style.top = finalY + "px";
		
		document.getElementById("idSnapshot").style.display = "block";
	
	}
	
	
	
	
	function getMouseXY(e) {
		
		var tempX = 0;
		var tempY = 0;		
		
		if (IE) { // grab the x-y pos.s if browser is IE
			
			
			tempX = event.clientX + document.documentElement.scrollLeft ;									
			tempY = event.clientY + document.documentElement.scrollTop ;
			
			// experimentally found that the Y value must be a bit tuned
			tempY = tempY - 18;
			
			
		}
		else {  // grab the x-y pos.s if browser is NS
			tempX = e.pageX;
			tempY = e.pageY;
		}  
		if (tempX < 0){
			tempX = 0;
		}
		if (tempY < 0){
			tempY = 0;
		}  

		finalX = tempX + 30;
		finalY = tempY - 30;
		
		
}
	
	
	function toogle(mimage, toogleType, thisModuleId, _saveInDb){
		// toogleType can be:
		// . minimise
		// . setup
		// . help
		// . filter
		// . 
		
		var attrDisplay = document.getElementById(thisModuleId).style.display;
		var configValue = "" ;
		
			
		if (attrDisplay == "" || attrDisplay == "block"){
			if (toogleType == "minimise") {
				mimage.src="img/agrandir.png";
				mimage.title = "Agrandir ce module";
				mimage.alt = "Agrandir ce module";
			}
			else if (toogleType == "setup") {
				mimage.src="img/setup.png";
				mimage.title = "Paramétrer";
				mimage.alt = "Paramétrer";
			}
			else if (toogleType == "help") {
				mimage.src="img/aide.png";
				mimage.title = "Aide";
				mimage.alt = "Aide";
			}
			else if (toogleType == "filter") {
				mimage.src="img/filter.png";
				mimage.title = "Filtrer";
				mimage.alt = "Filtrer";
			}
			else {
				mimage.src="null";
				mimage.title = "";
				mimage.alt = "";
			}
			
			
			document.getElementById(thisModuleId).style.display="none";
			configValue = false;
			
			
		}
		else {
			
			if (toogleType == "minimise") {
				mimage.src="img/retrecir.png";
				mimage.title = "Réduire ce module";
				mimage.alt = "Réduire ce module";
			}
			else if (toogleType == "setup") {
				mimage.src="img/setup.png";
				mimage.title = "Paramétrer";
				mimage.alt = "Paramétrer";
			}
			else if (toogleType == "help") {
				mimage.src="img/aide.png";
				mimage.title = "Aide";
				mimage.alt = "Aide";
			}
			else if (toogleType == "filter") {
				mimage.src="img/filter.png";
				mimage.title = "Filtrer";
				mimage.alt = "Filtrer";
			}
			else {
				mimage.src="null";
				mimage.title = "";
				mimage.alt = "";
			}
			
			
			
			
			document.getElementById(thisModuleId).style.display="block";
			configValue = true;
		}
		
		// checks if the config must be saved in db
		if (_saveInDb == "true"){
			//saveConfig(thisModuleId);
			sendFormData(thisModuleId, configValue, null);
		}	
	}	

	
	function send(_url, _callbackForm, _method){  		   			
		
		if ((_url.length > 2058)) {
			alert("an error has occured, " +
				"the message sent to the server is too long, " +
				"please contact the website, telling this message");
		}
		// BE CARFEULL ! INTERNET EXPLORER LIMITS THE NUMBER OF CHARACTERS SENT AT 2058 !!!
		
		   if (typeof XMLHttpRequest != "undefined") {
		       req = new XMLHttpRequest();       
		   } 
		   else{
		       req = new ActiveXObject("Microsoft.XMLHTTP");
		   }		   		   

		   req.open(_method, _url, true);
		   
		   req.setRequestHeader("Content-Type", "text/plain;charset=ISO-8859-1");
		   
		   req.onreadystatechange = _callbackForm;
		     
		   req.send(null);
		   	
		   
		}
	
	function closePopup(_id){
		if (_id != undefined && _id != null && document.getElementById(_id) != null){
			document.getElementById(_id).style.display='none';
		}
		else{
			document.getElementById('idAnyMessage').style.display='none';
		}		
	}		
	
	function displayPopup(_id, _x, _y, _width, _height){
		
		
		largeur = getNavigatorWidth() - _width;
		finalX = (largeur) / 2;
		
		
		if (document.getElementById(_id) != null && document.getElementById(_id) != undefined){
			document.getElementById(_id).style.top = 150 + "px";
			document.getElementById(_id).style.left = finalX  + "px";
			document.getElementById(_id).style.width = _width + "px";
			document.getElementById(_id).style.display='';
			document.getElementById(_id).style.zIndex= "1000000";
		}
		else{
			displayMessage("Une erreur est survenue. Vous pouvez contacter l'équipe Zen Reputation");
		}
		
	}
	
	
	function displayDemoPopup(_id, _x, _y){
		
		if (document.getElementById(_id) != null && document.getElementById(_id) != undefined){
			document.getElementById(_id).style.top = _y + "px";
			document.getElementById(_id).style.left = _x  + "px";
			document.getElementById(_id).style.width = 400 + "px";
			document.getElementById(_id).style.display='';
			document.getElementById(_id).style.zIndex= "1000000";
		}
		else{
			displayMessage("Une erreur est survenue. Vous pouvez contacter l'équipe Zen Reputation");
		}
		
	}
	
	
	
	function trim(myString){
		return myString.replace(/^\s+/g,'').replace(/\s+$/g,'');
	} 
	

	
	function expandAll(tagId){
		tagList = document.getElementsByTagName(tagId);
		for (var i = 0 ; i < tagList.length ; i++){
			tagNumbered = tagId + i;
			if (document.getElementById(tagNumbered) != null || document.getElementById(tagNumbered) != undefined){
				if (document.getElementById(tagNumbered).style.display == "none"){
					toogle(this, null, tagNumbered, false);
				}
			}
		}
	}

	function contractAll(tagId){
		tagList = document.getElementsByTagName(tagId);
		for (var i = 0 ; i < tagList.length  ; i++){
			tagNumbered = tagId + i;
			if (document.getElementById(tagNumbered) != null || document.getElementById(tagNumbered) != undefined){	
				if (document.getElementById(tagNumbered).style.display == "" || document.getElementById(tagNumbered).style.display == "block"){
					toogle(this, null, tagNumbered, false);
				}
			}
		}
	}  
	
	function reloadPage(){
		window.location.reload();		
	}
	
	function translateIt(_text, _whereId){	
		
		var mytext = _text;
		var resultId = extractNrFromString(_whereId);
		
		var tNode = document.getElementById("TranslateResults");
		// overrides the database value if the node already exists, meaning that the page has already be initialized
		if (tNode != null && tNode != undefined){
			translateResults = tNode.checked;
		}
		
			google.language.translate(_text, "", "fr", function(result) {
	  	  		if (!result.error) {
	  	    		
	  	  			var container = document.getElementById(_whereId);
		  	    		if (container != null && container != undefined){
		  	    			
		  	    			if (translateResults == true){
		  	    				container.innerHTML = "";	  	    			
		  	    				container.innerHTML = result.translation;
		  	    			}
		  	    			else{
		  	    				container.innerHTML = "";	  	    			
		  	    				container.innerHTML = _text;
		  	    			}
		  	    				
		  	    			
		  	    			// manages the icon TRAD		  	    				  	    			
		  	    			if (_text != result.translation && _whereId.substring(0,10) == "linkresult"){
		  	    				if (translateResults == true){		  	    							  	    				
		  	    					
			  	    				var cellTrad = document.getElementById("rowTrad" + resultId);
			  	    				if (cellTrad != null && cellTrad != undefined){
			  	    					tdNode = document.createElement("td");
			  	    					tdNode.className = "cellTranslated";
			  	    					tdNode.setAttribute("rowspan", "5");
			  	    					tdNode.innerHTML = "<div style=\"vertical-align:top;\"><img alt=\"traduire\" title=\"Retour au texte original\" src=\"img/traduit.gif\"></img></div><br><br><a href=\"javascript:updateFromResult('" + resultId + "','-1','2','false');\"><div style=\"vertical-align:bottom;\"><img src=\"img/doublearrow.gif\"></div></span></a>";			  	 			  	    								  	    				
			  	    					cellTrad.insertBefore(tdNode, cellTrad.lastChild);
			  	    				}
		  	    				}
		  	    				else if (translateResults == false){
		  	    					
		  	    				// install translation image
		  	    					var tdNode = document.getElementById("imgTranslate" + resultId);
		  	    					var aNode = document.createElement("a");
		  	    					aNode.setAttribute("href", "javascript:updateFromResult('" + resultId + "','-1','2','true');");
		  	    					var imgNode = document.createElement("img");
		  	    					imgNode.setAttribute("src", "img/traduction.jpg");
		  	    					imgNode.setAttribute("alt", "Traduire");
		  	    					imgNode.setAttribute("title", "Traduire ce résultat");
		  	    					aNode.appendChild(imgNode);
		  	    					tdNode.appendChild(aNode);
		  	    					
		  	    					// returns original text
		  	    					return _text;
		  	    					
		  	    				}
		  	    				
		  	    			}
		  	    			
		  	    		}
	  	  		}
	  		});				
	}
		
	
	
	function extractNrFromString(_thisString){
		return _thisString.match(/\d+$/);
	}
	
	function updateCaptcha(imgNodeId) {
		if (document.getElementById(imgNodeId) != null){
			theImage = new Image;
			theImage.src = "./ImageCaptchaServlet?"+(new Date()).getTime();
			document.getElementById(imgNodeId).src = theImage.src;
		}
	} 
	
	function getJaugeHtml(_value, _nodeId, _finalJauge){
		
		var jaugeFileName = "jauge.swf" ;
		// initializes per default
		if (_finalJauge == false)
			jaugeFileName = "jauge_temp.swf" ;
		
		// removes previous content
		removeAllChilds(_nodeId);
		
		// chooses jauge depending on _nodeId (allows to have a different jauge on index page)
		if (_nodeId == "indexjauge"){
			jaugeFileName = "jauge_ech.swf" ;
		}
		
		// for IE
		if (window.ActiveXObject){
			var htmlText = "<object id=\"idObjectJauge\" wmode=\"transparent\" style=\"z-index:1;\" type=\"application/x-shockwave-flash\" data=\"" + jaugeFileName + "?score=" + _value + "\" width=\"400\" loop=\"false\" height=\"60\">" +
			"<param name=\"movie\" value=\"" + jaugeFileName + "?score=" + _value + "\" />" +
			"<param name='LOOP' value='false' />" +
			"<param name=\"wmode\" value=\"transparent\">" +
			"</object>";
			
			if (_nodeId != null && _nodeId != undefined && document.getElementById(_nodeId) != null){
				document.getElementById(_nodeId).innerHTML = htmlText;
			}
		}
		
		else{
			var objectNode = document.createElement("object");
			objectNode.setAttribute("type", "application/x-shockwave-flash");
			objectNode.setAttribute("id", "idObjectJauge");
			objectNode.setAttribute("data", jaugeFileName + "?score=" + _value);
			objectNode.setAttribute("width", "400");
			objectNode.setAttribute("loop", "false");
			objectNode.setAttribute("height", "60");
			objectNode.setAttribute("z-index", "1");
			objectNode.setAttribute("wmode", "transparent");
		
			var paramNode = document.createElement("param");
			paramNode.setAttribute("name", "movie");
			paramNode.setAttribute("value", jaugeFileName + "?score=" + _value);
			
			objectNode.appendChild(paramNode);
			
			
			var paramNode2 = document.createElement("param");
			paramNode2.setAttribute("name", "wmode");
			paramNode2.setAttribute("value", "transparent");
			
			objectNode.appendChild(paramNode2);
			
			
			var paramNode3 = document.createElement("param");
			paramNode2.setAttribute("name", "LOOP");
			paramNode2.setAttribute("value", "false");
			objectNode.appendChild(paramNode3);
			
			
			if (_nodeId != null && _nodeId != undefined && document.getElementById(_nodeId) != null){		
				document.getElementById(_nodeId).appendChild(objectNode);
			}
		}	
		
		if (document.getElementById("indexjauge") != null){
			document.getElementById("indexjauge").style.display = "";
		}
		
		// set the loader invisible
		if (document.getElementById("jaugeLoaderAcc") != null){
			document.getElementById("jaugeLoaderAcc").style.visibility = "hidden";
		}
		
		// forces visibility and display for some browsers where object is hidden by default (Opera, ...)
		if (resultsReady == true){
			document.getElementById(_nodeId).style.display = "block";
			document.getElementById(_nodeId).style.visibility = "visible";
			document.getElementById("idObjectJauge").style.display = "block";
			document.getElementById("idObjectJauge").style.visibility = "visible";
			
			document.getElementById("jaugeContent").style.display = "block";
			document.getElementById("jaugeContent").style.visibility = "visible";
		}
		
		
		
	}
	
	
	function testTextAnimation(_idNode, _counter){
		
		if (_counter == undefined) _counter = 0;
		
		var divNode = null;
		var textNode = null;
		
		var textContent = new Array(
				"En fonction du nombre de résultats et de leur complexité, la recherche peut prendre quelques minutes. Merci pour votre patience.",
				"Recherche des données ...",
				"Sélection des résultats français ...",
				"Séparation des contenus non analysables ...",
				"Détermination de l'échantillon ...",
				"Analyse primaire ...",
				"Vérification ...",
				"Analyse secondaire ...",
				"Vérification ...",
				"Calcul de votre réputation partielle ...",
				"Vérification transversale ...",
				"Préparation de l'envoi ...",
				"Envoi au navigateur, merci de patienter ..."
				);								
			
			divNode = null;
			textNode = null;
			
			// get if the jauge is displayed, meaning that the results have arrived and that there is no further need to display the text animation
			var jaugeArrived = document.getElementById("indexjauge").firstChild;			
			
			// create and display node only if the jauge has'nt arrived yet
			if ((jaugeArrived == null || jaugeArrived == undefined) && maxTestsReached == false) {
				divNode = document.createElement("div");
				textNode = document.createTextNode(textContent[_counter]);
				_counter++;
				divNode.appendChild(textNode);
				document.getElementById(_idNode).appendChild(divNode);
			}
			
			if (_counter < textContent.length && maxTestsReached == false && (jaugeArrived == null || jaugeArrived == undefined)){
				setTimeout("testTextAnimation('" + _idNode + "','" + _counter + "')",4000);
			}
	}
		
			
	function getLeftCoords(element) {
	    
	   var coords = {left: 0, top: 0};		    		        
	        while (element) {
	            coords.left += element.offsetLeft;
	           // coords.top  += element.offsetTop;
	            element      = element.offsetParent;
	        }		    		    
	    return coords.left;
	}
	
	function getTopCoords(element) {
	    
		   var coords = {left: 0, top: 0};		    		        
		        while (element) {		            
		            coords.top  += element.offsetTop;
		            element      = element.offsetParent;
		        }		    		    
		    return coords.top;
	}	
	


	
	function initErrorWindows(){
		if (document.getElementById("idAnyMessage") != null)
			document.getElementById("idAnyMessage").style.display = "none";
		
		if (document.getElementById("displayConfirm") != null)
			document.getElementById("displayConfirm").style.display = "none";
	}
	
	
	function colorMenu(_idToColor){
		
		intervall = 300;
		
		if (counter != undefined && counter < 50 * intervall){
			setTimeout("reallyColorMenu('" + _idToColor + "')", intervall);			
		}											
		
	}
	
	function reallyColorMenu(_idToColor){
		if (document.getElementById("m_" + _idToColor) != null)
			document.getElementById("m_" + _idToColor).className = "tdmenuactivated";		
		if (document.getElementById("link_" + _idToColor))
			document.getElementById("link_" + _idToColor).removeAttribute("href");
		
	}
	
	
	/**
	 * returns an Date object when inputing a string in the shape dd-mm-yyyy
	 * @param dateAsString
	 * @return Date object. Returns false if a day, month or year is not in the real life interval 
	 */
	function getDateFromString(dateAsString){
		var day = dateAsString.substring(0,2);
		var month = dateAsString.substring(3,5);
		var year = dateAsString.substring(6,10);
		
		if(dayChecker(day) == false || monthChecker(month) == false || yearChecker(year) == false) return false;
		
		d = new Date();
		d.setFullYear(year);
		d.setMonth(month - 1);
		d.setDate(day);	
		
		return d;

	}
	
	
	
	/**
	 * returns the difference between date pDateDebut and pDateFin
	 * input parameters must be Date objects
	 * @param pDateDebut
	 * @param pDateFin
	 * @return a positive or negative integer. 0 if dates are identical. 
	 */
	function fCompareDate(pDateDebut,pDateFin) {
		var DureeDebut = Date.parse(pDateDebut);
		var DureeFin = Date.parse(pDateFin);
		
		var iComparaison= DureeFin - DureeDebut;
		
		return iComparaison;				
	}
	
	function monthChecker(_month){
		if (_month > 0 && _month <= 12) return true;
		else return false;
	}
	
	function dayChecker(_day){
		if (_day > 0 && _day <= 31) return true;
		else return false;
	}
	
	function yearChecker(_year){
							
		if (_year > 1990) return true;
		else return false;
	}
	
	function colorArrow(_nodeId ,_color){
		document.getElementById(_nodeId).setAttribute("src", "img/" + _color + "_target.gif");
	}
	
	function connect(){
		str=document.getElementById('signin').style.display;
		if(str=="none" || str==false){
			document.getElementById('signin').style.display="block";
			document.getElementById('pwdforgotten').style.display = "none";
			return;
		}
		else{
			document.getElementById('signin').style.display="none";
			document.getElementById('pwdforgotten').style.display = "none";
			return;
		}
	}


	function pwdforgotten(){
		pwdf=document.getElementById('pwdforgotten').style.display;
		if(pwdf=="none" || pwdf==false){			
			document.getElementById('signin').style.display="none";
			document.getElementById('pwdforgotten').style.display = "block";
			//document.getElementById('sinscrire').style.display="none";
		}	
	}
	
	function checkRedirectionForBuy(productName, customerType){
		
		var valueJ = getCookie("JSESSIONID");
		var valueP = getCookie("PSESSIONID");
		
		if (valueJ == null || valueJ == undefined || valueJ == ""
			|| valueP == null || valueP == undefined || valueP == "" || valueJ != valueP
		){
			window.location = rootProjectUrl + "acheter-produit-de-gestion-e-reputation-en-ligne-web-reputation-outil-de-monitoring-buzz-et-analyse-d-opinion.html?customertype=" + customerType + "&productName=" + productName;
		}	
		else if (valueJ == valueP) {
			window.location = rootProjectUrl + "Basket?productName=" + productName;
		}
		else {
			window.location = rootProjectUrl + "index.html";
		}
		
		/*
		if (valueJ == valueP){
			window.location = rootProjectUrl + "Basket?productName=" + productName;			
		}	
		else{
			window.location = rootProjectUrl + "acheter-produit-de-gestion-e-reputation-en-ligne-web-reputation-outil-de-monitoring-buzz-et-analyse-d-opinion.html?customertype=" + customerType + "&productName=" + productName;
		}
		*/
	}
	
	
	function extractEndNumbers(_string){
		return _string.match(/\d+$/);		
	}
	
	function updateNameList(_formId){

		var formNumber = extractEndNumbers(_formId);
		//var nodes = document.getElementsByTagName("input");
		var nodes = document.getElementsByName("ListName");
		var listName = nodes.item(formNumber).value;

		// changes the name list
		document.getElementById("linkToogler-" + formNumber).innerHTML = "Liste: " + listName ;
		// changes the short link
		document.getElementById("idSumup-" + formNumber).innerHTML = listName ;
	}

	/**
	 * this method setup a flag telling that 'All the Words' field of the follower has changed, and 
	 * that must display the 'keep' or 'delete' history of the follower
	 * @param _hasChanged : true or false
	 * @return
	 */
	function setfollowerChanged(allTheWordsValue, _hasChanged){
		
		// if the value is empty, set _hasChanged to false because the popup windows must not be shown
		if (allTheWordsValue == null || allTheWordsValue == "null" || 
				allTheWordsValue == "undefined" || allTheWordsValue == undefined || allTheWordsValue.length == 0){
			_hasChanged = false;
		}
		
		followerSetupHasChanged = _hasChanged;
	}
		
	
	function displaySubLoader(){
		if (document.getElementById("subAjaxLoader") != null)
			document.getElementById("subAjaxLoader").style.visibility="visible";
	}
	
	function displaySubLoaderCentered(){
		
		mNodeName = "subAjaxLoaderCentered";
		
		myleft = (screen.width / 2) - (500 / 2) + getScrollX() ;
		mytop = (screen.height / 2) - 200 + getScrollY() ;
		
		if (document.getElementById(mNodeName) != null){
			document.getElementById(mNodeName).style.visibility = "visible";		
			document.getElementById(mNodeName).style.left = myleft + "px";
			document.getElementById(mNodeName).style.top = mytop + "px";
		}
		
		
		if (document.getElementById("subAjaxLoaderCentered") != null)
			document.getElementById("subAjaxLoaderCentered").style.visibility="visible";
	}

	function hideSubLoader(){
		if (document.getElementById("subAjaxLoader") != null)
			document.getElementById("subAjaxLoader").style.visibility="hidden";
	}
	
	function hideSubLoaderCentered(){
		if (document.getElementById("subAjaxLoaderCentered") != null)
			document.getElementById("subAjaxLoaderCentered").style.visibility="hidden";
	}
	
	
	
	function getNavigatorWidth(){
		var viewportwidth ;
		var viewportheight;
		
		 if (typeof window.innerWidth != 'undefined')
		 {
		      viewportwidth = window.innerWidth;
		      viewportheight = window.innerHeight;
		 }
		 
		// IE6 in standards compliant mode (i.e. with a valid doctype as the first line in the document)

		 else if (typeof document.documentElement != 'undefined' 
		     && typeof document.documentElement.clientWidth !=
		     'undefined' && document.documentElement.clientWidth != 0)
		 {
		       viewportwidth = document.documentElement.clientWidth;
		       viewportheight = document.documentElement.clientHeight;
		 }
		 
		 return viewportwidth;
	}
	
	
	function getNavigatorHeight(){
		var viewportwidth ;
		var viewportheight;
		
		 if (typeof window.innerWidth != 'undefined')
		 {
		      viewportwidth = window.innerWidth;
		      viewportheight = window.innerHeight;
		 }
		 
		// IE6 in standards compliant mode (i.e. with a valid doctype as the first line in the document)

		 else if (typeof document.documentElement != 'undefined' 
		     && typeof document.documentElement.clientWidth !=
		     'undefined' && document.documentElement.clientWidth != 0)
		 {
		       viewportwidth = document.documentElement.clientWidth;
		       viewportheight = document.documentElement.clientHeight;
		 }
		 
		 return viewportheight;
	}
	
	
	function activateGreyBg(){
		if (document.getElementById("myBackDiv") != null){
			document.getElementById("myBackDiv").style.display="block";
			//window.scroll(0,0);
		}
	}
	
	
	function deactivateGreyBg(){
		if (document.getElementById("myBackDiv") != null){
			document.getElementById("myBackDiv").style.display="none";
			//window.scroll(0,0);
		}
	}
	
	function deActivateGreyBg(){
		if (document.getElementById("myBackDiv") != null){
			document.getElementById("myBackDiv").style.display="none";
			//window.scroll(0,0);
		}
	}
	
	function hideOrShow(_nodeId){
		
		if (document.getElementById(_nodeId) != null){
			
			if (document.getElementById(_nodeId).style.display == "" || document.getElementById(_nodeId).style.display == "block"){
				document.getElementById(_nodeId).style.display = "none";
			}
			
			else {
				document.getElementById(_nodeId).style.display = "";
			}
			
		}
		
	}
	
	
	
	function openCustomedJaugeHelp(tonalityValue){
		
		if (tonalityValue >= 0 && tonalityValue < 30){
			hideOrShow("idNeg0");		
		}
		else if (tonalityValue >= 30 && tonalityValue < 50){
			hideOrShow("idNeg1");
		}
		else if (tonalityValue == 50){
			hideOrShow("idNeutral");
		}
			
		else if (tonalityValue > 50 && tonalityValue < 80){
			hideOrShow("idPos0");
		}
		else if (tonalityValue >= 80 && tonalityValue < 100){
			hideOrShow("idPos1");
		}
		
	}
	
	

	function hideStatus(){
		window.status = "gros plein de soupe";
	}
	


	function checkCguHtml(_idCheck, _idButton){ 
		
		if (document.getElementById(_idCheck).checked == true)		
			document.getElementById(_idButton).removeAttribute('disabled');		
		else{			
			document.getElementById(_idButton).setAttribute('disabled', 'disabled');
		}
	}
	
	function toogleExpl(idNode){
	if (document.getElementById(idNode) != null) {
		if (document.getElementById(idNode).style.display == "none"){
			document.getElementById(idNode).style.display = "block" ;
		}
		else {
			document.getElementById(idNode).style.display = "none" ;
		}
	}
		
	}
	
	
	function closeFromMouseClick(){
		
		if (document.getElementById('signin') != null && 
				(document.getElementById('signin').style.display == "" || document.getElementById('signin').style.display == "block"  )) 
			document.getElementById('signin').style.display="none";
		
		if (document.getElementById('pwdforgotten') != null &&
				(document.getElementById('pwdforgotten').style.display == "" || document.getElementById('pwdforgotten').style.display == "block"  ))
			document.getElementById('pwdforgotten').style.display = "none";			
		
	}
	
	function closeContextMenu(){
		if (document.getElementById("idContextMenu") != null)
			document.getElementById("idContextMenu").style.display = "none";
	}
	
	
	function getWordInFilterTitle(_word){
		var word = _word.toLowerCase();
		if (word.length > 0){
			if ( word.substring(word.length - 1, word.length) != "s")
				word = word + "s";
		}
		
		return word;
	}

	function updateLogoutTimeStamp(){
		
		window.setTimeout('updateLogoutTimeStamp()', 20000);
		updateTimeStamp();
		
	}
	
	
	function showTitlePopup(motherId){

		var xOffset = 0;
		var yOffset = 0;
		
		
		if (document.getElementById(motherId) != null && 
				document.getElementById(motherId).getAttribute("customTitle") != null && isDemo == false){
			
			// try to get Offsets
			if (document.getElementById(motherId).getAttribute("xOffset") != null)
				xOffset = parseInt(document.getElementById(motherId).getAttribute("xOffset"));
			
			if (document.getElementById(motherId).getAttribute("yOffset") != null)
				yOffset = parseInt(document.getElementById(motherId).getAttribute("yOffset"));
			
			if(document.getElementById(motherId).getAttribute("displayTitle") == "true"){
				
				var titleMessage = document.getElementById(motherId).getAttribute("customTitle");	
				
				titleMessage = titleMessage.replace(/_br_/g, "<br />");
				
				titleMessage = titleMessage.replace(/_-u_/g, "</u>");
				titleMessage = titleMessage.replace(/_u_/g, "<u>");
				
				titleMessage = titleMessage.replace(/_-i_/g, "</i>");
				titleMessage = titleMessage.replace(/_i_/g, "<i>");
				
				titleMessage = titleMessage.replace(/_-b_/g, "</b>");
				titleMessage = titleMessage.replace(/_b_/g, "<b>");
				
				titleMessage = titleMessage.replace(/_-div_/g, "</div>");
				titleMessage = titleMessage.replace(/_div_/g, "<div ");
				
				document.getElementById("idMessageTitle").style.left = 
					finalX + xOffset - 25 + "px";
					
				// if the mother element is in a scrollable element, the y value must be managed differently
				if (document.getElementById(motherId).getAttribute("isInScroll") != null && 
						document.getElementById(motherId).getAttribute("isInScroll") == "true"){
					document.getElementById("idMessageTitle").style.top = 
						finalY + document.getElementById(motherId).offsetHeight + yOffset + "px";
				}
				else{
					document.getElementById("idMessageTitle").style.top = 
						getTopCoords(document.getElementById(motherId)) + document.getElementById(motherId).offsetHeight + yOffset + "px";
				}
				

				document.getElementById("idMessageTitle").innerHTML = titleMessage;
				document.getElementById("idMessageTitle").style.display = "block";
			}
		
		}
	}


	

	function clearTitlePopup(){
		if (document.getElementById("idMessageTitle") != null)
			document.getElementById("idMessageTitle").style.display = "none";
	}
	
	
	function action(event){
	  var event = event || window.event;

	  
	  if (event.stopPropagation) {
		    event.stopPropagation();
		  }
		  event.cancelBubble = true; 
		  
		  
	}
	
	
	function IEVersion(){
	    var ua = navigator.userAgent;
	    var MSIEOffset = ua.indexOf("MSIE ");
	    
	    if (MSIEOffset == -1) {
	        return 999;
	    } else {
	        return parseFloat(ua.substring(MSIEOffset + 5, ua.indexOf(";", MSIEOffset)));
	    }
	}
	
	
	function getPosition(element){
		var left = 0;
		var top = 0;
		/*On récupère l'élément*/
		var e = document.getElementById(element);
		/*Tant que l'on a un élément parent*/
		while (e.offsetParent != undefined && e.offsetParent != null)
		{
			/*On ajoute la position de l'élément parent*/
			left += e.offsetLeft + (e.clientLeft != null ? e.clientLeft : 0);
			top += e.offsetTop + (e.clientTop != null ? e.clientTop : 0);
			e = e.offsetParent;
		}
		return new Array(left,top);
	}
	
	
	
	function getElementY(_id){
		
		if (document.getElementById(_id) != null){
			var oElement = document.getElementById(_id);
			
			var iReturnValue = 0;
			while( oElement != null ) {
			iReturnValue += oElement.offsetTop;
			oElement = oElement.offsetParent;
			}
			return iReturnValue;
		}
	}
	
	function getElementX(_id){
		
		if (document.getElementById(_id) != null){
			var oElement = document.getElementById(_id);
			
			var iReturnValue = 0;
			while( oElement != null ) {
			iReturnValue += oElement.offsetLeft;
			oElement = oElement.offsetParent;
			}
			return iReturnValue;
		}
	}
	
	/**
	 * 
	 * @param _idSource : id from which to position the new element
	 * @param _idDestination : id which has to be positionned
	 */
	function setsSubMenuPosition(_idSource, _idDestination){

		var sourceX = getElementX(_idSource);
		var sourceY = getElementY(_idSource);
		
		alert(sourceX + " " + sourceY);
		alert(finalX + " " + finalY);
		
		if (document.getElementById(_idDestination) != null){
			document.getElementById(_idDestination).style.left = sourceX + "px";
			document.getElementById(_idDestination).style.top = sourceY + "px";
		} 
	}
	
	
	function fadeForm(){
  	
		if (document.getElementById("cadre") != null)
			$("#cadre").fadeOut("fast");
		
		if (document.getElementById("allContent") != null)
			$("#allContent").fadeOut("fast");
  		
		if (document.getElementById("thanksContent") != null)
			$("#thanksContent:hidden:first").fadeIn("fast");
		
		if (document.getElementById("formThanksId") != null)
			$("#formThanksId:hidden:first").fadeIn("fast");
  		
  		if (document.getElementById("subAjaxLoader") != null)
  			document.getElementById("subAjaxLoader").style.display="none";
  		
	}
	
	function getScrollY() {
		  var  scrOfY = 0;
		  if( typeof( window.pageYOffset ) == 'number' ) {
		    //Netscape compliant
		    scrOfY = window.pageYOffset;
		  } else if( document.body && ( document.body.scrollLeft || document.body.scrollTop ) ) {
		    //DOM compliant
		    scrOfY = document.body.scrollTop;
		  } else if( document.documentElement && ( document.documentElement.scrollLeft || document.documentElement.scrollTop ) ) {
		    //IE6 standards compliant mode
		    scrOfY = document.documentElement.scrollTop;
		  }
		  return scrOfY ;
		}
	
	
	function getScrollX() {
		  var scrOfX = 0;
		  if( typeof( window.pageYOffset ) == 'number' ) {
		    //Netscape compliant
		    scrOfY = window.pageYOffset;
		  } else if( document.body && ( document.body.scrollLeft || document.body.scrollTop ) ) {
		    //DOM compliant
		    scrOfX = document.body.scrollLeft;
		  } else if( document.documentElement && ( document.documentElement.scrollLeft || document.documentElement.scrollTop ) ) {
		    //IE6 standards compliant mode
		    scrOfX = document.documentElement.scrollLeft;
		  }
		  return scrOfX;
		}
	
	
