var mouseX = 0;
var mouseY = 0;

function mousePosition(e)	{
	if (!e) e = window.event;	
	mouseX = (navigator.appName.substring(0,3) == "Net") ? e.pageX : event.x+document.body.scrollLeft;
	mouseY = (navigator.appName.substring(0,3) == "Net") ? e.pageY : event.y+document.body.scrollTop;
}

if(navigator.appName.substring(0,3) == "Net") document.captureEvents(Event.MOUSEMOVE);
document.onmousemove = mousePosition;


function uncheckbox() {
	var elements = document.getElementById('main').getElementsByTagName('input');
	for(var i=0; i<elements.length; i++)
	{
		if (elements[i].type == 'checkbox')
		{
			//console.log(elements[i].checked + " / " + elements[i].value);
			elements[i].checked = (elements[i].checked) ? false : true;
		}
	}
}

function showdepartement(url, departement) {

	closesWindow("listdepartement");
	closesWindow("listtype");
	closesWindow("listsstype");
	closesWindow("listdistrict");
	closesWindow("liststructuretype");
	closesWindow("listsecteur");
	
	
	url = "listdepartements.php?url=" + url + "&depOK=" + departement;
	var popup = document.createElement("div");

	document.body.appendChild(popup);
	popup.setAttribute('id','listdepartement');
	popup.setAttribute('class','departementWindow');
	popup.setAttribute('className','departementWindowIE');
	var obj = document.getElementById("selectordepartement");
	var posX = obj.offsetLeft + 34;
	var posY =  obj.offsetTop + 51;
	// console.log(posX);
	popup.style.left = posX + "px";
	popup.style.top = posY + "px";
	
	var fi = new FragmentImporter(url, test, popup);
	fi.load();
	
	
}

function showdistrict(url, district) {
	var posY = mouseY - 20;
	
	closesWindow("listtype");
	closesWindow("listsstype");
	closesWindow("listdistrict");
	closesWindow("liststructuretype");
	closesWindow("listsecteur");
	
	
	url = "listdistricts.php?url=" + url + "&distOK=" + district;
	var popup = document.createElement("div");
	popup.setAttribute('id','listdistrict');
	popup.setAttribute('class','districtWindow');
	popup.setAttribute('className','districtWindow');
	var obj = document.getElementById("selectordepartement");
	var posX = obj.offsetLeft  + 164;
	// console.log(posX);
	popup.style.left = posX + "px";
	
	popup.style.top = posY + "px";
	
	document.body.appendChild(popup);
	
	
	var fi = new FragmentImporter(url, test, popup);
	fi.load();
}

function showtype(url, type) {
	closesWindow("listdepartement");
	closesWindow("listtype");
	closesWindow("listsstype");
	closesWindow("listdistrict");
	closesWindow("liststructuretype");
	closesWindow("listsecteur");
	
	
	url = "listtypes.php?url=" + url + "&typeOK=" + type;
	var popup = document.createElement("div");
	popup.setAttribute('id','listtype');
	popup.setAttribute('class','typeWindow');
	popup.setAttribute('className','typeWindowIE');
	var obj = document.getElementById("selectortype");
	var posX = obj.offsetLeft + 34;
	var posY =  obj.offsetTop + 51;
	// console.log(posX);
	popup.style.left = posX + "px";
	popup.style.top = posY + "px";
	
	document.body.appendChild(popup);
	
	var fi = new FragmentImporter(url, test, popup);
	fi.load();
}

function showsstype(url, type) {
	var posY = mouseY - 20;
	
	closesWindow("listdepartement");
	closesWindow("listsstype");
	closesWindow("listdistrict");
	closesWindow("liststructuretype");
	closesWindow("listsecteur");
	
	
	// alert (posY);
	
	url = "listsstypes.php?url=" + url + "&sstypeOK=" + type;
	var popup = document.createElement("div");
	
	popup.setAttribute('id','listsstype');
	popup.setAttribute('class','sstypeWindow');
	popup.setAttribute('className','sstypeWindow');
	var obj = document.getElementById("selectortype");
	var posX = obj.offsetLeft + 164;
	// console.log(posX);
	popup.style.left = posX + "px";
	
	popup.style.top = posY + "px";
	
	
	document.body.appendChild(popup);
	// document.getElementById('listsstype').style.top = posY + "px";
	// console.log(posY);
	
	var fi = new FragmentImporter(url, test, popup);
	fi.load();
}

function showsecteur(url, secteur) {
	closesWindow("listdepartement");
	closesWindow("listtype");
	closesWindow("listsstype");
	closesWindow("listdistrict");
	closesWindow("liststructuretype");
	
	url = "listsecteurs.php?url=" + url + "&secteurOK=" + secteur;
	var popup = document.createElement("div");
	popup.setAttribute('id','listsecteur');
	popup.setAttribute('class','secteurWindow');
	popup.setAttribute('className','secteurWindowIE');
	
	var obj = document.getElementById("selectorsecteur");
	var posX = obj.offsetLeft + 34;
	var posY =  obj.offsetTop + 51;
	// console.log(posX);
	popup.style.left = posX + "px";
	popup.style.top = posY + "px";
	
	document.body.appendChild(popup);
	
	var fi = new FragmentImporter(url, test, popup);
	fi.load();
}

