function $(id){
	return document.getElementById(id);
}

//	Instanciation XMLHttpRequest object 
function getXhr(){
	var xhr = null;
	if(window.XMLHttpRequest){
		xhr = new XMLHttpRequest();
	}
	else if(window.ActiveXObject){
		try{
			xhr = new ActiveXObject("Msxml2.XMLHTTP");
		}
		catch(e){
			xhr = new ActiveXObject("Microsoft.XMLHTTP");
		}
	}
	else{
		alert("Your browser does not support AJAX..."); 
		xhr = false; 
	}
		
  return xhr;
}

//	Node cleaner : supprime les noeuds vides sous FF (et les autres)
function go(c){
	if(!c.data.replace(/\s/g,'')){
		c.parentNode.removeChild(c);
	}
}
function clean(d){
	var bal = d.getElementsByTagName('*');

	for(i = 0; i < bal.length; i++){
		a = bal[i].previousSibling;
		if(a && a.nodeType == 3){
			go(a);
		}
		b = bal[i].nextSibling;
		if(b && b.nodeType == 3){
			go(b);
		}
	}
	return d;
}

//	Afficher la confirmation
function displayConfirmation(){
	var buffer = '';
	 buffer = $('temp_conf').innerHTML;
	 if(buffer != ''){
	 	$('confirm').innerHTML = buffer;
	 }
}

//	Afficher la description rapide en fonction du projet choisi
function swapPackage(id){
	var optid = $(id).value;
	$('package-description').style.display = 'block';
	$('package-description').innerHTML = '<p style="text-align:center;"><img src="/images/loading.gif" alt="" /></p>';
	setTimeout(function(){
	$('package-description').innerHTML = $('pack-' + optid).innerHTML;
	}, 1000);
	return;
}

//	Désactiver le custom e-mail si la case automatique est activée
function disableCustomEmail(){
	if($('email').checked == true){
		$('custom_email').disabled = true;
	}
	else{
		$('custom_email').disabled = false;
	}
	return;
}

function listThematiques(){
	var query = '';
	var kw = $('keyword').value;
	var id = $('id').value;
	if(kw != '' && kw != ' ' && kw != 'keyword' && !isNaN(id) && id != 0){
		$('wait').style.display = 'inline';
		query = '/thematique.php?kw=' + encodeURI(kw) +'&id='+ id;
		var xhr = getXhr();
		xhr.onreadystatechange = function() {processThematiques(xhr);};
		xhr.open("GET", query, true);
		xhr.send(null);
	}
	return;
}

//	Remplissage de la liste des thématiques
function processThematiques(xhr){
	var buffer = '';
	if(xhr.readyState == 4){
		$('wait').style.display = 'none';
		var docXML = clean(xhr.responseXML);
		var result = docXML.getElementsByTagName("result");
		var li = docXML.getElementsByTagName("li");
		var error = docXML.getElementsByTagName("error");
		if(error.length>0){
			alert(error.item(0).firstChild.data);
			return;
		}
		else{
			for(i=0; i<li.length; i++){
				buffer += '<li id="'+ li.item(i).getAttribute('id') +'" class="dragged">'+ unescape(li.item(i).firstChild.data) +'</li>' + "\n";
			}
			$('drag').innerHTML = buffer;
			Sortable.create('drag', {tag:'li', containment:['thematique', 'drag'], dropOnEmpty:true, ghosting:false, constraint:false});
			Sortable.create('thematique',{tag:'li', containment:['drag','thematique'], dropOnEmpty:true, ghosting:false, constraint:false});					
			Droppables.add('thematique',{ accept:'dragged', onDrop:function(element){addElement(element)}});
			Droppables.add('drag',{ accept:'dragged', onDrop:function(element){backElement(element)}});
		}
		
	}
}

//	Ajout élément dans choix thématiques
function addElement(id){
	var li = document.createElement('li');
	li.innerHTML = $(id).innerHTML;
	li.className = $(id).className;
	li.id =  $(id).id;
	$('thematique').appendChild(li);
}

//	Remise élément dans liste thématique originale
function backElement(id){
	var li = document.createElement('li');
	li.innerHTML = $(id).innerHTML;
	li.className = $(id).className;
	li.id =  $(id).id;
	$('drag').appendChild(li);
}

//	Enregistrer les thématiques
function saveThematiques(){
	var li = $('thematique').getElementsByTagName('li');
	var ids = new Array();
	for(i=0; i<li.length; i++){
		 ids[i] = li[i].id;
	}
	$('thematiques').value = ids.join('|');
	if($('thematiques').value != ''){
		$('form-thematiques').submit();
	}
	return;
}