var isWorking = false;        // est-ce que le canal est occupé
var Obj;
var posX = 0
var posY = 0

function getHTTPObject() {
  var xmlhttp;
/*@cc_on
@if (@_jscript_version >= 5)
try { xmlhttp = new ActiveXObject("Msxml2.XMLHTTP"); }
catch (e) { try { xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); } catch (E) { xmlhttp = false; } }
@else xmlhttp = false;
@end @*/
  if (!xmlhttp && typeof XMLHttpRequest != 'undefined') {
    try {
      xmlhttp = new XMLHttpRequest();
      } catch (e) {
      xmlhttp = false;
      }
  }
	return xmlhttp;
}

var http = getHTTPObject();

function _remote(serveur, esclave) {
	if (!isWorking && http) {
		http.open("GET", serveur, true);
		http.setRequestHeader("Cache-Control","no-cache");
		http.onreadystatechange = esclave;
		isWorking = true;
		http.send(null);
	}
}

// Liste des Villes
function villes_liste() {
	ch = document.formulaire.ville.value;

	if (ch.length>2)
		_remote("/include/remote.php?fonc=villes_liste&abr=" + escape(ch), _villes_liste);

	if ((ch.length<3) && (document.getElementById('res_villes').style.visibility == 'visible'))
		document.getElementById('res_villes').style.visibility = 'hidden';
}
function _villes_liste() {
	if (http.readyState == 4) {
		if (http.responseText.indexOf('invalid') == -1) {
			var xmlDocument = http.responseXML;
			var res = xmlDocument.getElementsByTagName('name').item(0).firstChild.data;
			var elements = res.split(";");
			var result = '';
			if (elements[0] != '') {
				for (var i=0;i<elements.length;i++) {
					result = result + "<a style=\"text-decoration:none;color:red;\" href=\"javascript:setQuery_ville('" + elements[i] + "');\">" + elements[i] + "</a><br />";
				}
				document.getElementById('res_villes').innerHTML = result;
				document.getElementById('res_villes').style.visibility = 'visible';
			}
			else document.getElementById('res_villes').style.visibility = 'hidden';

			isWorking = false;
		}
	}
}
function setQuery_ville(ch){
    document.getElementById('ville').value = ch;
    document.getElementById('res_villes').style.visibility = 'hidden';
}

// Liste des provinces / états
function provinces_liste() {
	ch = document.formulaire.province.value;

	if (ch.length>2)
		_remote("/include/remote.php?fonc=provinces_liste&abr=" + escape(ch), _provinces_liste);

	if ((ch.length<3) && (document.getElementById('res_provinces').style.visibility == 'visible'))
		document.getElementById('res_provinces').style.visibility = 'hidden';
}

function _provinces_liste() {
	if (http.readyState == 4) {
		if (http.responseText.indexOf('invalid') == -1) {
			var xmlDocument = http.responseXML;
			var res = xmlDocument.getElementsByTagName('name').item(0).firstChild.data;
			var elements = res.split(";");
			var result = '';
			if (elements[0] != '') {
				for (var i=0;i<elements.length;i++) {
					result = result + "<a style=\"text-decoration:none;color:red;\" href=\"javascript:setQuery_province('" + elements[i] + "');\">" + elements[i] + "</a><br />";
				}
				document.getElementById('res_provinces').innerHTML = result;
				document.getElementById('res_provinces').style.visibility = 'visible';
			}
			else document.getElementById('res_provinces').style.visibility = 'hidden';

			isWorking = false;
		}
	}
}
function setQuery_province(ch){
    document.getElementById('province').value = ch;
    document.getElementById('res_provinces').style.visibility = 'hidden';
}


// Envoyer à un ami
function remote_tell_a_friend(membre_nom, membre_courriel, nom, courriel, lien) {
	_remote("/include/remote.php?fonc=remote_tell_a_friend&membre_nom=" + escape(membre_nom) + "&membre_courriel=" + escape(membre_courriel) + "&nom=" + escape(nom)+ '&courriel=' + escape(courriel) + '&lien=' + escape(lien) , _remote_tell_a_friend);
}
function _remote_tell_a_friend() {
	if (http.readyState == 4) {
		if (http.responseText != '') {
			alert(http.responseText);
			if (http.responseText.indexOf('successfully') != -1) {
				d = document.form_friend;
				d.nom.value = '';
				d.courriel.value = '';
				d.membre_nom.value = '';
			}
		}

		isWorking = false;
	}
}

