X-Git-Url: http://git.indexdata.com/?p=mkws-moved-to-github.git;a=blobdiff_plain;f=src%2Fmkws-core.js;h=719e3e0d8ccf9883ca354a698dc82101485fdf04;hp=dd967a6eee64147625835cd4dd62b1809f4662f5;hb=79ba978af9f202afa1c181b0675401b92447f579;hpb=77e4281618abfa9479b4b263cf78df7e09af71b8 diff --git a/src/mkws-core.js b/src/mkws-core.js index dd967a6..719e3e0 100644 --- a/src/mkws-core.js +++ b/src/mkws-core.js @@ -3,7 +3,7 @@ * See the file LICENSE for details */ -"use strict"; // HTML5: disable for log_level >= 2 +"use strict"; // Set up global mkws object. Contains truly global state such as SP @@ -17,8 +17,7 @@ window.mkws = { authenticating: false, active: false, logger: undefined, - log_level: 1, // Will be overridden from mkws.config, but - // initial value allows jQuery popup to use logging. + log_level: "info", teams: {}, widgetType2function: {}, defaultTemplates: {}, @@ -91,29 +90,35 @@ if (typeof(mkws_jQuery) !== "undefined") { mkws.$ = jQuery; } +// It's ridiculous that JSNLog doesn't provide this +mkws.stringToLevel = function(s) { + if (s === 'trace') { + return JL.getTraceLevel(); + } else if (s === 'debug') { + return JL.getDebugLevel(); + } else if (s === 'info') { + return JL.getInfoLevel(); + } else if (s === 'warn') { + return JL.getWarnLevel(); + } else if (s === 'error') { + return JL.getErrorLevel(); + } else if (s === 'fatal') { + return JL.getFatalLevel(); + } else { + throw "bad log-level '" + s + "'"; + } +} + mkws.logger = JL('mkws'); var consoleAppender = JL.createConsoleAppender('consoleAppender'); -mkws.logger.setOptions({ "appenders": [consoleAppender]} ); - +mkws.logger.setOptions({ "appenders": [consoleAppender] }); -function _log(fn, string) { - if (!mkws.log_level) - return; - // you need to disable use strict at the top of the file!!! - if (mkws.log_level >= 3) { - // Works in Chrome; not sure about elsewhere - console.trace(); - } else if (mkws.log_level >= 2) { - - } - fn.call(mkws.logger, string); +function _log() { + var argsAsARealArray = Array.prototype.slice.call(arguments); + var fn = argsAsARealArray.shift(); + fn.apply(mkws.logger, argsAsARealArray); }; - - -// ### transitional placeholder function until we have promoted all invocations -mkws.log = function(x) { _log(mkws.logger.debug, "LEGACY LOG: " + x) }; - mkws.trace = function(x) { _log(mkws.logger.trace, x) }; mkws.debug = function(x) { _log(mkws.logger.debug, x) }; mkws.info = function(x) { _log(mkws.logger.info, x) }; @@ -146,7 +151,7 @@ mkws.getParameterByName = function(name, url) { mkws.registerWidgetType = function(name, fn) { if(mkws._old2new.hasOwnProperty(name)) { - mkws.warn("Warning: registerWidgetType old widget name: " + name + " => " + mkws._old2new[name]); + mkws.warn("registerWidgetType old widget name: " + name + " => " + mkws._old2new[name]); name = mkws._old2new[name]; } @@ -154,16 +159,18 @@ mkws.registerWidgetType = function(name, fn) { mkws.info("registered widget-type '" + name + "'"); }; +mkws.aliasWidgetType = function(newName, oldName) { + mkws.widgetType2function[newName] = mkws.widgetType2function[oldName]; + mkws.info("aliased widget-type '" + newName + "' to '" + oldName + "'"); + +}; + mkws.promotionFunction = function(name) { return mkws.widgetType2function[name]; }; mkws.setMkwsConfig = function(overrides) { - // Set global log_level flag early so that _log() works - var tmp = overrides.log_level; - if (typeof(tmp) !== 'undefined') mkws.log_level = tmp; - var config_default = { use_service_proxy: true, pazpar2_url: undefined, @@ -651,6 +658,9 @@ mkws.info("Using window.name '" + window.name + "'"); } else if (!mkws.authenticating) { // raw pp2 or we have a session already open runAutoSearches(); + for (var teamName in mkws.teams) { + mkws.teams[teamName].queue("authenticated").publish(); + } } mkws.isActive = true; @@ -663,4 +673,11 @@ mkws.info("Using window.name '" + window.name + "'"); } }); + // Set global log_level flag early so that _log() works + if (typeof mkws_config !== 'undefined') { + var tmp = mkws_config.log_level; + if (typeof tmp !== 'undefined') { + mkws.logger.setOptions({ "level": mkws.stringToLevel(tmp) }); + } + } })(mkws.$);