var x = 0;
var y = 0;
var posX = 0;
var posY = 0;
var helpBoxWidth=250;

var sur_lien=false;
var is_visible=false;

if (document.getElementById)
{
	if(navigator.appName.substring(0,3).toLowerCase() == "net")
	{
		document.captureEvents(Event.MOUSEMOVE);
	}
	document.onmousemove = posSouris;
}

function posSouris(e)
{
	if(!e) e = window.event;
	x = e.clientX;
	y = e.clientY; 
	
	if(sur_lien)
	{
		// Si la bulle est visible, on calcule en temps reel sa position ideale
		
		// Si on n'est pas sous IE
		if (navigator.appName!="Microsoft Internet Explorer")
		{
			x=e.pageX;
			y=e.pageY;
		}
		else
		{
			if(document.documentElement.clientWidth>0)
			{
				x=event.x+document.documentElement.scrollLeft;
				y=event.y+document.documentElement.scrollTop;
			}
			else
			{
				x=event.x+document.body.scrollLeft;
				y=event.y+document.body.scrollTop;
			}
		}
		
		if( (document.body.offsetWidth-x) < (helpBoxWidth+40) )
		{
			$("helpBox").style.left=(x-helpBoxWidth)+"px";
		}
		else
		{
			$("helpBox").style.left=(x+10)+"px";
		}
		$("helpBox").style.top=(y+20)+"px";
		$("helpBox").style.visibility='visible';
		$("helpBox").style.display='block';

	}
	
}

function helpBox(content)
{
	sur_lien=true;
	$("helpBox").update(content);
}

function helphide(id)
{
	sur_lien=false;

	$(id).style.visibility='hidden';
	$(id).style.display='none';
	$(id).update("");
}

function getAvatar()
{
	var p = $F('f_p');
	var m = $F('f_m');
	var r = '';
	
	if( $('f_r_all').checked )
		r = 'all';
	else if( $('f_r_rare').checked )
		r = 'rare';
	else if( $('f_r_none').checked )
		r = 'none';
	else if( $('f_r_other').checked )
	{
		var checkboxes = $('form_generateur_avatar').getInputs('checkbox', 'f_r_choix') ;
		
		r = Object.values( Form.serializeElements(checkboxes, true) ).join(',');
		
		if( r.length == 0 )
		{
			alert("Veuillez choisir au moins un picto !");
			return false;
		}
	}
	else
		r = '';
	
	var pp = $F('f_pp');
	
	var b = '1';
	if( $('f_b_non').checked )
		b = '0';
	
	var a = '1';
	if( $('f_a_non').checked )
		a = '0';
	
	var c1 = '0,0,0';
	if( $('f_c1') )
		c1=$F('f_c1');
	
	var c2 = '212,2,4';
	if( $('f_c2') )
		c2=$F('f_c2');
	
	var c3 = '254,216,1';
	if( $('f_c3') )
		c3=$F('f_c3');
	
	var i='none';
	if( $('f_i') )
		var i = $F('f_i');
	
	var fs=1;
	if( $('f_fs') )
		var fs = $F('f_fs');
	
	var pa = '1';
	if( $('f_pa_non').checked )
		pa = '0';
	
	
	// c1=40,40,40&c2=212,2,4&c3=254,216,1
	
	new Ajax.Request( './scripts/avatarV2.php',
	  {
	 	method: 'post',
	 	parameters: {p:p, m:m, r:r, pp:pp, b:b, c1:c1, c2:c2, c3:c3, a:a, i:i, fs:fs, pa:pa},
	    onLoading: function(){
	      $('result_avatar').update('<img src="./img/load.gif" />');
	    },
	    onSuccess: function(transport){
	      var response = transport.responseText || 'Oops, erreur... &nbsp;<img src="./img/r_armag.gif" />';
	      $('result_avatar').update(response);

	      if( $('present_avatar') )
	      {
		  	new Ajax.Request( './scripts/getAvatarSrc.php',
		  		  {
		  		 	onLoading: function(){		  		      
		  		    },
		  		    onSuccess: function(transport){
		  		      var response = transport.responseText || "../img/r_armag.gif";
		  		      $('present_avatar').src=response;
		  		    },
		  		    onFailure: function(){ alert('Erreur dans la fonction \'getAvatarSrc\'') }
		  		  });
	      }
	    },
	    onFailure: function(){ alert('Erreur dans la fonction \'avatarV2\'') }
	  });
}