// Galerie - Bande de photos
function galerie_bande_photos(categorie,tri,_id,pos,ct) {
	if (! pos) pos = '';
	var laDate = new Date();
	if (ct != '') ct = 1;
	else ct = 0;
	_remote("/include/remote.php?fonc=galerie_bande_photos&date=" + laDate.getMilliseconds() + "&categorie=" + categorie + '&tri=' + tri + '&_id=' + _id + '&pos=' + pos + '&ct=' + ct, _galerie_bande_photos);
}
function _galerie_bande_photos() {
	if (http.readyState == 4) {
		document.getElementById('galerie_bande').innerHTML = '';
		if (http.responseText != '')
			document.getElementById('galerie_bande').innerHTML = http.responseText;

		isWorking = false;
	}
}

// Galerie - Pod de photos
function pod_bande_photos(pod,pos,qte,pod_largeur) {
	var laDate = new Date();
	_remote("/include/pod/" + pod + ".php?date=" + laDate.getMilliseconds() + "&pod=" + pod + '&pos=' + pos + '&qte=' + qte + '&pod_largeur=' + pod_largeur, _pod_bande_photos);
}
function _pod_bande_photos() {
	if (http.readyState == 4) {
		if (http.responseText != '') {
//			document.write('<div style="position:absolute; z-index:999; width:300px; height:200px; top:1300px; left:10px; background-color:#EEEEEE;" onclick="this.style.display=\'none\'">' + http.responseText + '</div>');
			data = http.responseText.split('|');
			document.getElementById('pod_'+data[0]).innerHTML = data[1];
		}
		
		isWorking = false;
	}
}
function afficher_bande_photos(pods,pos,qte) {
	temps = 1;
	for (var i in pods) {
		setTimeout( "pod_bande_photos('"+pods[i]+"',"+pos+","+qte+")", 300 * temps );
		temps++;
	}
}


// Articles - Afficher sous-article
function remote_sous_article(_id) {
	_remote("/include/remote.php?fonc=remote_sous_article&id=" + _id, _remote_sous_article);
}
function _remote_sous_article() {
	if (http.readyState == 4) {
		if (http.responseText != '') {
			data = http.responseText.split('|');
			document.getElementById('article_img').src = '/articles/photos/' + data[0] + '.jpg';
			document.getElementById('photographe_div').innerHTML = data[1];
			if (data[2] != '')
				document.getElementById('article_div').innerHTML = data[2];
			else
				document.getElementById('article_div').innerHTML = contenu;
		}
		else {
			document.getElementById('article_img').src = '/articles/photos/' + _id + '.jpg';
			document.getElementById('article_div').innerHTML = contenu;
			document.getElementById('photographe_div').innerHTML = photographe;
		}
		isWorking = false;
	}
}
// checkUserEmail
function checkUserEmail(user) {
	ch = document.formulaire.courriel.value;

	if (ch.length>2)
		_remote("/include/remote.php?fonc=checkUserEmail&abr=" + escape(ch), _checkUserEmail);
}
function _checkUserEmail() {
	if (http.readyState == 4) {
		if (http.responseText.indexOf('existe') == -1) {
			document.formulaire.submit();
		}
		else {
			alert('This Email exist in the Database.');
		}

		isWorking = false;
	}
}

function remoteModels(code) {
	if (code != '')
		_remote("/include/remote.php?fonc=remoteModels&abr=" + code, _remoteModels);
}
function _remoteModels() {
	if (http.readyState == 4) {
		if (http.status == 200)
			document.getElementById('divModels').innerHTML = http.responseText;

		isWorking = false;
	}
}

function remoteListeTypes(code) {
	if (code != '' && code > 0)
		_remote("/include/remote.php?fonc=remoteListeTypes&abr=" + code, _remoteListeTypes);
}
function _remoteListeTypes() {
	if (http.readyState == 4) {
		if (http.responseText != '') {
			document.getElementById('listeTypes').innerHTML = http.responseText;
		}
		else document.getElementById('listeTypes').innerHTML = '';
		
		document.getElementById('contenu_txt').innerHTML = '';

		isWorking = false;
	}
}

function feedRSS_config(lien) {
	if (lien != '')
		_remote("/include/remote.php?fonc=feedRSS_config&abr=" + escape(lien), _feedRSS_config);
}
function _feedRSS_config() {
	if (http.readyState == 4) {
		if (http.responseText != '') {
			contenu = http.responseText.split('|');
			d = document.formulaire;
			d.titre.value = contenu[0];
			d.lien.value = contenu[1];
			d.date_in.value = contenu[2];
			document.getElementById('date_txt').innerHTML = contenu[2];
			d.description.value = contenu[3];
		}
		else alert('This feed return no data.');

		isWorking = false;
	}
}

