From: Mike Taylor Date: Thu, 20 Nov 2014 17:05:36 +0000 (+0000) Subject: Merge branch 'master' of ssh://git.indexdata.com/home/git/pub/mkws X-Git-Url: http://git.indexdata.com/?p=mkws-moved-to-github.git;a=commitdiff_plain;h=8ce1047224e45d1bea0516eba4a005a645dc3100;hp=a4b84ad26f64fd8aeb3d2db408585291c1b26d48 Merge branch 'master' of ssh://git.indexdata.com/home/git/pub/mkws --- diff --git a/doc/mkws-manual.markdown b/doc/mkws-manual.markdown index d5332cb..1066f63 100644 --- a/doc/mkws-manual.markdown +++ b/doc/mkws-manual.markdown @@ -882,8 +882,8 @@ limit facet, string Allows a partial search to records, chapter of the Pazpar2 manual results ](http://www.indexdata.com/pazpar2/doc/pazpar2_protocol.html) -log_level _global_ int 1 Level of debugging output to emit. 0 = none, 1 = messages, 2 = messages with - datestamps, 3 = messages with datestamps and stack-traces. +log_level _global_ string info The lowest level of logging output to emit. Acceptable values are + `trace`, `debug`, `info`, `warn`, `error` and `fatal`. maxrecs facet, int Limits the metasearching middleware to retrieving no more than the specified facets, number of records from each target. diff --git a/examples/htdocs/heikki-motd.html b/examples/htdocs/heikki-motd.html index 39554cf..ee0461e 100644 --- a/examples/htdocs/heikki-motd.html +++ b/examples/htdocs/heikki-motd.html @@ -9,7 +9,6 @@ //show_sort: false, //perpage_default: 10, //sort_default: "title:1", - //log_level: 1 }; diff --git a/examples/htdocs/language.html b/examples/htdocs/language.html index 370429f..ebe555c 100644 --- a/examples/htdocs/language.html +++ b/examples/htdocs/language.html @@ -9,7 +9,6 @@ diff --git a/src/mkws-core.js b/src/mkws-core.js index 5cd500d..3087120 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,26 +90,31 @@ 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]} ); - - -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); -}; +mkws.logger.setOptions({ "appenders": [consoleAppender] }); +function _log(fn, string) { fn.call(mkws.logger, string); }; 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) }; @@ -157,10 +161,6 @@ mkws.promotionFunction = function(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, @@ -660,4 +660,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.$);