function slider(slider_id, box_id, f_id, r, v, b)
{
    var rgb_slider = $(slider_id);
    var box = $(box_id);

    new Control.Slider(rgb_slider.select('.handle'), rgb_slider, {
      range: $R(0, 255),
      sliderValue: [r, v, b],
      onSlide: function(values)
      {
        changeColor(box_id, f_id, values.map(Math.round).join(','), false );
      },
      onChange: function(values)
      { 
        changeColor(box_id, f_id, values.map(Math.round).join(','), false );
      }
    });
 }


function changeColor(box_id, f_id, values, slider_id)
{
	var box = $(box_id);
	box.setStyle({ backgroundColor: "rgb("+ values +")" });
	$(f_id).value = values;
	
	if( slider!=false )
	{
		rvb=values.split(',');
		slider(slider_id, box_id, f_id, rvb[0], rvb[1], rvb[2]);
	}
}

function preview_avatar(url, w, h)
{
	if(w==0 && h==0)
		$('apercu_img_fond').update('');
	else
	{
		$('apercu_img_fond').update('<img src="'+url+'" width="'+w+'" height="'+h+'" />');
	}
}

function previewFont(font)
{
  	$('apercu_police').src='./img/previewFont.php?f='+font;	
}

function cdr_more(id)
{
	$(id).value=parseInt( $(id).value )+1;
}

function cdr_less(id)
{
	if(parseInt($(id).value )>0)
		$(id).value=parseInt($(id).value )-1;
}

function cdr_save()
{
	$('form_carnet_de_route').request({
		onLoading: function(){
			$('cdr_result').update('<img src="./img/load.gif" />');
			$('button_save_cdr').disable();
		},
		onSuccess: function(transport){
			var response = transport.responseText || 'Erreur';
			$('cdr_result').update(response);
			$('button_save_cdr').enable();
		},
	})
}

function raz_cdr()
{
	$$('.less_more input').each(function(element, index){ element.setAttribute('value','0'); });
}

function cdr_get(cdr_city)
{
	$$('.cdr_histo_ville > img').each(Element.hide);
	$$('#ville_'+cdr_city+' > img').each(Element.show);
	
	new Ajax.Request( './scripts/getCdr.php',
	  {
	 	method: 'post',
	 	parameters: {cdr_city:cdr_city},
	    onLoading: function(){
	      $('liste_pictos').update('<br/><center><img src="./img/load2.gif" /><br/><br/>Chargement en cours...</center>');
	    },
	    onSuccess: function(transport){
	      var response = transport.responseText || 'Oops, erreur... &nbsp;<img src="./img/r_armag.gif" />';
	      $('liste_pictos').update(response);
	    },
	    onFailure: function(){ alert('Erreur dans la fonction \'cdr_get\'') }
	  });
}

function filtre_classement(r,c,id_l)
{
	var r=parseInt(r);
	var c=parseInt(c);
	var id_l=parseInt(id_l);
	var Exp = new RegExp('#'+c+'#');
	$$('.sous_nav a').each(function(element, index){ element.setStyle({'color':''});	});
	$$('.sous_nav a').each(function(element, index){
		if(index==id_l)
			element.setStyle({'color':'#ffffff'});
	});
	$$('div.class_reward_rare', 'div.class_reward').each(Element.show);
	switch(r)
	{
		case 0:
			$$('div.class_reward_rare[filter=1]').each(Element.hide);
		break;
		case 1:
			$$('div.class_reward[filter=1]').each(Element.hide);
		break;
	}
	if(c>0)
	{
		$$('div.class_reward_rare', 'div.class_reward').each(function(element, index) {
			  if( element.getAttribute('filter')=='1' && !Exp.test( element.getAttribute('cats') ) )
				  element.hide();
			});

	}
}

function save_guide()
{
	$('form_proposer_guide').request({
		onLoading: function(){
			$('save_guide_result').update('<img src="./img/load.gif" />');
			$('button_save_guide').disable();
		},
		onSuccess: function(transport){
			var response = transport.responseText || 'Erreur';
			$('save_guide_result').update(response);
			$('button_save_guide').enable();
		},
	})
}

function get_periodical_time()
{
	new Ajax.PeriodicalUpdater('periodical_time', './scripts/get_periodical_time.php', {
	  method: 'post', frequency: 150, decay: 1
	});
	
}

function show_normal_titles()
{
	$$('.sous_nav a').invoke('setStyle',{'color':''});
	$('normal_mode').setStyle({'color':'#ffffff'});
	$$('td.score em.cumul').invoke('hide');
	$$('td.score em.normal').invoke('show');
}

function show_cumul_titles()
{
	$$('.sous_nav a').invoke('setStyle',{'color':''});
	$('cumul_mode').setStyle({'color':'#ffffff'});
	$$('td.score em.normal').invoke('hide');
	$$('td.score em.cumul').invoke('show');
}