function resultatRecherche(obj) {
	Obj = obj;
	post = faire_POST(obj);
	
	_remote("/include/remote.php?fonc=resultatRecherche" + post, _resultatRecherche);
}
function _resultatRecherche() {
	if (http.readyState == 4) {
		if (http.responseText != '') {
			document.getElementById('contenu_txt').innerHTML = http.responseText;
		}
		else document.getElementById('contenu_txt').innerHTML = '';

		isWorking = false;
	}
}

function ip2location_liste_provinces(obj) {
	if (obj && obj.value != '') {
		document.getElementById('DIVloading').style.display = 'block';
		_remote("/include/remote.php?fonc=ip2location_liste_provinces&abr=" + obj.value, _ip2location_liste_provinces);
	}
}
function _ip2location_liste_provinces() {
	if (http.readyState == 4) {
		d = document.formulaire;
		d.province.options.length = 0;
		d.ville.options.length = 0;
		
		if (http.responseText != '') {
			liste = http.responseText.split("\n");
			for (i=0; i < liste.length; i++)
				if (liste[i].length > 0)
					d.province.options[i] = new Option(liste[i],liste[i]);
			
			if (liste.length > 0)
				d.province.options[0].selectedIndex = true;

			document.getElementById('DIVloading').style.display = 'none';
		}

		isWorking = false;
	}
}

function ip2location_liste_villes(obj) {
	if (obj && obj.value != '') {
		document.getElementById('DIVloading').style.display = 'block';
		_remote("/include/remote.php?fonc=ip2location_liste_villes&abr=" + obj.value, _ip2location_liste_villes);
	}
}
function _ip2location_liste_villes() {
	d = document.formulaire;
	d.ville.options.length = 0;
	
	if (http.readyState == 4) {
		if (http.responseText != '') {
			liste = http.responseText.split("\n");
			for (i=0; i < liste.length; i++)
				if (liste[i].length > 0)
					d.ville.options[i] = new Option(liste[i],liste[i]);
			
			if (liste.length > 0)
				d.ville.options[0].selectedIndex = true;

			document.getElementById('DIVloading').style.display = 'none';
		}

		isWorking = false;
	}
}

///////////////////////////////////////////////
// Fonctions et classes
function remplacer(source,varIN,varOUT) {
	retour = '';
	for (i=0; i < source.length; i++) {
		s = source.substr(i,1);
		if (s == varIN) retour += varOUT;
		else retour += s;
	}
	
	return retour;
}

function number_format(valeur) {
	result = Math.floor(valeur) + ".";
	cents = 100*(valeur-Math.floor(valeur))+0.5;
	result += Math.floor(cents/10);
	result += Math.floor(cents%10);
	return result;
}

function faire_POST(obj) {
	post = '';
	for (i=0; i < obj.elements.length; i++) {
		if (obj.elements[i].name && obj.elements[i].name != '') {
			if (obj.elements[i].getAttribute('type') == 'radio' || obj.elements[i].getAttribute('type') == 'checkbox') {
				if (obj.elements[i].checked == true) post += '&' + obj.elements[i].name + '=' + escape(obj.elements[i].value);
			}
			else
				post += '&' + obj.elements[i].name + '=' + escape(obj.elements[i].value);
		}
	}
	
	return post;
}

// Position de la souris
if (document.addEventListener) {
  document.addEventListener('mouseover', getMouseXY, false);
} else if (document.attachEvent) {
  document.attachEvent('onmouseover', getMouseXY);
}

var IE = document.all?true:false;
//if (!IE) document.captureEvents(Event.MOUSEMOVE);
//document.onmousemove = getMouseXY;

function getMouseXY(e) {
/*  if (IE) { // grab the x-y pos.s if browser is IE
	if (document.body) {
		posX = event.clientX + document.body.scrollLeft;
		if (document && document.body.scrollTop == 0)
			posY = event.clientY + document.documentElement.scrollTop;
		else
			posY = event.clientY + document.body.scrollTop;
	}
  } else {  // grab the x-y pos.s if browser is NS
    posX = e.pageX;
    posY = e.pageY;
  }*/
  posX = e.clientX;
  posY = e.clientY;
  if (posX < 0){posX = 0};
  if (posY < 0){posY = 0};
  return true;
}

