function $( element ) {
	return YAHOO.util.Dom.get( element ); 
}

(function() {
	
// brower detection
var ua = navigator.userAgent.toLowerCase(),
    isOpera = (ua.indexOf('opera') > -1),
    isSafari = (ua.indexOf('safari') > -1),
    isGecko = (!isOpera && !isSafari && ua.indexOf('gecko') > -1),
    isIE = (!isOpera && ua.indexOf('msie') > -1); 
	
Preceptor.util.Dom = {};
 	
Preceptor.util.Dom.elements = [];

Preceptor.util.Dom.removeElement = function( id )
{
	var element = $( id );

	for( var i = 1; i < Preceptor.util.Dom.elements.length; i++ )
	{
		if( id == Preceptor.util.Dom.elements[i] )
			Preceptor.util.Dom.elements.splice( i , 1 );
	}
	
	var c = new YAHOO.util.Motion( id , { opacity: { to: 0 } } , 0.5 );

	c.onComplete.subscribe( function() {
		element.parentNode.removeChild( element );
	});

	c.animate();
}

Preceptor.util.Dom.addElement = function( id , url )
{
	if( typeof YAHOO.util.Connect == 'undefined' )
	{
		return false;
	}

	var Element 		= $( id );
	var createElementId = url.split( "/" )[0];
	var div 			= $( createElementId );
	
	Preceptor.util.Dom.elements.push( createElementId );
	
	if( !div )
	{
		div 	= document.createElement( "div" );
		div.id 	= createElementId;

		div.innerHTML = "<div style='background:#fff;' class='padding'><img src='"+URL+"/img/icones/loading.gif' /> <b>Carregando</b></div> <br/>";

		if ( createElementId != Preceptor.util.Dom.elements[0] ) 
			Preceptor.util.Dom.insertAfter( div , $( Preceptor.util.Dom.elements[0] ) );
		else 
		{
			Element.appendChild( div );
		}
		
		new Preceptor.util.AjaxUpdate( div.id , url );

		try {
			Preceptor.util.DDApp.init( createElementId );
		}catch(e){}

	}
	else
	{
		new Preceptor.util.AjaxUpdate( div.id , url );
	}
	
	div.focus();
}

Preceptor.util.Dom.insertAfter = function( insertElement , targetElement ){
	targetElement.parentNode.insertBefore( insertElement, targetElement.nextSibling );
}

})();