From a883fcca3c93e866a08d69748780c65cbfde4306 Mon Sep 17 00:00:00 2001 From: Robin Appelman Date: Sun, 15 Jan 2012 19:11:25 +0100 Subject: [PATCH] add user and instance awere localstorage to prevent collisions when using localstorage --- core/js/js.js | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/core/js/js.js b/core/js/js.js index 2bb6cff0cb..56ce87f1c2 100644 --- a/core/js/js.js +++ b/core/js/js.js @@ -130,6 +130,35 @@ OC.search.lastResults={}; OC.addStyle.loaded=[]; OC.addScript.loaded=[]; +if(typeof localStorage !='undefined'){ + //user and instance awere localstorage + OC.localStorage={ + namespace:'oc_'+OC.currentUser+'_'+OC.webroot+'_', + hasItem:function(name){ + return OC.localStorage.getItem(name)!=null; + }, + setItem:function(name,item){ + return localStorage.setItem(OC.localStorage.namespace+name,JSON.stringify(item)); + }, + getItem:function(name){ + return JSON.parse(localStorage.getItem(OC.localStorage.namespace+name)); + } + } +}else{ + //dummy localstorage + OC.localStorage={ + hasItem:function(name){ + return false; + }, + setItem:function(name,item){ + return false; + }, + getItem:function(name){ + return null; + } + } +} + /** * implement Array.filter for browsers without native support */ @@ -410,3 +439,5 @@ if (!Array.prototype.map){ $.fn.filterAttr = function(attr_name, attr_value) { return this.filter(function() { return $(this).attr(attr_name) === attr_value; }); }; + +