var Notification = function () {
    var width = 350;
    var placeholder;
    
    function getHolder() {
        if ( ! placeholder ) {
            placeholder = new Element( 'div' );
            placeholder.addClass( 'crazy-error-container' );
            
            placeholder.inject( document.body );
        }
        
        return placeholder;
    }
    
    return {
        ERROR : 0,
        
        show : function ( message ) {
            getHolder().set( 'tween', {
                'duration' : 1000,
                'transition' : 'elastic:out'
            } );
            getHolder().tween( 'left', -1 * width, ( window.getSize().x - width ) / 2 );
            
            getHolder().set( 'text', message );
        },
        
        hide : function () {
            getHolder().set( 'tween', {
                'duration' : 800,
                'transition' : 'elastic:in'
            } );
            getHolder().tween( 'left', window.getSize().x + width );
        }
    }
}();
