var mon_x = 0;
var mon_y = 0;
var charge = false;

function update_ajax(url,div)
{	
	var myRequest = new Ajax.Request(url,
	{
	asynchronous:true,
	method:'get',
	evalScripts: true,
	onComplete: function(requester)
	{
		if (requester.status == 200){
		 		$(div).innerHTML = requester.responseText;
			}
		Element.hide('loading');
	},
	onLoading: function (requester)
	{
				Element.show('loading');
	}
	});
}

function update_ajax_eval(url,div)
{
new Ajax.Updater(div, url,{evalScripts: true});
}

function toggle_faq(id_quest)
{
	new Effect.toggle(id_quest,'blind');
}

function compte_a_rebours(secondes)
{
var h=Math.floor(secondes / 3600); 
var secondes=secondes % 3600;
var m=Math.floor(secondes/60); 
secondes=secondes % 60
var s=Math.floor(secondes);

	function decompte()
	{
		if (s>0) s--;
		else {s=59;
			if (m>0)m--;
			else if (h>0){h--; m=59;} 
				else {pe.stop(); s=0;}
			}
			if (s<10) s='0'+s.toString();
			if (m<10) m='0'+m.toString();
			if (h<10) h='0'+h.toString();
			
			s_string=s.toString();
			s_string=s_string.substring(s_string.length-2,s_string.length);
			
			m_string=m.toString();
			m_string=m_string.substring(m_string.length-2,m_string.length);
			
			h_string=h.toString();
			if (h<1000) h_string=h_string.substring(h_string.length-3,h_string.length);
			if (h<100) h_string=h_string.substring(h_string.length-2,h_string.length);
			
		$('chrono').innerHTML=h_string+":"+m_string+":"+s_string;
		if ( s==0 && m==0 && h==0 ) $('chrono').innerHTML='<a href="">R&eacute;cup&eacute;rer le diplome acquis</a>';
	}

pe = new PeriodicalExecuter(decompte, 1);
} 

function popup_url(mon_form) 
{
	var form = document.getElementById(mon_form);
	var url= prompt("Entrez une URL","http://");
	if(url != null && url != '')
	{
		var nom = prompt("Entrez un nom pour ce lien");
		if(nom != null && nom != '')
		{
			form.contenu.value +='[url='+url+']'+nom+'[/url]';
		}	
	}
}

function popup_img(mon_form) 
{
	var form = document.getElementById(mon_form);
	var img=prompt("Lien de votre image","http://");
	if(img != null && img !='')
	{
		form.contenu.value += '[img]'+img+'[/img]';	
	}
}

function fermer_infobulle(){
$('infobulle').style.visibility="hidden";
new Effect.Opacity('conteneur', {duration:0, fps:25, from:0.3, to:1.0});	
}

function MyFormHelp(){ }
 
MyFormHelp.prototype = {
    show : function(message){
	new Effect.Opacity('conteneur', {duration:0.0, fps:25, from:1.0, to:0.3});
	$('infobulle').style.visibility="visible";
	$('infobulle').style.top=(mon_y-30)+"px";
    $('infobulle').style.left=(document.body.clientWidth/2)+"px";
	$("infobulle").innerHTML = message+'<br/><a href="#" onclick="javascript:fermer_infobulle()">ok</a>';
	
	}
}

function MyFormHelp2(message){ 

	new Effect.Opacity('conteneur', {duration:0.0, fps:25, from:1.0, to:0.3});
	$('infobulle').style.visibility="visible";
	$('infobulle').style.top=mon_y+"px";
    $("infobulle").innerHTML = message+'<br/><span onclick="javascript:fermer_infobulle()">ok</span>';

}

function MyErrorDecorator(){
}
 
MyErrorDecorator.prototype = {
    start : function(){ 
    },
    addError : function(control, messageType){
        var message='';
        if(messageType == 1){
            message = control.errRequired;
        }else if(messageType == 2){
            message = control.errInvalid;
        }else{
            message = "Error on '"+control.label+"' field";
        }
        var item = document.createElement("li");
        $("infobulle").innerHTML =message;
		
    },
    end : function(){
		new Effect.Opacity('conteneur', {duration:0.0, fps:25, from:1.0, to:0.3});
		$('infobulle').style.visibility="visible";
		$('infobulle').style.top=mon_y+"px";
		$("infobulle").innerHTML += '<br/><a href="#" onclick="javascript:fermer_infobulle()">ok</a>';
		
	}
}

function pointeur(e) {
  if (navigator.appName!="Microsoft Internet Explorer") {
    mon_x=e.pageX - 5;
	mon_y=e.pageY - 1;
    }
    else {
    mon_x=window.event.clientX -5 + document.documentElement.scrollTop;
	mon_y=window.event.clientY -1 + document.documentElement.scrollTop;
  }
}
document.onmousemove=pointeur;

