
/*
   if(!isset($lang)) { $lang = "fr"; }

   <?php
   include("lang/lang_$lang.inc.php "); //on inclue le fichier de langue
   echo "<a href=\"\http://www.phportail.net\">$lien_phportail</a>";
   echo "<a href=\"http://www.webrankinfo.com\">$lien_wri</a>";
   ...
   ?>
   */

if(!document.getElementById){
	if(document.all){
		document.getElementById=function(){
			if(typeof document.all[arguments[0]]!="undefined"){return document.all[arguments[0]]}else{return null}
		}
	}else if(document.layers){
		document.getElementById=function(){
			if(typeof document[arguments[0]]!="undefined"){return document[arguments[0]]}else{return null}
		}
	}
}

if(document.all)
{
	document.getElementByName=function()
	{
		return document.all[arguments[0]];
	}
}

function initPage()
{
	displayCorrectMenu("accueil");
	var pageName = "accueil.php";
	makePOSTRequest(pageName,"",updateMainContent);
}

function subMenuClick(obj,e)
{

	var e = e?e:window.event;
	if (e==null)
	{
		return;
	}
	var srcElement = e.target;
	srcElement = srcElement?srcElement:e.srcElement;
	if (srcElement==null)
	{
		return;
	}
	//new Ajax.Updater('mainContent', 'serverResp.html', { method: 'get' });

	var levelN = srcElement.getAttribute("menuLevel");
	if (levelN == "level1") {
		var targetID = srcElement.parentNode.parentNode.parentNode.parentNode.id;
		var submenuID = srcElement.parentNode.parentNode.id;
		displayCorrectMenu(targetID,submenuID);
		//alert("Niveau: " + levelN + "\ntargetID: " + targetID + "\nsubmenuID: " + submenuID);
	} else {
		var targetID = srcElement.parentNode.parentNode.id;
		displayCorrectMenu(targetID);
	}
	//displayCorrectMenu(targetID,submenuID);

	var pageName = srcElement.getAttribute("pageName");
	makePOSTRequest(pageName,"",updateMainContent);
}

function getFormValues(fobj,valFunc)
{
	var str = "";
	var valueArr = null;
	var val = "";
	var cmd = "";

	for(var i = 0;i < fobj.elements.length;i++)
	{
		switch(fobj.elements[i].type)
		{
			case "text":
				if(valFunc)
				{
					//use single quotes for argument so that the value of
					//fobj.elements[i].value is treated as a string not a literal
					cmd = valFunc + "(" + 'fobj.elements[i].value' + ")";
					val = eval(cmd)
				}
				str += fobj.elements[i].name +
				"=" + escape(fobj.elements[i].value) + "&";
			break;
			case "hidden":
				if(valFunc)
				{
					//use single quotes for argument so that the value of
					//fobj.elements[i].value is treated as a string not a literal
					cmd = valFunc + "(" + 'fobj.elements[i].value' + ")";
					val = eval(cmd)
				}
				str += fobj.elements[i].name +
				"=" + escape(fobj.elements[i].value) + "&";
			break;
			case "select-one":
				str += fobj.elements[i].name +
				"=" + fobj.elements[i].options[fobj.elements[i].selectedIndex].value + "&";
			break;
			case "textarea":
				str += fobj.elements[i].name +
				"=" + escape(fobj.elements[i].value) + "&";
			break;
			case "radio":
				if(fobj.elements[i].checked) {
					str += fobj.elements[i].name +
					"=" + fobj.elements[i].value + "&";
				}
			break;
		}
	}
	str = str.substr(0,(str.length - 1));
	return str;
}

function postForm(url,f)
{
	var str = getFormValues(f);
	makeRealPOSTRequest(url,str,updateMainContent);
}

function goToLink(url)
{
	makePOSTRequest(url,"",updateMainContent);
	return false;
}

function displayCorrectMenu(targetID,submenuID)
{
	//alert("targetID: " + targetID + "\nsubmenuID: " + submenuID);
	if (targetID==null || targetID=="")
		return;

	var oAllMenus = document.getElementById("menu").childNodes;
	if (oAllMenus==null)
		return;

	for (var i=0;i<oAllMenus.length;i++)
	{
		if (!oAllMenus[i].getAttribute)
			continue;
		if (oAllMenus[i].getAttribute("name") != "subMenuContainer")
			continue;	
		var sCurrentID = oAllMenus[i].id;
		//alert(sCurrentID);

		var curSub = oAllMenus[i];
		var oAllSubMenus = curSub.childNodes;
		var mainSubMenu = null;
		for (var j=0;j<oAllSubMenus.length;j++)
		{
			if (!oAllSubMenus[j].getAttribute)
				continue;
			if (oAllSubMenus[j].getAttribute("name") == "subMenu")
			{
				mainSubMenu=oAllSubMenus[j];
				break;
			}	
		}

		if (mainSubMenu!=null)
		{
			if (targetID == sCurrentID)
			{
				mainSubMenu.style.display = "block";
				if (submenuID != null && submenuID != "") {
					displayCorrectsubMenu(targetID,submenuID);
				}
			}
			else
			{
				mainSubMenu.style.display = "none";
			}
		}
	}
}

