Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
// Copyright 2009, 2010 The Apache Software Foundation
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
//     http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
Tapestry.Logging = {
		
		debug: function(msg)
        {
			if (Tapestry.DEBUG_ENABLED)
				Tapestry.Logging.updateConsole("t-debug", msg);
        },
        
        warn: function(msg)
        {
			Tapestry.Logging.updateConsole("t-warn", msg);
        },
        
        error: function(msg)
        {
    		Tapestry.Logging.updateConsole("t-err", msg);
        },
        
        /** Formats a message and updates the console. The console is virtual
         *  when FireBug is not present, the messages float in the upper-left corner
         *  of the page and fade out after a short period.  The background color identifies
         *  the severity of the message (red for error, yellow for warnings, grey for debug).
         *  Messages can be clicked, which removes the immediately.
         *
         * When FireBug is present, the error(), warn() and debug() methods do not invoke
         * this; instead those functions are rewritten to write entries into the FireBug console.
         *
         * @param className to use for the div element in the console
         * @param message message template
         */
        updateConsole : function (className, message)
        {

            if (Tapestry.Logging.console == undefined)
            	Tapestry.Logging.console = Tapestry.Logging.createConsole("t-console");

            Tapestry.Logging.writeToConsole(Tapestry.Logging.console, className, message);
        },

        createConsole : function(className)
        {
            var body = $$("BODY").first();

            var console = new Element("div", { 'class': className });

            body.insert({ top: console });

            return console;
        },

        writeToConsole : function(console, className, message, slideDown)
        {
            var div = new Element("div", { 'class': className }).update(message).hide();

            console.insert({ top: div });

            new Effect.Appear(div, { duration: .25 });

            var effect = new Effect.Fade(div, { delay: Tapestry.CONSOLE_DURATION,
                afterFinish: function()
                {
            		Tapestry.remove(div);
                }});

            div.observe("click", function()
            {
                effect.cancel();
        		Tapestry.remove(div);
            });
        }
                
}
New to GrepCode? Check out our FAQ X