From 6b7404ad07e00391490f8c75b42f522f1ec35bd7 Mon Sep 17 00:00:00 2001 From: Joshua Petitt Date: Wed, 17 Jul 2013 15:00:40 -0500 Subject: [PATCH] Added getKeysForLocalStorage method. --- localStorageModule.js | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/localStorageModule.js b/localStorageModule.js index 4dc9133..e74b0d0 100644 --- a/localStorageModule.js +++ b/localStorageModule.js @@ -106,6 +106,31 @@ angularLocalStorage.service('localStorageService', [ return true; }; + // Return array of keys for local storage + // Example use: var keys = localStorageService.keys() + var getKeysForLocalStorage = function () { + + if (!browserSupportsLocalStorage()) { + $rootScope.$broadcast('LocalStorageModule.notification.warning','LOCAL_STORAGE_NOT_SUPPORTED'); + return false; + } + + var prefixLength = prefix.length; + var keys = []; + for (var key in localStorage) { + // Only return keys that are for this app + if (key.substr(0,prefixLength) === prefix) { + try { + keys.push(key.substr(prefixLength)) + } catch (e) { + $rootScope.$broadcast('LocalStorageModule.notification.error',e.Description); + return []; + } + } + } + return keys; + }; + // Remove all data for this app from local storage // Example use: localStorageService.clearAll(); // Should be used mostly for development purposes @@ -220,6 +245,7 @@ angularLocalStorage.service('localStorageService', [ set: addToLocalStorage, add: addToLocalStorage, //DEPRECATED get: getFromLocalStorage, + keys: getKeysForLocalStorage, remove: removeFromLocalStorage, clearAll: clearAllFromLocalStorage, cookie: {