function displayCorrectsubMenu(menuID,submenuID)
{
	//if (targetID==null || targetID=="")
	//	return;

	var oAllchildMenus = document.getElementById(menuID).childNodes;
	if (oAllchildMenus==null) {
		return;
	}

	for (var i=0;i<oAllchildMenus.length;i++)
	{
		var oAllsubMenus = oAllchildMenus[i].childNodes;
		if (oAllsubMenus==null) {
			return;
		}
		for (var j=0;j<oAllsubMenus.length;j++) {
			if (!oAllsubMenus[j].getAttribute)
				continue;
			if (oAllsubMenus[j].getAttribute("name") != "level2MenuContainer")
				continue;	

			var sL2CurrentID = oAllsubMenus[j].id;

			var curSub = oAllsubMenus[j];
			var oAllchildsubMenus = curSub.childNodes;
			var mainL2Menu = null;
			for (var k=0;k<oAllchildsubMenus.length;k++)
			{
				var oAllL2Menus = oAllchildsubMenus[k].childNodes;
				for (var l=0;l<oAllL2Menus.length;l++) {
					if (!oAllL2Menus[l].getAttribute)
						continue;
					if (oAllL2Menus[l].getAttribute("name") == "level2Menu") {
						mainL2Menu=oAllL2Menus[l];
						break;
					}	
				}

				if (mainL2Menu!=null) {
					if (submenuID == sL2CurrentID) {
						mainL2Menu.style.display = "block";
					} else {
						mainL2Menu.style.display = "none";
					}
				}
			}
		}
	}
}

var http_request = false;


function makeRealPOSTRequest(url, parameters, callback) {
	http_request = false;

	if (url==null || url=="")
		return;

	if (window.XMLHttpRequest) { 
		// Mozilla, Safari,...
		http_request = new XMLHttpRequest();
		if (http_request.overrideMimeType) {
			// set type accordingly to anticipated content type
			//http_request.overrideMimeType('text/xml');
			http_request.overrideMimeType('text/html');
		}
	} else if (window.ActiveXObject) { // IE
		try {
			http_request = new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e) {
			try {
				http_request = new ActiveXObject("Microsoft.XMLHTTP");
				http_request.overrideMimeType('text/html');
			} catch (e) {alert(e.description)}
		}
	}
	if (!http_request) {
		alert('Cannot create XMLHTTP instance');
		return false;
	}

	http_request.open('POST', url, true);
	http_request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	http_request.setRequestHeader("Content-length", parameters.length);
	http_request.setRequestHeader("Connection", "close");

	http_request.onreadystatechange = callback;
	/*http_request.onreadystatechange = function() {//Call a function when the state changes.
	  if(http_request.readyState == 4 && http_request.status == 200) {
	  alert(http_request.responseText);
	  }
	  }*/

	http_request.send(parameters);
}


function makePOSTRequest(url, parameters, callback) {
	http_request = false;

	var lang = document.getElementById("language");
	rexp = /\?/;
	if(rexp.test(url)) {
		url+="&language="+lang.value;
	} else {
		url+="?language="+lang.value;
	}

	if (url==null || url=="")
		return;

	if (window.XMLHttpRequest) { 
		// Mozilla, Safari,...
		http_request = new XMLHttpRequest();
		if (http_request.overrideMimeType) {
			// set type accordingly to anticipated content type
			//http_request.overrideMimeType('text/xml');
			http_request.overrideMimeType('text/html');
		}
	} else if (window.ActiveXObject) { // IE
		try {
			http_request = new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e) {
			try {
				http_request = new ActiveXObject("Microsoft.XMLHTTP");
				http_request.overrideMimeType('text/html');
			} catch (e) {alert(e.description)}
		}
	}
	if (!http_request) {
		alert('Cannot create XMLHTTP instance');
		return false;
	}

	http_request.onreadystatechange = callback;

	http_request.open('GET', url, true);
	// http_request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	//http_request.setRequestHeader("Content-length", parameters.length);
	http_request.setRequestHeader("Connection", "close");
	http_request.send(parameters);
}

function updateMainContent() {
	if (http_request.readyState == 4) {
		if (http_request.status == 200 || http_request.status == 0) {
			//alert(http_request.responseText);
			result = http_request.responseText;
			result = getBody(result);
			document.getElementById('mainContent').innerHTML = result;     
			gooleMap();

			//         } else {
			//            alert('There was a problem with the request.');
	}
	}
}

function getBody(content) 
{
	var x = content.indexOf("<body");
	if(x == -1) return content;

	x = content.indexOf(">", x);
	if(x == -1) return "";

	var y = content.lastIndexOf("</body>");
	if(y == -1) y = content.lastIndexOf("</html>");
	if(y == -1) y = content.length;    // If no html then just grab everything till end

	var z = content.slice(x + 1, y);   //make sure we grab the original content
	return z;
} 

function gooleMap()
{
	var map = new GMap(document.getElementById("map"));
	if (map==null)return;
	map.addControl(new GSmallMapControl());
	map.addControl(new GMapTypeControl());

	point = new GLatLng(43.606748, 6.751442);
	map.setCenter(point, 13);
	marker = new GMarker(point);
	map.addOverlay(marker);
	//map.centerAndZoom(new GPoint(6.751442,43.606748), 6);

}

function checkCaptcha(url,f)
{
	var str = getFormValues(f);
	makeRealPOSTRequest(url,str,getCaptchaResult(str));
}


function getCaptchaResult(st) {
	if (http_request.readyState == 4) {
		if (http_request.status == 200 || http_request.status == 0) {
			result = http_request.responseText;
			if(result == 'CodeOK') {
				return true;
			} else {
				alert(result);
				return false;
			}
		}
	}
}

// Disable text selection on galleries
function disableSelection(element) {
	element.onselectstart = function() {
		return false;
	};
	element.unselectable = "on";
	element.style.MozUserSelect = "none";
	element.style.cursor = "default";
}

