var formEvent				= "";
var elementEvent			= "";
var formSelect				= "";
var AllOk					= true;
var submitIdentification	= false ;

var obj				= {    
						validate_fm: function(event) 
						{
							if( Event.element( event ).id == "formIdentification" )	submitIdentification = true ;

							AllOk				 = true;
							if(event.target)	form = $(event.target.id);
							else				form = $(event.srcElement);

							elements	= $A(form.elements);							
							formEvent	= event;		
							formSelect	= Event.element( event ).id;
							elements.each(validate_element);

							if ( AllOk === true )
							{
								var dontReloadPage = true ;

								switch( Event.element( event ).id )
								{
									case "formIdentification" :
										logIn();
									break;

									case "formNewsletter" :
										inscriptionNewsletter();
									break;

									default :
										dontReloadPage = false;
									break;
								}

								if( dontReloadPage === true )	Event.stop( formEvent );
								
							}
							else Event.stop( formEvent );

						},
						
						validate_et: function(event) 
						{
							if(event.target)	element = $(event.target.id);
							else				element = $(event.srcElement).id;

							//element			= $(form);
							elementEvent	= event;
							//formSelect		= Event.element( event ).id;
							validate_element(element);
						}
					};

obj.validate_form = obj.validate_fm.bindAsEventListener(obj);
obj.validate_elem = obj.validate_et.bindAsEventListener(obj);


document.observe( "dom:loaded", function() 
								{
									var forms = document.forms;
									
									for( var i = 0; i < forms.length; i++ ) 
									{
										Event.observe( forms[i].id, "submit", obj.validate_form );
									}
								}
);

function validate_regex( validator, element ) 
{
	var reg = regex[ validator ] ;

	if ( reg.exec( element.value ) != null )
	{		
		if ( comparaison[ validator ] == "Egal" )	return true;
		else										return false;	
	}
	else
	{		
		if ( comparaison[ validator ] == "Egal" )	return false;
		else										return true;
	}
}

function validate_element( element ) 
{
	validate_class_array = element.title.split( " " );
	

    validate_class_array.each
	( 
		function( one_validate_class ) 
		{
			if( one_validate_class.search(/^\s*$/) == -1 )  
			{
				if( validate_regex( one_validate_class, element ) ) 
				{
					span_id = "error-span" + element.id;

					if($(span_id) != null)	$(span_id).remove();

					$( element ).removeClassName( "error-validate" );
					$( element ).addClassName( "success-validate" );

				} 
				else 
				{
					$( element ).removeClassName( "success-validate" );
					$( element ).addClassName( "error-validate" );
					/*
					span_id = "error-span" + element.id;

					if($(span_id) == null)	
					{
						element.insert(
							{ after: "<div id='" + span_id + "' style='display:none'><div class='" + errorCss[formSelect] + "-top' id='top_" + span_id + "'></div><div id='error_" + span_id + "' class='" + errorCss[formSelect] + "'><span>" + messages[one_validate_class] + "</span>" + "</div></div>" }
						);

						dimensionChamp = $( element ).getDimensions();
						dimensionWidth = dimensionChamp.width - 27 ;
						$( "error_"+span_id ).setStyle( { width : dimensionWidth+"px" } );
						$( "top_"+span_id ).setStyle( { width : dimensionWidth+"px" } );

						Effect.Appear( span_id, { duration: 0.2 } );                           
						//Event.observe(element, "change", obj.validate_elem);
						Event.observe(element, "keypress", obj.validate_elem);
					}
*/
					Event.observe(element, "keypress", obj.validate_elem);
					AllOk = false;
				}

			}            
		}
	);


}
