blob: a45eb966dabd091da1de7a6cc9d6d0fe4b7ba36e (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
(function( app ) {
var ux = app.ns("ux");
var services = app.ns("services");
services.Preferences = ux.Singleton.extend({
init: function() {
this._storage = window.localStorage;
this._setItem("__version", 1 );
},
get: function( key ) {
return this._getItem( key );
},
set: function( key, val ) {
return this._setItem( key, val );
},
_getItem: function( key ) {
try {
return JSON.parse( this._storage.getItem( key ) );
} catch(e) {
console.warn( e );
return undefined;
}
},
_setItem: function( key, val ) {
try {
return this._storage.setItem( key, JSON.stringify( val ) );
} catch(e) {
console.warn( e );
return undefined;
}
}
});
})( this.app );
|