Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <!DOCTYPE html>
- <html>
- <head>
- </head>
- <body>
- <script>
- var indexedDB = window.indexedDB || window.webkitIndexedDB || window.mozIndexedDB;
- var IDBTransaction = window.IDBTransaction || window.webkitIDBTransaction; // No prefix in moz
- var dbRequest = indexedDB.open("test", "");
- var db = null;
- function insertMovie() {
- var writeTransaction = db.transaction(["movies"], IDBTransaction.READ_WRITE, 0);
- var store = writeTransaction.objectStore("movies");
- var writeRequest = store.put({title: "Avatar", format: "Streaming"}, "1");
- writeRequest.onerror = function (e) {
- console.log("Couldn't insert : " + e.target.webkitErrorMessage);
- deleteMovie();
- };
- writeRequest.onsuccess = function (e) {
- console.log("Inserted");
- deleteMovie();
- };
- }
- function deleteMovie() {
- var deleteTransaction = db.transaction(["movies"], IDBTransaction.READ_WRITE);
- var store = deleteTransaction.objectStore("movies");
- var deleteRequest = store.delete("1");
- deleteRequest.onsuccess = function (event) {
- console.log("Deleted");
- insertMovie(); // insert again
- };
- deleteRequest.onerror = function (event) {
- console.log("Could not delete... Maybe there was nothing to delete!");
- };
- }
- dbRequest.onsuccess = function (e) {
- db = e.target.result; // Attach the connection ot the queue.
- if (db.version === "1.0") {
- insertMovie();
- } else {
- var versionRequest = db.setVersion("1.0");
- versionRequest.onsuccess = function (e) {
- var store = db.createObjectStore("movies");
- store.createIndex("titleIndex", "title", {
- unique: true
- });
- store.createIndex("formatIndex", "format", {
- unique: false
- });
- insertMovie();
- }
- }
- }
- dbRequest.onerror = function (e) {
- console.error("Couldn't not connect to the database");
- };
- dbRequest.onabort = function (e) {
- console.error("Connection to the database aborted");
- };
- </script>
- </body>
- </html>
Add Comment
Please, Sign In to add comment