function showstructuretype(url, type) {
	closesWindow("listdepartement");
	closesWindow("listtype");
	closesWindow("listsstype");
	closesWindow("listdistrict");
	closesWindow("liststructuretype");
	closesWindow("listsecteur");
	
	url = "liststructurestypes.php?url=" + url + "&structuretypeOK=" + type;
	var popup = document.createElement("div");
	popup.setAttribute('id','liststructuretype');
	popup.setAttribute('class','structuretypeWindow');
	popup.setAttribute('className','structuretypeWindowIE');
	var obj = document.getElementById("selectorstructuretype");
	var posX = obj.offsetLeft + 34;
	var posY =  obj.offsetTop + 51;
	// console.log(posX);
	popup.style.left = posX + "px";
	popup.style.top = posY + "px";
	
	document.body.appendChild(popup);
	
	var fi = new FragmentImporter(url, test, popup);
	fi.load();
}

function blankText(id) {
	x = document.getElementById(id);
	x.value = '';
	
}

function blankAsk() {
	// index.php?region=0&departement=&secteur=$secteur&type=$type&nom=jeunesse&structureType=1&tri=ASC&showResult=1
	
	document.location.href = 'index.php?showResult=1';
}


function closesAllWindow(){
	closesWindow("listdepartement");
	closesWindow("listtype");
	closesWindow("listsstype");
	closesWindow("listdistrict");
	closesWindow("liststructuretype");
	closesWindow("listsecteur");
	
}

function closesWindow(id){
	try {
		document.body.removeChild(document.getElementById(id)) ;
	} catch(e) {}
}
function submit_form(repereform, xform) {
	xform.repere.value = repereform;
	xform.submit();
}

function ouv_fenetre(page) { 
	win = window.open(page,'newwindow','height=800,width=740,top=100,left=100,scrollbars=1,resizable=1');
	win.focus();
}

function test() {
	
}

// ---------- charger un XML dans un popup
function openPopup(url) {

	var popup = document.createElement("div");
	popup.setAttribute('id','popup');
	document.body.appendChild(popup);
	
	var fi = new FragmentImporter(url, test, popup);
	fi.load();
}

function closePopup() {
	document.body.removeChild(document.getElementById("popup")) ;
}



// fragmentImporter
// (c) Benoît PIN 2006 
// http://plinn.org
// Licence GPL

function FragmentImporter(url, onAfterPopulate, baseElement) {
	var thisImporter = this;
	this.url = url;
	this.onAfterPopulate = (!onAfterPopulate) ? function(){return;} : onAfterPopulate;
	this.baseElement = baseElement;
	//if (baseElement && window.console)
	//	console.warn('Deprecation warning : usage of baseElement will be removed. Use an xml based response.');
}

FragmentImporter.prototype._load = function(url) {
	var req = new XMLHttpRequest();
	var thisImporter = this;
	req.onreadystatechange = function() {
		switch (req.readyState) {
			case 1 :
				// éventuellement fonction qui affiche une barre de progression
				//showProgressImage();
				break;
			case 4 :
				// idem pour masquer
				//hideProgressImage();
				if (req.status == '200')
					thisImporter.populateBaseElement(req);
				else
					alert('Error: ' + req.status);
				
		};
	};

	//req.open("GET", url, true);
		req.open("POST", url, true);
		req.send(null);
};

FragmentImporter.prototype.load = function() {
	this._load(this.url);
};

FragmentImporter.prototype.useMacro = function(template, macro, fragmentId) {
	this._load(this.url + "/use_macro?template=" + template + "&macro=" + macro + "&fragmentId=" + fragmentId);
};


FragmentImporter.prototype.populateBaseElement = function(req) {
	// :( IE : innerHTML is read-only for these tags:
	// COL, COLGROUP, FRAMESET, HTML, STYLE, TABLE, TBODY, TFOOT, THEAD, TITLE, TR

	if (req.getResponseHeader('Content-Type').indexOf('text/html;charset=utf-8') != -1) {
		var fragments = req.responseXML.documentElement.childNodes;
		var fragment, dest, scripts;
		for (var i=0 ; i < fragments.length ; i++) {
			fragment = fragments[i];
			if (fragment.nodeName == 'fragment') {
				dest = document.getElementById(fragment.getAttribute('id'));
				dest.innerHTML = fragment.firstChild.nodeValue;
				
				scripts = dest.getElementsByTagName('script');
				for (var j=0 ; j < scripts.length ; j++)
					globalScriptRegistry.loadScript(scripts[j]);
			}
		}
	}
	else {
		this.baseElement.innerHTML = req.responseText;
		
//		var scripts = this.baseElement.getElementsByTagName('script');
//		for (var i=0 ; i < scripts.length ; i++)
//			globalScriptRegistry.loadScript(scripts[i]);
	}

	var onAfterPopulate = this.onAfterPopulate;
	if (typeof(onAfterPopulate) == "string") {
//		if (console)
//			console.warn('Deprecation warning : onAfterPopulate may not be a string (' + onAfterPopulate + ')');
		onAfterPopulate = eval(onAfterPopulate);
	}
	onAfterPopulate();
}


