diff -r 322d0feea350 -r 89ef5ed3c48b src/cm/media/js/lib/yui/yui_3.10.3/build/yui-log/yui-log.js --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/cm/media/js/lib/yui/yui_3.10.3/build/yui-log/yui-log.js Tue Jul 16 14:29:46 2013 +0200 @@ -0,0 +1,127 @@ +/* +YUI 3.10.3 (build 2fb5187) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add('yui-log', function (Y, NAME) { + +/** + * Provides console log capability and exposes a custom event for + * console implementations. This module is a `core` YUI module, + * it's documentation is located under the YUI class. + * + * @module yui + * @submodule yui-log + */ + +var INSTANCE = Y, + LOGEVENT = 'yui:log', + UNDEFINED = 'undefined', + LEVELS = { debug: 1, + info: 2, + warn: 4, + error: 8 }; + +/** + * If the 'debug' config is true, a 'yui:log' event will be + * dispatched, which the Console widget and anything else + * can consume. If the 'useBrowserConsole' config is true, it will + * write to the browser console if available. YUI-specific log + * messages will only be present in the -debug versions of the + * JS files. The build system is supposed to remove log statements + * from the raw and minified versions of the files. + * + * @method log + * @for YUI + * @param {String} msg The message to log. + * @param {String} cat The log category for the message. Default + * categories are "info", "warn", "error", time". + * Custom categories can be used as well. (opt). + * @param {String} src The source of the the message (opt). + * @param {boolean} silent If true, the log event won't fire. + * @return {YUI} YUI instance. + */ +INSTANCE.log = function(msg, cat, src, silent) { + var bail, excl, incl, m, f, minlevel, + Y = INSTANCE, + c = Y.config, + publisher = (Y.fire) ? Y : YUI.Env.globalEvents; + // suppress log message if the config is off or the event stack + // or the event call stack contains a consumer of the yui:log event + if (c.debug) { + // apply source filters + src = src || ""; + if (typeof src !== "undefined") { + excl = c.logExclude; + incl = c.logInclude; + if (incl && !(src in incl)) { + bail = 1; + } else if (incl && (src in incl)) { + bail = !incl[src]; + } else if (excl && (src in excl)) { + bail = excl[src]; + } + + // Determine the current minlevel as defined in configuration + Y.config.logLevel = Y.config.logLevel || 'debug'; + minlevel = LEVELS[Y.config.logLevel.toLowerCase()]; + + if (cat in LEVELS && LEVELS[cat] < minlevel) { + // Skip this message if the we don't meet the defined minlevel + bail = 1; + } + } + if (!bail) { + if (c.useBrowserConsole) { + m = (src) ? src + ': ' + msg : msg; + if (Y.Lang.isFunction(c.logFn)) { + c.logFn.call(Y, msg, cat, src); + } else if (typeof console !== UNDEFINED && console.log) { + f = (cat && console[cat] && (cat in LEVELS)) ? cat : 'log'; + console[f](m); + } else if (typeof opera !== UNDEFINED) { + opera.postError(m); + } + } + + if (publisher && !silent) { + + if (publisher === Y && (!publisher.getEvent(LOGEVENT))) { + publisher.publish(LOGEVENT, { + broadcast: 2 + }); + } + + publisher.fire(LOGEVENT, { + msg: msg, + cat: cat, + src: src + }); + } + } + } + + return Y; +}; + +/** + * Write a system message. This message will be preserved in the + * minified and raw versions of the YUI files, unlike log statements. + * @method message + * @for YUI + * @param {String} msg The message to log. + * @param {String} cat The log category for the message. Default + * categories are "info", "warn", "error", time". + * Custom categories can be used as well. (opt). + * @param {String} src The source of the the message (opt). + * @param {boolean} silent If true, the log event won't fire. + * @return {YUI} YUI instance. + */ +INSTANCE.message = function() { + return INSTANCE.log.apply(INSTANCE, arguments); +}; + + +}, '3.10.3', {"requires": ["yui-base"]});