Close db on version change

This commit is contained in:
Mo Bitar
2017-08-13 10:27:21 -05:00
parent 7f62d937f9
commit f85741e411
3 changed files with 22 additions and 12 deletions

View File

@@ -24,6 +24,9 @@ class DBManager {
request.onsuccess = (event) => {
var db = event.target.result;
db.onversionchange = function(event) {
db.close();
};
db.onerror = function(errorEvent) {
console.log("Database error: " + errorEvent.target.errorCode);
}
@@ -130,14 +133,16 @@ class DBManager {
}
clearAllItems(callback) {
this.openDatabase((db) => {
var request = db.transaction("items", "readwrite").objectStore("items").clear();
request.onsuccess = function(event) {
db.close();
window.indexedDB.deleteDatabase("standardnotes");
callback();
};
}, null)
var deleteRequest = window.indexedDB.deleteDatabase("standardnotes");
deleteRequest.onerror = function(event) {
console.log("Error deleting database.");
callback();
};
deleteRequest.onsuccess = function(event) {
console.log("Database deleted successfully");
callback();
};
}
}

View File

@@ -155,7 +155,9 @@ class AccountMenu {
})
} else {
dbManager.clearAllItems(function(){
block();
$timeout(function(){
block();
})
})
}
}

View File

@@ -1,12 +1,13 @@
class SyncManager {
constructor($rootScope, modelManager, authManager, dbManager, httpManager, $interval) {
constructor($rootScope, modelManager, authManager, dbManager, httpManager, $interval, $timeout) {
this.$rootScope = $rootScope;
this.httpManager = httpManager;
this.modelManager = modelManager;
this.authManager = authManager;
this.dbManager = dbManager;
this.$interval = $interval;
this.$timeout = $timeout;
this.syncStatus = {};
}
@@ -327,9 +328,11 @@ class SyncManager {
this.dbManager.clearAllItems(function(){
localStorage.clear();
if(callback) {
callback();
this.$timeout(function(){
callback();
})
}
});
}.bind(this));
}
}