function afficher_liste(type_liste){
	var tab_liste=$$('.liste_marchand');
	for(var i=0;i<tab_liste.length;i++)
	{
		tab_liste[i].addClassName('invisible');
	}
	$(type_liste).removeClassName('invisible');
}

function affiche_deco(type_deco){
	var tab_liste=$$('ul.liste_decoration');
	for(var i=0;i<tab_liste.length;i++)
	{
		var mes_li=tab_liste[i].immediateDescendants();
		for(var j=0;j<mes_li.length;j++)
		{
			mes_li[j].addClassName('invisible');
		}
	}

	
	var tab_liste=$$('.'+type_deco);
	for(var i=0;i<tab_liste.length;i++)
	{
		tab_liste[i].removeClassName('invisible');
	}	
}

function achat_marchand(url,message_attente,message,prix){
	
	$('mess_attente').removeClassName('invisible');
	$('mess_achat').addClassName('invisible');
	var myRequest = new Ajax.Request(url,
	{	
	asynchronous:true,
	method:'get',
	evalScripts: true,
	onComplete: function(requester)
	{
		if (requester.status == 200){
				$('mess_achat').innerHTML=requester.responseText;
				$('mess_attente').addClassName('invisible');
				$('mess_achat').removeClassName('invisible');
		 		Element.hide('loading');
				var mes_sous=$('nombre_roublies').innerHTML.replace(/ /g,'');
				if(parseInt(mes_sous)>prix)	
				{
					mes_sous=parseInt(mes_sous)-prix;
					$('nombre_roublies').innerHTML=format(mes_sous);
				}
				$("infobulle").innerHTML = message+format($('nombre_roublies').innerHTML)+'<br/><span onclick="javascript:fermer_infobulle()">ok</span>';
			}		
	},
	onLoading: function (requester)
	{
				Element.show('loading');
				new Effect.Opacity('conteneur', {duration:0.0, fps:25, from:1.0, to:0.3});
				$('infobulle').style.visibility="visible";
				$('infobulle').style.top=mon_y+"px";
			    $("infobulle").innerHTML = message_attente;
	}
	});
}

function format(x) {
if (x==0) {return x;} else {
var str = x.toString(), n = str.length;

if (n <4) {return x;} else {

    return ((n % 3) ? str.substr(0, n % 3) + ' ' : '') + str.substr(n % 3).match(new RegExp('[0-9]{3}', 'g')).join(' ');
}}}

function autoscroll(div) //permet de descendre le scroll du div tout en bas
{
	var elm = $(div);
	elm.scrollTop = elm.scrollHeight;	
}

function requete_ajax(url)
{
	var myRequest = new Ajax.Request(url,
	{
	asynchronous:true,
	method:'get',
	evalScripts: true
	});
}

function requete_ajax_param(url,param)
{
	var myRequest = new Ajax.Request(url,
	{
	asynchronous:true,
	method:'get',
	parameters:param,
	evalScripts: true
	});
}

