1
0
mirror of https://github.com/Jermolene/TiddlyWiki5 synced 2025-07-05 11:32:50 +00:00

Update tw.utils.Logger using tw.utils.Logger

This commit is contained in:
pmario 2024-06-21 09:02:45 +02:00
parent eb38b0238a
commit 08577b7fdb
2 changed files with 30 additions and 29 deletions

View File

@ -25,23 +25,20 @@ var ENABLED_TITLE = "$:/config/BrowserStorage/Enabled",
var BrowserStorageUtil = require("$:/plugins/tiddlywiki/browser-storage/util.js").BrowserStorageUtil; var BrowserStorageUtil = require("$:/plugins/tiddlywiki/browser-storage/util.js").BrowserStorageUtil;
exports.startup = function() { exports.startup = function() {
var self = this;
// If not exists, add ENABLED tiddler with default value "yes" // If not exists, add ENABLED tiddler with default value "yes"
if(!$tw.wiki.getTiddler(ENABLED_TITLE)) { if(!$tw.wiki.getTiddler(ENABLED_TITLE)) {
$tw.wiki.addTiddler({title: ENABLED_TITLE, text: "yes"}); $tw.wiki.addTiddler({title: ENABLED_TITLE, text: "yes"});
} }
// Compute our prefix for local storage keys // Compute our prefix for local storage keys
var prefix = "tw5#" + window.location.pathname + "#"; var prefix = "tw5#" + window.location.pathname + "#";
// Make a logger
var logger = new $tw.utils.Logger("browser-storage",{
colour: "cyan"
});
// Add browserStorage object to $tw // Add browserStorage object to $tw
$tw.browserStorage = new BrowserStorageUtil($tw.wiki,{ $tw.browserStorage = new BrowserStorageUtil($tw.wiki,{
enabledTitle: ENABLED_TITLE, enabledTitle: ENABLED_TITLE,
prefix: prefix, prefix: prefix
logger: logger });
// Add a logger
$tw.browserStorage.logger = new $tw.utils.Logger("browser-storage",{
colour: "green"
}); });
// Function to compile the filter // Function to compile the filter
var filterFn, var filterFn,
@ -60,9 +57,16 @@ exports.startup = function() {
}, },
requestPersistence = function() { requestPersistence = function() {
setPersistedState("requested"); setPersistedState("requested");
$tw.browserStorage.logger.info("Show user request for browser PERSISTED storage");
navigator.storage.persist().then(function(persisted) { navigator.storage.persist().then(function(persisted) {
console.log("Request for persisted storage " + (persisted ? "granted" : "denied")); if(persisted) {
setPersistedState(persisted ? "granted" : "denied"); $tw.browserStorage.logger.info("User GRANTED access to browser PERSISTED storage");
setPersistedState("granted");
}
else {
$tw.browserStorage.logger.info("User DENIED access to persisted storage. Storage MAY BE CLEARED by the UA under storage pressure.");
setPersistedState("denied");
}
}); });
}, },
persistPermissionRequested = false, persistPermissionRequested = false,

View File

@ -45,7 +45,7 @@ BrowserStorageUtil.prototype.addCachedTiddlers = function() {
}; };
BrowserStorageUtil.prototype.removeTiddlerFromLocalStorage = function(title) { BrowserStorageUtil.prototype.removeTiddlerFromLocalStorage = function(title) {
console.log("browser-storage: Removing", title); this.logger.log("Removing", title);
window.localStorage.removeItem(this.options.prefix + title); window.localStorage.removeItem(this.options.prefix + title);
}; };
@ -55,7 +55,7 @@ BrowserStorageUtil.prototype.saveTiddlerToLocalStorage = function(title) {
if(tiddler) { if(tiddler) {
if(this.wiki.tiddlerExists(title)) { if(this.wiki.tiddlerExists(title)) {
// This is not a shadow tiddler // This is not a shadow tiddler
console.log("browser-storage: Saving",title); this.logger.log("Saving",title);
// Get the JSON of the tiddler // Get the JSON of the tiddler
var json = JSON.stringify(tiddler.getFieldStrings()); var json = JSON.stringify(tiddler.getFieldStrings());
// Try to save it to local storage // Try to save it to local storage
@ -65,13 +65,11 @@ BrowserStorageUtil.prototype.saveTiddlerToLocalStorage = function(title) {
if(e.name === "QuotaExceededError") { if(e.name === "QuotaExceededError") {
// Complain if we failed // Complain if we failed
var msg = $tw.wiki.getTiddlerText(this.QUOTA_EXCEEDED_ALERT_TITLE,this.DEFAULT_QUOTA_EXCEEDED_ALERT_PREFIX + title + this.DEFAULT_QUOTA_EXCEEDED_ALERT_SUFFIX); var msg = $tw.wiki.getTiddlerText(this.QUOTA_EXCEEDED_ALERT_TITLE,this.DEFAULT_QUOTA_EXCEEDED_ALERT_PREFIX + title + this.DEFAULT_QUOTA_EXCEEDED_ALERT_SUFFIX);
if(this.options.logger) { this.logger.alert(msg);
this.options.logger.alert(msg);
}
// No point in keeping old values around for this tiddler // No point in keeping old values around for this tiddler
window.localStorage.removeItem(this.options.prefix + title); window.localStorage.removeItem(this.options.prefix + title);
} else { } else {
console.log("Browser-storage error:",e); this.logger.log("Error:",e);
} }
} }
} else { } else {
@ -83,18 +81,17 @@ BrowserStorageUtil.prototype.saveTiddlerToLocalStorage = function(title) {
// In local storage, use the special value of empty string to mark the tiddler as deleted // In local storage, use the special value of empty string to mark the tiddler as deleted
// On future page loads, if the tiddler is already gone from startup then the blank entry // On future page loads, if the tiddler is already gone from startup then the blank entry
// will be removed from localstorage. Otherwise, the tiddler will be deleted. // will be removed from localstorage. Otherwise, the tiddler will be deleted.
console.log("browser-storage: Blanking",title); this.logger.log("Blanking",title);
try { try {
window.localStorage.setItem(this.options.prefix + title, ""); window.localStorage.setItem(this.options.prefix + title, "");
} catch(e) { } catch(e) {
console.log("Browser-storage error:",e); this.logger.error("Error:",e);
} }
} }
}; };
BrowserStorageUtil.prototype.clearLocalStorage = function() { BrowserStorageUtil.prototype.clearLocalStorage = function() {
var url = window.location.pathname, var url = window.location.pathname;
log = [];
// Step through each browser storage item // Step through each browser storage item
if(window.localStorage) { if(window.localStorage) {
for(var index=window.localStorage.length - 1; index>=0; index--) { for(var index=window.localStorage.length - 1; index>=0; index--) {