UNPKG

toloframework

Version:

Javascript/HTML/CSS compiler for Firefox OS or nodewebkit apps using modules in the nodejs style.

58 lines (46 loc) 1.1 kB
"use strict"; if (!window.localStorage) { window.localStorage = new DBStorage(); window.sessionStorage = new DBStorage(); } else if (!window.sessionStorage) { window.sessionStorage = window.localStorage; } exports.local = { get: load(window.localStorage), set: save(window.localStorage) }; exports.session = { get: load(window.sessionStorage), set: save(window.sessionStorage) }; function load(storage) { return function(key, def) { var v = storage.getItem(key); if (v === null) { return def; } try { v = JSON.parse(v); } catch (ex) {} return v; }; } function save(storage) { return function(key, val) { storage.setItem(key, JSON.stringify(val)); }; } function DBStorage() { this._data = {}; } /** * @member DBStorage.getItem * @param key */ DBStorage.prototype.getItem = function(key, def) { var val = this._data[key]; return typeof val === 'undefined' ? def : val; }; DBStorage.prototype.setItem = function(key, val) { this._data[key] = val; };