
function AjouterIUErreur( msg , element )
{
	UIErreur_append( msg );
	UIErreur_appendElement( element );
}

///////////////////////////////////////////////////////////////////////////
//
///////////////////////////////////////////////////////////////////////////
var UIErreur_element 		= null;					//	Element HTML contenant le prompt
var UIErreur_elementId 		= "Prompt";				//	Id de l'Element HTML contenant le prompt
var UIErreur_MsgElement 	= null;					//	Element HTML qui recevra le texte des erreurs
var UIErreur_MsgElementId 	= "PromptTexte";		//	Id de l'Element HTML qui recevra le texte des erreurs
var UIErreur_Time			= 7000;
var UIErreur_tabMsg 		= new Array();
var UIErreur_tabElements	= new Array();
var UIErreur_IDTimeOut		= null;

function UIErreur_show()
{
	if( UIErreur_element == null )
		UIErreur_element = document.getElementById(UIErreur_elementId);
	if( UIErreur_element == null )
		return false;
	
	if( UIErreur_HasMessage() )
	{
		UIErreur_WriteMsg();
		
		UIErreur_element.style.display = 'block';
		UIErreur_centrerbloc( UIErreur_element );
	
		if( UIErreur_IDTimeOut != null )
			clearTimeout(UIErreur_IDTimeOut);
			
		UIErreur_IDTimeOut = window.setTimeout(UIErreur_close,UIErreur_Time );
	}
	if( UIErreur_HasElementsToHighLight() )
		UIErreur_HightLightElements();
}

function UIErreur_close()
{
	if( UIErreur_element != null )
		UIErreur_element.style.display = 'none';
		
	UIErreur_IDTimeOut = null;
}

function UIErreur_centrerbloc( Element )
{
	Element.style.top = "340px";
	Element.style.left = "50%";
	Element.style.marginTop = "-"+(parseInt(Element.offsetHeight)/2)+"px";
	Element.style.marginLeft = "-"+(parseInt(Element.offsetWidth)/2)+"px";
}

function UIErreur_WriteMsg()
{
	if( UIErreur_MsgElement == null )
		UIErreur_MsgElement = document.getElementById(UIErreur_MsgElementId);
		
	if( UIErreur_MsgElement == null )
		return false;

	//UIErreur_MsgElement.innerHTML = "";
	for( var i=0; i < UIErreur_tabMsg.length; i++ )
		if( UIErreur_tabMsg[i] != "" )
			UIErreur_MsgElement.innerHTML += ""+UIErreur_tabMsg[i]+"<br/>";
}

function UIErreur_append( Msg )
{		
	if( Msg != null && Msg != "" )
		UIErreur_tabMsg.push(Msg);
}

function UIErreur_appendElement( Element )
{
	if( Element == null )
		return false;
	UIErreur_tabElements.push(Element);
	return true;
}

function UIErreur_HasMessage()
{
	if( UIErreur_tabMsg.length > 0 )
		return true;
	return false;
}

function UIErreur_HasElementsToHighLight()
{
	if( UIErreur_tabElements.length > 0 )
		return true;
	return false;
}

function UIErreur_emptyMessages()
{
	UIErreur_tabMsg 		= new Array();
	UIErreur_tabElements	= new Array();	
}

function UIErreur_setTimeout( milliseconds )
{
	UIErreur_Time = milliseconds;
}

function UIErreur_setElementId( Id )
{
	UIErreur_elementId = Id;
}

function UIErreur_setMsgElementId( Id )
{
	UIErreur_MsgElementId = Id;
}

function UIErreur_HightLightElements()
{
	for(var i =0 ; i < UIErreur_tabElements.length; i++ )
	{
		try
		{
			if( UIErreur_tabElements[i].nodeName == null )
			{
				// Reception d'une liste d'elements (cas des radio qui porte tous le même nom par exemple....)
				for( var e=0; e < UIErreur_tabElements[i].length; e++ )
					if( UIErreur_tabElements[i][e].nodeName.toLowerCase() == "input" &&  UIErreur_tabElements[i][e].type.toLowerCase() == "radio" )
						UIErreur_HightLightRadio( UIErreur_tabElements[i][e] );
			}
			else if( UIErreur_tabElements[i].nodeName.toLowerCase() == "input" )
			{
				UIErreur_HightLightInput( UIErreur_tabElements[i] );
			}
			else if( UIErreur_tabElements[i].nodeName.toLowerCase() == "select" )
			{
				UIErreur_HightLightSelect( UIErreur_tabElements[i] );
			}
			else if( UIErreur_tabElements[i].nodeName.toLowerCase() == "textarea" )
			{
				UIErreur_HightLightInput( UIErreur_tabElements[i] );
			}
		}
		catch( ex )
		{
			//alert(ex);
		}
	}
}

function UIErreur_HightLightInput( Element )
{
	Element.style.borderColor = "#ff00b4";
	Element.style.color       = "#ff00b4";
	Element.style.borderWidth = "1px";
	Element.style.borderStyle = "solid";
}

function UIErreur_HightLightSelect( Element )
{
	Element.style.backgroundColor = "#FF0000";
	Element.style.fontColor = "#FFFFFF";
}

function UIErreur_HightLightRadio( Element )
{
	// Ne rien faire puisque l'on ne peut RIEN FAIRE !!!!!...... saloperie de boutons radio
	//Element.style.fontWeight = "bold";
}

attacherEvenement( window , 'onload' , UIErreur_show );