// Pour scroller les bandes de photos
var drapeau_bande = false;
function scroll_bandeOver(obj, direction, orientation) {
	if ( document.getElementById(obj) ) {
		drapeau_bande = true;
		scroll_bande(obj, direction, orientation);
	}
}
function scroll_bande(obj, direction, orientation) {
	if ( drapeau_bande == true ) {
		d = document.getElementById(obj);
		if ( direction == -1 ) {
			if (orientation && orientation == 'v')
				d.scrollTop = d.scrollTop - 10;
			else {
				d.scrollLeft = d.scrollLeft - 10;
				if ( document.getElementById(obj + '_2') )
					document.getElementById(obj + '_2').src = '/images/gallery/bottom-pics/right-arrow.gif';
			}
		}
		if ( direction == 1 ) {
			if (orientation && orientation == 'v')
				d.scrollTop = d.scrollTop + 10;
			else {
				d.scrollLeft = d.scrollLeft + 10;
				if ( document.getElementById(obj + '_1') )
					document.getElementById(obj + '_1').src = '/images/gallery/bottom-pics/left-arrow.gif';
			}
		}
		if (orientation && orientation == 'v') {
			if ( d.scrollTop > 0 && d.scrollTop < d.scrollHeight )
				setTimeout("scroll_bande('" + obj + "', " + direction + ", 'v');", 80);
		}
		else {
			if ( d.scrollLeft > 0 && d.scrollLeft < d.scrollWidth )
				setTimeout("scroll_bande('" + obj + "', " + direction + ");", 80);
			
			if ( d.scrollLeft < 1 && document.getElementById(obj + '_1') )
				document.getElementById(obj + '_1').src = '/images/gallery/bottom-pics/left-arrow-2.gif';
			if ( d.scrollLeft > d.scrollWidth - d.clientWidth - 10 && document.getElementById(obj + '_2') )
				document.getElementById(obj + '_2').src = '/images/gallery/bottom-pics/right-arrow-2.gif';
		}
	}
}
function scroll_bandeOut() {
	drapeau_bande = false;
}

var scroll_down_pos = -10000;
function scroll_down(obj, debut, fin) {
	if ( scroll_down_pos == -10000 ) scroll_down_pos = debut;
	if ( d = document.getElementById(obj) ) {
		scroll_down_pos = scroll_down_pos + 10;
		d.style.top = scroll_down_pos + 'px';
		if (scroll_down_pos < fin)
			setTimeout("scroll_down('" + obj + "', " + debut + ", " + fin + ");", 50);
	}
}

// Rating
var Etoiles = {
	init: function (module,media,moyenne) {
		this.module = module;
		this.media = media;
		moyenne = Math.floor(moyenne);
		if (moyenne <= 10 && moyenne > 0) {
			this.resultat = Array();
			if (moyenne == 1) this.resultat[0] = 1; else this.resultat[0] = 0;
			if (moyenne > 1) this.resultat[0] = 2;
			if (moyenne == 3) this.resultat[1] = 1; else this.resultat[1] = 0;
			if (moyenne > 3) this.resultat[1] = 2;
			if (moyenne == 5) this.resultat[2] = 1; else this.resultat[2] = 0;
			if (moyenne > 5) this.resultat[2] = 2;
			if (moyenne == 7) this.resultat[3] = 1; else this.resultat[3] = 0;
			if (moyenne > 7) this.resultat[3] = 2;
			if (moyenne == 9) this.resultat[4] = 1; else this.resultat[4] = 0;
			if (moyenne > 9) this.resultat[4] = 2;
		}
		else
			this.resultat = Array(0,0,0,0,0);
		
		this.images = Array();
		this.images[0] = "/images/ratingstar_empty.jpg";
		this.images[1] = "/images/ratingstar_half.jpg";
		this.images[2] = "/images/ratingstar_full.jpg";
		
		this.afficher(this.resultat);
	},
	retablir: function () {
		document.getElementById('etoile_1_' + this.media).src = this.images[this.resultat[0]];
		document.getElementById('etoile_2_' + this.media).src = this.images[this.resultat[1]];
		document.getElementById('etoile_3_' + this.media).src = this.images[this.resultat[2]];
		document.getElementById('etoile_4_' + this.media).src = this.images[this.resultat[3]];
		document.getElementById('etoile_5_' + this.media).src = this.images[this.resultat[4]];
	},
	selectionner: function (_id) {
		document.getElementById('etoile_1_' + this.media).src = this.images[ (_id > 0)?2:0 ];
		document.getElementById('etoile_2_' + this.media).src = this.images[ (_id > 1)?2:0 ];
		document.getElementById('etoile_3_' + this.media).src = this.images[ (_id > 2)?2:0 ];
		document.getElementById('etoile_4_' + this.media).src = this.images[ (_id > 3)?2:0 ];
		document.getElementById('etoile_5_' + this.media).src = this.images[ (_id > 4)?2:0 ];
	},
	voter: function (vote) {
		switch (this.module) {
			case 2: voter_photo(this.media, vote); break;
			case 3: voter_article(this.media, vote); break;
			case 4: voter_photo_membre(this.media, vote); break;
			case 5: voter_video(this.media, vote); break;
			case 6: voter_blog(this.media, vote); break;

		}
	},
	afficher: function (resultat) {
		document.write( '<div onmouseout="Etoiles.retablir()">' );
		document.write( '<img id="etoile_1_' + this.media + '" src="' + this.images[resultat[0]] + '" width="14" height="14" border="0" style="cursor:pointer;" onmouseover="Etoiles.selectionner(1)" onclick="Etoiles.voter(1)" />' );
		document.write( '<img id="etoile_2_' + this.media + '" src="' + this.images[resultat[1]] + '" width="14" height="14" border="0" style="cursor:pointer;" onmouseover="Etoiles.selectionner(2)" onclick="Etoiles.voter(2)" />' );
		document.write( '<img id="etoile_3_' + this.media + '" src="' + this.images[resultat[2]] + '" width="14" height="14" border="0" style="cursor:pointer;" onmouseover="Etoiles.selectionner(3)" onclick="Etoiles.voter(3)" />' );
		document.write( '<img id="etoile_4_' + this.media + '" src="' + this.images[resultat[3]] + '" width="14" height="14" border="0" style="cursor:pointer;" onmouseover="Etoiles.selectionner(4)" onclick="Etoiles.voter(4)" />' );
		document.write( '<img id="etoile_5_' + this.media + '" src="' + this.images[resultat[4]] + '" width="14" height="14" border="0" style="cursor:pointer;" onmouseover="Etoiles.selectionner(5)" onclick="Etoiles.voter(5)" />' );
		document.write( '</div>' );
	}
};


