/***************************************************************************** Mootools */

window.addEvent('domready', function() {
	new SmoothScroll();				// Effet slide sur les ancres

	/* Champs Ã  initialiser */
	if ( $('SearchText') ) { initInput( $('SearchText') ); }
		


	/*
	 * Info-bulle.
	 */
	var Tip_more_info = new Tips($$('.more_info'), {
		showDelay: 100,
		hideDelay: 400,
		fixed: true,
		className: 'tip_more_info'
	});
	


	/*
	 * Ajouter aux favoris :
	 */
	if ( $E('.addToBookmark') ) {
		$E('.addToBookmark').addEvent( "click", function(e) {
		e = new Event(e);
			addToBookmark( $E('.addToBookmark') );
		e.stop();
		});
	}



	/*
	 * Recherche avancÃ©e :
	 */
	 /***
	 	Raiz : pas de advanced_search actuelement sur le site
	 	si l'on souhaite remettre la recherche avancé il suffit de decommenter
	 	le bloc de code suivant
	 ****/
	 /**
	if ( $E('.avanced') ) {
		var advancedSearch = new Fx.Slide( $E('.avanced'), { });
		
		// On cache par dÃ©faut
		if ( !startAvanced ) {
			advancedSearch.hide();
		}
		else {
			$('advanced_search').setText(tradSimpleSearch);
			$E('.btnSubmit').setProperty('name', 'AvancedSearchButton');
			$('advanced_search').toggleClass('isAdvanced');
		}
			
		$('advanced_search').addEvent('click', function(e){
			e = new Event(e);
			advancedSearch.toggle();
			$('advanced_search').toggleClass('isAdvanced');
			if ( $('advanced_search').hasClass('isAdvanced') ) {
				$('advanced_search').setText(tradSimpleSearch);
				$E('.btnSubmit').setProperty('name', 'AvancedSearchButton');
			}
			else {
				$('advanced_search').setText(tradAdvancedSearch);
				$E('.btnSubmit').setProperty('name', 'SearchButton');
			}
			e.stop();
		});
	}
	**/


	/**
	 * VÃ©rification des formulaires ayant la classe "verif".
	 */
	$$('form.verif').each( function( form2Verfif ) {
		
		/* ~~ onClick sur le bouton valider */
		$E('input.submit', form2Verfif).addEvent( "click", function(e) {
			e 				= new Event(e);
			var valid		= true;								// On suppose le formulaire valide.
			var msgError	= new Array();						// Les Ã©ventuels messages d'erreur
			$('form_message').empty();							// On vide la boite de dialogue
			$('form_message').setStyle('display', 'none');		// On cache la boite de dialogue
			

			
		/* On rÃ©cup les champs Ã  tester */

			// Champs requis :
			input2Verif		= $ES('.required', form2Verfif);
			input2Verif.each( function(verifEmpty) {
				//alert(verifEmpty.name);
				//alert(verifEmpty.value);
				if ( verifEmpty.value == "" ) {
					valid	= false;
					verifEmpty.addClass('error');
					
					msgError[msgError.length]		= verifEmpty.getParent().getNext().getText();
				}
				else {
					verifEmpty.removeClass('error');
				}
			});
			
			// email :
			input2Verif		= $ES('input.email', form2Verfif);
			input2Verif.each( function(verifMail) {
				
				if ( !verifMail.value.test("^(.+)@(.+)\\.(.+)") ) {
					valid	= false;
					verifMail.addClass('error');
					msgError[msgError.length]		= verifMail.getParent().getNext().getText();
				}
				else {
					verifMail.removeClass('error');
				}
			});
			
			// radio :
			radiolabel2Verif		= $ES('label.radiolabelrequired', form2Verfif);
			radiolabel2Verif.each( function(radioLabelElement) {

					checked=false;
					radioVerif = $ES('input.radio', radioLabelElement.getParent());
					radioVerif.each( function(radioElement) {
						if (radioElement.checked) { checked=true };
						/**message d'erreur**/
						//messErrorRadio = messErrorRadio + radioElement.getNext().getText();
					});	
					if (!checked) {
						//alert("pas coche");
						valid	= false;
						msgError[msgError.length]		= radioLabelElement.getNext().getNext().getNext().getNext().getNext().getText();
					}
				

			});
			
			
			
			/*
				if ( !verifMail.value.test("^(.+)@(.+)\\.(.+)") ) {
					valid	= false;
					verifMail.addClass('error');
					msgError[msgError.length]		= verifMail.getParent().getNext().getText();
				}
				else {
					verifMail.removeClass('error');
				}
			*/	
		
			//});
			
			
		/* Validation */
			if ( valid==false ) {
				$('form_message').setStyle('display', 'block');
				$('form_message').adopt( new Element('ul', {} ) );
				msgError.each(function(item, index){
					li	= new Element('li', {} ) ;
					$('form_message').getFirst().adopt( li );
					li.setText(item);
				});
				document.location.href='#top_message';
				e.stop();
			}
		});
	});




}); // EO domready



/**
 * Mise Ã  zÃ©ro des formulaire lors du clic.
 *
 * @param input input
 */
function initInput( input ) {
	
	input.addEvent('click', function(e){
		e = new Event(e);
		input.setProperty( "value", "" );
		e.stop();
	});
};



/**
 * Ajout de la page courante aux favoris
 *
 * @param element elem
 */
function addToBookmark( elem ) {
 
	if (window.opera) {
		elem.setProperty('rel' , 'sidebar');
	}
	else if (window.ie) {
		window.external.AddFavorite( document.URL, document.title );
	}
	else if (window.gecko) {
		window.sidebar.addPanel( document.title, document.URL,"");  
	}
	else {
	}
 
	return false;
};



/************************************************************************ Hors Mootools */

/**
 * Fonction de substitution pour les mail.
 *
 * @param string email
 * @return email protÃ©gÃ©
 */
function nospam(adresse){
	adresse 		= adresse.replace(/_AT_/g, '@');
	adresse 		= adresse.replace(/_DOT_/g, '.');

 	return adresse;
};