aboutsummaryrefslogtreecommitdiffstats
path: root/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/services/preferences/preferences.js
diff options
context:
space:
mode:
Diffstat (limited to 'sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/services/preferences/preferences.js')
-rw-r--r--sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/services/preferences/preferences.js35
1 files changed, 35 insertions, 0 deletions
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/services/preferences/preferences.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/services/preferences/preferences.js
new file mode 100644
index 000000000..a45eb966d
--- /dev/null
+++ b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/services/preferences/preferences.js
@@ -0,0 +1,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 );