// POP UP
function popup(pop_url,pop_width,pop_height) {
	pop_left = (window.screen.availWidth / 2) - (pop_width / 2);
	pop_top = (window.screen.availHeight / 2) - (pop_height / 2);
	window.open(pop_url,"","left=" + pop_left + ",top=" + pop_top + ",width=" + pop_width + ",height=" + pop_height + ",scrollbars=yes,noresize");
}

// FERME/OUVRE UN BLOC
function display_block(nom){
	if(document.getElementById(nom).style.display == 'none') document.getElementById(nom).style.display = 'block';
	else document.getElementById(nom).style.display = 'none';
}

// FONCTION AJAX
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("Votre navigateur ne supporte pas les objets XMLHTTPRequest..."); 
		xhr = false; 
	} 
	return xhr
}

// AFFICHE AVEC AJAX
function ouvre_page(div,page,variable,type){
	var xhr = getXhr();
	xhr.onreadystatechange = function(){
		if(xhr.readyState == 4 && xhr.status == 200){
			document.getElementById(div).innerHTML = xhr.responseText;
		}
	}
	xhr.open(type,page,true);
	if(type=="POST"){
		xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
		xhr.send(variable);
	}
	else xhr.send(null);
}

// STYLE DE TEXTE
function style_texte(debut, fin, preview, champ) {
	var input = document.getElementById(champ);
	input.focus();
	if(typeof document.selection != 'undefined') {
		var range = document.selection.createRange();
		var insText = range.text;
		range.text = debut + insText + fin;
		range = document.selection.createRange();
		if (insText.length == 0) range.move('character', -fin.length);
		else range.moveStart('character', debut.length + insText.length + fin.length);
		range.select();
	}
	else if(typeof input.selectionStart != 'undefined') {
		var start = input.selectionStart;
		var end = input.selectionEnd;
		var insText = input.value.substring(start, end);
		input.value = input.value.substr(0, start) + debut + insText + fin + input.value.substr(end);
		var pos;
		if (insText.length == 0) pos = start + debut.length;
		else pos = start + debut.length + insText.length + fin.length;
		input.selectionStart = pos;
		input.selectionEnd = pos;
	}
	else {
		var pos;
		var re = new RegExp('^[0-9]{0,3}$');
		while(!re.test(pos)) {
		  pos = prompt("Insertion à la position (0.." + input.value.length + "):", "0");
		}
		if(pos > input.value.length) pos = input.value.length;
		var insText = prompt("Veuillez entrer le texte à formater:");
		input.value = input.value.substr(0, pos) + debut + insText + fin + input.value.substr(pos);
	}
	preview_texte(preview, champ);
}

// PREVISUALISATION DES TEXTES
function preview_texte(preview, champ){
	var contenu = document.getElementById(champ).value;
	
	var reg = new RegExp("(&)", "g");
	contenu = contenu.replace(reg, "[AMP]");
	var reg = new RegExp("(€)", "g");
	contenu = contenu.replace(reg, "[AMP]euro;");
		
	var xhr = getXhr();
	xhr.onreadystatechange = function(){
		if(xhr.readyState == 4 && xhr.status == 200){
			document.getElementById(preview).innerHTML = xhr.responseText;
			Cufon.replace('.font_din');
		}
	}
	xhr.open('POST', 'index.php', true);
	xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
	xhr.send('preview=ok&texte='+contenu);	
}

// AFFICHE LE DETAIL D'UN MAIL
function aff_detail_mails(type, id){
	if(document.getElementById('ligne_mails_'+id).className=='ligne_mails'){
		var mot_ereg = new RegExp("ligne_mails_","g");	
		var liste_mails = document.getElementById('liste_mails').getElementsByTagName('div');
		for(var i=0;i<liste_mails.length;i++){
			if(liste_mails[i].id.match(mot_ereg)){
				if(liste_mails[i].id=="ligne_mails_"+id){
					liste_mails[i].className = 'ligne_mails_gras';
					document.getElementById('detail_mails').style.display = 'block';
					ouvre_page('detail_mails', 'mails.php?aff_detail='+id+'&type='+type, '', 'GET');
				}
				else liste_mails[i].className = 'ligne_mails';
			}
		}
	}
}

/************************* FONCTIONS SPECIFIQUES AU SITE *************************/
//  AFFICHE LES FORMULAIRES EN FONCTION DE LA LANGUE SELECTIONNEE
function afflang(bloc, lang){
	var tablang = new Array('fr', 'en', 'de', 'ru', 'es', 'it');
	for(var i=0;i<tablang.length;i++){
		if(lang==tablang[i]){
			document.getElementById(bloc+'_'+tablang[i]).style.display = 'block';
			document.getElementById('lien_'+bloc+'_'+tablang[i]).className = 'select';
		}
		else{
			document.getElementById(bloc+'_'+tablang[i]).style.display = 'none';
			document.getElementById('lien_'+bloc+'_'+tablang[i]).className = '';
		}
	}
}

function display_form_recherche(){
	if(document.getElementById('form_recherche').style.display=='none'){
		document.getElementById('form_recherche').style.display = 'block';
		document.getElementById('bt_form_recherche').className = 'bouton_on';
	}
	else{
		document.getElementById('form_recherche').style.display = 'none';
		document.getElementById('bt_form_recherche').className = 'bouton_off';
	}
}

function aff_villas(id){
	if(document.getElementById('villas_'+id).style.display=='block') document.getElementById('villas_'+id).style.display = 'none';
	else{		
		var mot_ereg = new RegExp("villas_","g");	
		var liste_villas = document.getElementById('liste_villas').getElementsByTagName('div');
		for(var i=0;i<liste_villas.length;i++){
			if(liste_villas[i].id.match(mot_ereg) && liste_villas[i].id!="villas_"+id) liste_villas[i].style.display = 'none';
			else liste_villas[i].style.display = 'block';
		}
		
		document.location = "#ancre-"+id;
	}
}

function ajout_lien(preview, champ){
	var texte = prompt("Saisissez le texte du lien :", "");
	if(texte!=null){
		var url = prompt("Saisissez l\'URL :", "http://");
		if(url!=null && url!='http://'){
			style_texte('[lien|'+url+'|'+texte+']', '', preview, champ);
		}
	}
}

