aboutsummaryrefslogtreecommitdiff
path: root/node_modules/montage/core/logger.js
diff options
context:
space:
mode:
Diffstat (limited to 'node_modules/montage/core/logger.js')
-rwxr-xr-xnode_modules/montage/core/logger.js14
1 files changed, 9 insertions, 5 deletions
diff --git a/node_modules/montage/core/logger.js b/node_modules/montage/core/logger.js
index 4b0e8233..6f90fab3 100755
--- a/node_modules/montage/core/logger.js
+++ b/node_modules/montage/core/logger.js
@@ -15,7 +15,8 @@ var Montage = require("montage").Montage,
15 emptyLoggerFunction, 15 emptyLoggerFunction,
16 getFunctionName, 16 getFunctionName,
17 toTimeString, 17 toTimeString,
18 LoggerUI; 18 LoggerUI,
19 localStorage;
19 20
20loggers = exports.loggers = {}; 21loggers = exports.loggers = {};
21 22
@@ -104,7 +105,7 @@ Logger = exports.Logger = Montage.create(Montage,/** @lends module:montage/core/
104 value: function(name, dontStoreState) { 105 value: function(name, dontStoreState) {
105 this.name = name; 106 this.name = name;
106 this._storeState = !dontStoreState; 107 this._storeState = !dontStoreState;
107 if (this._storeState) { 108 if (this._storeState && localStorage) {
108 var storedState = localStorage.getItem("_montage_logger_" + name); 109 var storedState = localStorage.getItem("_montage_logger_" + name);
109 if (storedState) { 110 if (storedState) {
110 this.isDebug = storedState === "true"; 111 this.isDebug = storedState === "true";
@@ -335,7 +336,7 @@ LoggerUI = Montage.create(Montage, /** @lends module:montage/core/logger.LoggerU
335 name = event.target.value, 336 name = event.target.value,
336 logger = loggers[name]; 337 logger = loggers[name];
337 logger.isDebug = value; 338 logger.isDebug = value;
338 if (logger._storeState) { 339 if (logger._storeState && localStorage) {
339 localStorage.setItem("_montage_logger_" + name, value); 340 localStorage.setItem("_montage_logger_" + name, value);
340 } 341 }
341 } 342 }
@@ -394,7 +395,7 @@ LoggerUI = Montage.create(Montage, /** @lends module:montage/core/logger.LoggerU
394 input.type = "checkbox"; 395 input.type = "checkbox";
395 input.checked = !!iLogger.isDebug; 396 input.checked = !!iLogger.isDebug;
396 storageKey = "_montage_logger_" + iLogger.name; 397 storageKey = "_montage_logger_" + iLogger.name;
397 if (iLogger._storeState) { 398 if (iLogger._storeState && localStorage) {
398 storedValue = localStorage.getItem(storageKey); 399 storedValue = localStorage.getItem(storageKey);
399 if (storedValue == null) { 400 if (storedValue == null) {
400 localStorage.setItem(storageKey, iLogger.isDebug); 401 localStorage.setItem(storageKey, iLogger.isDebug);
@@ -485,9 +486,12 @@ var setupUI = function() {
485 @type {Statement} 486 @type {Statement}
486 @default window 487 @default window
487 */ 488 */
488if (window) { 489if (typeof window !== "undefined") {
490 // assigning to a local allows us to feature-test without typeof
491 localStorage = window.localStorage;
489 window.loggers = loggers; 492 window.loggers = loggers;
490 if (window.localStorage) { 493 if (window.localStorage) {
491 setupUI(); 494 setupUI();
492 } 495 }
493} 496}
497