Guest User

Untitled

a guest
Jan 21st, 2018
93
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.29 KB | None | 0 0
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. </head>
  5. <body>
  6. <script>
  7. var indexedDB = window.indexedDB || window.webkitIndexedDB || window.mozIndexedDB;
  8. var IDBTransaction = window.IDBTransaction || window.webkitIDBTransaction; // No prefix in moz
  9.  
  10. var dbRequest = indexedDB.open("test", "");
  11.  
  12. var db = null;
  13.  
  14. function insertMovie() {
  15. var writeTransaction = db.transaction(["movies"], IDBTransaction.READ_WRITE, 0);
  16. var store = writeTransaction.objectStore("movies");
  17.  
  18. var writeRequest = store.put({title: "Avatar", format: "Streaming"}, "1");
  19.  
  20. writeRequest.onerror = function (e) {
  21. console.log("Couldn't insert : " + e.target.webkitErrorMessage);
  22. deleteMovie();
  23. };
  24. writeRequest.onsuccess = function (e) {
  25. console.log("Inserted");
  26. deleteMovie();
  27. };
  28. }
  29.  
  30. function deleteMovie() {
  31. var deleteTransaction = db.transaction(["movies"], IDBTransaction.READ_WRITE);
  32. var store = deleteTransaction.objectStore("movies");
  33.  
  34. var deleteRequest = store.delete("1");
  35.  
  36. deleteRequest.onsuccess = function (event) {
  37. console.log("Deleted");
  38. insertMovie(); // insert again
  39. };
  40. deleteRequest.onerror = function (event) {
  41. console.log("Could not delete... Maybe there was nothing to delete!");
  42. };
  43.  
  44. }
  45.  
  46.  
  47. dbRequest.onsuccess = function (e) {
  48. db = e.target.result; // Attach the connection ot the queue.
  49. if (db.version === "1.0") {
  50. insertMovie();
  51. } else {
  52. var versionRequest = db.setVersion("1.0");
  53. versionRequest.onsuccess = function (e) {
  54. var store = db.createObjectStore("movies");
  55. store.createIndex("titleIndex", "title", {
  56. unique: true
  57. });
  58. store.createIndex("formatIndex", "format", {
  59. unique: false
  60. });
  61. insertMovie();
  62. }
  63. }
  64. }
  65.  
  66. dbRequest.onerror = function (e) {
  67. console.error("Couldn't not connect to the database");
  68. };
  69.  
  70. dbRequest.onabort = function (e) {
  71. console.error("Connection to the database aborted");
  72. };
  73.  
  74.  
  75.  
  76.  
  77. </script>
  78. </body>
  79.  
  80. </html>
Add Comment
Please, Sign In to add comment