function afficher_page(page, direction) {
	if ( document.getElementById('contenu_' + (page + direction)) ) {
		document.getElementById('contenu_' + page).style.display = 'none';
		document.getElementById('contenu_' + (page + direction)).style.display = 'block';
	}
}

function max_caracteres(obj,nombre) {
	if (obj.value.length > nombre) {
		obj.value = obj.value.substr(0, nombre);
		alert("You have reach the maximum of characters.");
	}
}

// Petite fenetre popUp
function popup(lien, largeur, hauteur) {
	if (! largeur) largeur = 300;
	if (! hauteur) hauteur = 300;
	open(lien, 'fenetre', 'scrollbars=1,width=' + largeur + ',height=' + hauteur);
}

// Si "Enter" est détecté, faire la fonction fonc
function checkEnter(e, fonc) {
	var caractere;
	
	if (e && e.which) {
		e = e;
		caractere = e.which;
	}
	else {
		e = event;
		caractere = e.keyCode;
	}
	
	if (caractere == 13) {
		eval(fonc + ";");
		return false;
	}
	else {
		return true;
	}
}

function fermer_frame() {
	document.getElementById('opaque').style.display='none';
	document.getElementById('fenetre_frame').style.display='none';
}

function fermer_div() {
	document.getElementById('opaque').style.display='none';
	document.getElementById('fenetre_div').style.display='none';
}


/*
	Facebook Sumission
*/

function fbs_click() 
{
	u=location.href;
	t=document.title;
	window.open('http://www.facebook.com/sharer.php?u='+encodeURIComponent(u)+'&t='+encodeURIComponent(t),'sharer','toolbar=0,status=0,width=626,height=436');
	return false;
}


/*
	MySpace Sumission
*/
function myspace()
{
url = encodeURIComponent(location.href) ;
title = encodeURIComponent(document.title);
fullurl = 'http://www.myspace.com/Modules/PostTo/Pages/?u=' + url + '&t=' + title;
 
window.open(fullurl);
}


/*
	Digg Sumission
*/
function digthis(type,sdesc)
{

	if(type == 1)
	{
		
		url = encodeURIComponent(location.href) ;
		title = encodeURIComponent(document.title);
		desc = encodeURIComponent(sdesc);
		fullurl = 'http://digg.com/submit?url=' + url + '&title=' + title + '&bodytext=' + desc + '&media=News';
		//alert(fullurl);
		window.open(fullurl);
	}else
	{
		url = encodeURIComponent(location.href) ;
		title = encodeURIComponent(document.title);
		desc = encodeURIComponent(sdesc) ;
		fullurl = 'http://digg.com/submit?url=' + url + '&title=' + title + '&bodytext=' + desc + '&media=News';
	 	window.open(fullurl);
	}
}
