/* * Implementation for mediaWiki.log stub */ (function ($, mw) { /** * Log output to the console. * * In the case that the browser does not have a console available, one is created by appending a *
element to the bottom of the body and then appending a
element to that for each * message. * * @author Michael Dale * @author Trevor Parscal * @param {string} string Message to output to console */ mediaWiki.log = function( string ) { // Allow log messages to use a configured prefix if ( mw.config.exists( 'mw.log.prefix' ) ) { string = mw.config.get( 'mw.log.prefix' ) + '> ' + string; } // Try to use an existing console if ( typeof window.console !== 'undefined' && typeof window.console.log == 'function' ) { window.console.log( string ); } else { // Set timestamp var d = new Date(); var time = ( d.getHours() < 10 ? '0' + d.getHours() : d.getHours() ) + ':' + ( d.getMinutes() < 10 ? '0' + d.getMinutes() : d.getMinutes() ) + ':' + ( d.getSeconds() < 10 ? '0' + d.getSeconds() : d.getSeconds() ) + '.' + ( d.getMilliseconds() < 10 ? '00' + d.getMilliseconds() : ( d.getMilliseconds() < 100 ? '0' + d.getMilliseconds() : d.getMilliseconds() ) ); // Show a log box for console-less browsers var $log = $( '#mw-log-console' ); if ( !$log.length ) { $log = $( '
' ) .css( { 'position': 'absolute', 'overflow': 'auto', 'z-index': 500, 'bottom': '0px', 'left': '0px', 'right': '0px', 'height': '150px', 'background-color': 'white', 'border-top': 'solid 2px #ADADAD' } ) .appendTo( 'body' ); } $log.append( $( '
' ) .css( { 'border-bottom': 'solid 1px #DDDDDD', 'font-size': 'small', 'font-family': 'monospace', 'padding': '0.125em 0.25em' } ) .text( string ) .append( '[' + time + ']' ) ); } }; })(jQuery, mediaWiki);