function urlencode(str) {
str = encodeURI(str);
str = str.replace(/\+/g, '%2B');
str = str.replace(/\&/g, '%26');
str = str.replace(/\"/g, '%27');
str = str.replace(/\?/g, '%3F');/*
str = str.replace('@', '%40');*/
return str;
}

function urldecode(str) {/*
str = str.replace('+', ' ');*/
str = decodeURI(str);
return str;
}

function lancement_affichage_news(){
new Effect.Opacity('conteneur', {duration:0.0, fps:25, from:1.0, to:0.3});
$('last_news').style.top="20px";
$('last_news').style.left=(document.body.clientWidth/2-320)+"px";
}

function fermer_last_news(url) {
$('last_news').style.visibility="hidden";
new Effect.Opacity('conteneur', {duration:0.0, fps:25, from:0.3, to:1.0});
requete_ajax(url);
}

function lecture_message_envoye(id_message,div){
	fermer_elements(div);
	$('contenu_message').style.top=(mon_y)+"px" ;
	$('contenu_message').innerHTML=$("post_envoi_"+id_message).innerHTML;
}

function inverse_selection(formulaire)
{
	temp = document.forms[formulaire].elements;
	for (i=0; i < temp.length; i++)
	{
		temp[i].checked=!temp[i].checked;
	}
}

function repondre_message(url)
{
	$('popup_messagerie').style.display="block";
	$('popup_messagerie').style.height="400px";
	$('popup_messagerie').style.width="800px";
	$('popup_messagerie').style.top="30px";
	$('popup_messagerie').style.left=(document.body.clientWidth/2-400)+"px";
	update_ajax_eval(url,'popup_messagerie');
}

function fermer_popup()
{
	$('popup_messagerie').style.display="none";
}


function pointeurX(e) {
  if (navigator.appName!="Microsoft Internet Explorer") {
    mon_x=e.pageX - 5;
	mon_y=e.pageY - 1;
    }
    else {
    mon_x=window.event.clientX -5 + document.documentElement.scrollTop;
	mon_y=window.event.clientY -1 + document.documentElement.scrollTop;
  }
  return mon_x;
}
document.onmousemove=pointeurX;
document.onmousedown=pointeurX;
function lecture_message_recu(id_message,url_lire_mess,div){
	requete_ajax(url_lire_mess);
	fermer_elements(div);	
	$("titre_recu_"+id_message).className='lu';
	$('contenu_message').style.top=(mon_y)+"px" ;
	$('contenu_message').innerHTML=$("post_recu_"+id_message).innerHTML;
	$('contenu_message').style.display="block";
}

function lecture_message_recu_non_lu(id_message,div){

	fermer_elements(div);
	$('contenu_message').style.top=(mon_y)+"px" ;
	$('contenu_message').innerHTML=$("post_recu_"+id_message).innerHTML;
	$('contenu_message').style.display="block";
}

function lecture_message_envoye(id_message,div){
	fermer_elements(div);
	$('contenu_message').style.top=(mon_y)+"px" ;
	$('contenu_message').innerHTML=$("post_envoi_"+id_message).innerHTML;
	$('contenu_message').style.display="block";
}

function fermer_elements(div){
var i=1;
$(div).childElements().each(function(item) {
	if(i%2==0)
	{ 
		if(item.style.display!="none")
		{
			var effet = new Effect.toggle(item,'blind');
			//afterFinish: function(effet){
			//item.style.display="none";};	
		}
	}
  i++;
});
}
function refresh_message(){if($('messagerie_menu')) update_ajax(url_refresh_message_header,'messagerie_menu');}

function choix_classement(div)
{
	var tab_liste=$$('.selection');
	for(var i=0;i<tab_liste.length;i++)
	{
		tab_liste[i].removeClassName('selection');
	}	
	var mes_li=$('liste_classements').immediateDescendants();
	for(var j=0;j<mes_li.length;j++)
	{
		mes_li[j].style.display="none";
	}
	
	$("menu_"+div).addClassName('selection');
	$(div).style.display="block";
}

var tooltip=function(){
var id = 'tt';
 var top = 3;
 var left = 3;
 var maxw = 300;
 var speed = 10;
 var timer = 20;
 var endalpha = 95;
 var alpha = 0;
 var tt,t,c,b,h;
 var ie = document.all ? true : false;
 return{
  show:function(v,w){
   if(tt == null && charge == true){
    tt = document.createElement('div');
    tt.setAttribute('id',id);
    t = document.createElement('div');
    t.setAttribute('id',id + 'top');
    c = document.createElement('div');
    c.setAttribute('id',id + 'cont');
    b = document.createElement('div');
    b.setAttribute('id',id + 'bot');
    tt.appendChild(t);
    tt.appendChild(c);
    tt.appendChild(b);
    document.body.appendChild(tt);
    tt.style.opacity = 0;
    tt.style.filter = 'alpha(opacity=0)';
    document.onmousemove = this.pos;
   }
   if(tt != null){
		tt.style.display = 'block';
		c.innerHTML = v;
		tt.style.width = w ? w + 'px' : 'auto';
		if(!w && ie){
			t.style.display = 'none';
			b.style.display = 'none';
			tt.style.width = tt.offsetWidth;
			t.style.display = 'block';
			b.style.display = 'block';
		}
		if(tt.offsetWidth > maxw){tt.style.width = maxw + 'px'}
		h = parseInt(tt.offsetHeight) + top;
		 
		
		clearInterval(tt.timer);
		tt.timer = setInterval(function(){tooltip.fade(1)},timer);
	 }
  },
  pos:function(e){
  if(tt != null){
   var u = ie ? event.clientY + document.documentElement.scrollTop : e.pageY;
   var l = ie ? event.clientX + document.documentElement.scrollLeft : e.pageX;
   var pos_top=(u - h);
   if(pos_top<0)	pos_top=0;
   tt.style.top = pos_top + 'px';
   var pos_left=(l + left);
   if(pos_left<0)	pos_left=0;
   tt.style.left = pos_left + 'px';
   }
  },
  fade:function(d){
  if(tt != null){
   var a = alpha;
   if((a != endalpha && d == 1) || (a != 0 && d == -1)){
    var i = speed;
   if(endalpha - a < speed && d == 1){
    i = endalpha - a;
   }else if(alpha < speed && d == -1){
     i = a;
   }
   alpha = a + (i * d);
   tt.style.opacity = alpha * .01;
   tt.style.filter = 'alpha(opacity=' + alpha + ')';
  }else{
    clearInterval(tt.timer);
     if(d == -1){tt.style.display = 'none'}
  }
  }
 },
 hide:function(){
 if(tt != null){
  clearInterval(tt.timer);
  tt.timer = setInterval(function(){tooltip.fade(-1)},timer);
 }
  } 
 };
}();

Event.observe(window, 'load', function() 
{
	new PeriodicalExecuter(refresh_message, 60);
	charge = true;
});