]> git.wh0rd.org - chrome-ext/clearhistory-advance-fork.git/blobdiff - javascript/clearhistory.js
use chrome.storage.sync
[chrome-ext/clearhistory-advance-fork.git] / javascript / clearhistory.js
index d05a2f694f9581438c57bcad119b50bd9d354583..73206ce175b6d6b37d031c4b1cbae9cbed3eeca7 100644 (file)
@@ -43,7 +43,8 @@ function clearCookies(callback) {
  * Callback for when history deletion is successful
  */
 function didClearHistory() {
-  var time = ~~(localStorage['time']) || CONSTANTS.DEFAULT_TIME;
+  chrome.storage.sync.get('time', function(s) {
+  var time = ~~(s.time) || CONSTANTS.DEFAULT_TIME;
   time = getUnitsForTime(time);
   var timeString = (time.time === -1) ?
                    chrome.i18n.getMessage('notificationTimeAll') :
@@ -58,6 +59,7 @@ function didClearHistory() {
   setTimeout(function() {
     notification.cancel();
   }, 5000);
+  });
 }
 
 /**
@@ -66,38 +68,42 @@ function didClearHistory() {
 function clearHistory() {
   //Get the values from localStorage
   // time is in hours
-  var time = ~~(localStorage['time']) || CONSTANTS.DEFAULT_TIME;
-  if (time === -1) {
-    // Delete everything
-    chrome.history.deleteAll(didClearHistory);
-  } else {
-    // Create the range
-    var timeStart = localStorage['timeStart'] === CONSTANTS.YES;
-    var now = (new Date).getTime();
-    var startTime = (now - time * 60 * 60 * 1000);  // time from hrs to ms
-    if (timeStart) {
-      var endTime = now;
+  chrome.storage.sync.get(['time', 'timeStart'], function(s) {
+    var time = ~~(s.time) || CONSTANTS.DEFAULT_TIME;
+    if (time === -1) {
+      // Delete everything
+      chrome.history.deleteAll(didClearHistory);
     } else {
-      var endTime = startTime;
-      startTime = 0;
+      // Create the range
+      var timeStart = s.timeStart === CONSTANTS.YES;
+      var now = (new Date).getTime();
+      var startTime = (now - time * 60 * 60 * 1000);  // time from hrs to ms
+      if (timeStart) {
+        var endTime = now;
+      } else {
+        var endTime = startTime;
+        startTime = 0;
+      }
+      var range = {
+        startTime: startTime,
+        endTime: endTime
+      };
+      // Delete history in the range
+      chrome.history.deleteRange(range, didClearHistory);
     }
-    var range = {
-      startTime: startTime,
-      endTime: endTime
-    };
-    // Delete history in the range
-    chrome.history.deleteRange(range, didClearHistory);
-  }
+  });
 }
 
 function runCleaner() {
-  var clearCookies = localStorage['cookies'] || CONSTANTS.NO;
+  chrome.storage.sync.get('cookies', function(s) {
+    var clearCookies = s.cookies || CONSTANTS.NO;
 
-  if (clearCookies === CONSTANTS.YES) {
-    clearCookies(clearHistory);
-  } else {
-    clearHistory();
-  }
+    if (clearCookies === CONSTANTS.YES) {
+      clearCookies(clearHistory);
+    } else {
+      clearHistory();
+    }
+  });
 }
 
 /**
@@ -106,7 +112,8 @@ function runCleaner() {
  */
 chrome.browserAction.onClicked.addListener(function(tab) {
   // Get the value from localStorage
-  var showPrompt = localStorage['prompt'] || CONSTANTS.YES;
+  chrome.storage.sync.get('prompt', function(s) {
+  var showPrompt = s.prompt || CONSTANTS.YES;
 
   // The confirmation message to ask
   var message = chrome.i18n.getMessage('confirmPrompt');
@@ -117,6 +124,7 @@ chrome.browserAction.onClicked.addListener(function(tab) {
       return;
   }
   runCleaner();
+  });
 });
 
 chrome.alarms.get(CONSTANTS.CLEANER_ALARM, function(a) {
@@ -131,8 +139,9 @@ chrome.alarms.get(CONSTANTS.CLEANER_ALARM, function(a) {
 });
 
 chrome.alarms.onAlarm.addListener(function(alarm) {
-  var autoCleaner = localStorage['autoclear'] || CONSTANTS.NO;
-  if (autoCleaner === CONSTANTS.YES)
-    runCleaner();
-  console.log('running');
+  chrome.storage.sync.get('autoclear', function(s) {
+    var autoCleaner = s.autoclear || CONSTANTS.NO;
+    if (autoCleaner === CONSTANTS.YES)
+      runCleaner();
+  });
 });