|
3 | 3 | var IDBKeyRange = window.IDBKeyRange || window.webkitIDBKeyRange; |
4 | 4 | var IDBCursor = window.IDBCursor || window.webkitIDBCursor; |
5 | 5 | IDBCursor.PREV = IDBCursor.PREV || "prev"; |
6 | | - IDBCursor.NEXT = IDBCursor.PREV || "next"; |
| 6 | + IDBCursor.NEXT = IDBCursor.NEXT || "next"; |
7 | 7 |
|
8 | 8 | /** |
9 | 9 | * Best to use the constant IDBTransaction since older version support numeric types while the latest spec |
|
66 | 66 | if (typeof idbRequest.onblocked !== "undefined" && idbRequest.onblocked === null) { |
67 | 67 | idbRequest.onblocked = function(e){ |
68 | 68 | console.log("Blocked", idbRequest, e, this); |
| 69 | + var res; |
69 | 70 | try { |
70 | | - var res = idbRequest.result; |
| 71 | + res = idbRequest.result; |
71 | 72 | } catch (e) { |
72 | 73 | res = null; // Required for Older Chrome versions, accessing result causes error |
73 | 74 | } |
|
126 | 127 | return wrap.request(function(args){ |
127 | 128 | return idbObjectStore[op].apply(idbObjectStore, args); |
128 | 129 | }, arguments); |
129 | | - } |
| 130 | + }; |
130 | 131 | })(crudOps[i]); |
131 | 132 | } |
132 | 133 |
|
|
148 | 149 |
|
149 | 150 | result.createIndex = function(prop, options, indexName){ |
150 | 151 | if (arguments.length === 2 && typeof options === "string") { |
151 | | - indexName = arguments[1] |
| 152 | + indexName = arguments[1]; |
152 | 153 | options = null; |
153 | 154 | } |
154 | 155 | if (!indexName) { |
|
161 | 162 |
|
162 | 163 | result.deleteIndex = function(indexName){ |
163 | 164 | return idbObjectStore.deleteIndex(indexName); |
164 | | - } |
| 165 | + }; |
165 | 166 |
|
166 | 167 | return result; |
167 | 168 | }, |
|
232 | 233 | dfd.rejectWith(cursorReq, [cursorReq.result, e]); |
233 | 234 | }; |
234 | 235 | } catch (e) { |
235 | | - console.log("An exception occured inside cursor", cursorReq, e) |
| 236 | + console.log("An exception occured inside cursor", cursorReq, e); |
236 | 237 | e.type = "exception"; |
237 | 238 | dfd.rejectWith(cursorReq, [null, e]); |
238 | 239 | } |
|
282 | 283 | } |
283 | 284 | }; |
284 | 285 | } |
285 | | - } |
| 286 | + }; |
286 | 287 |
|
287 | 288 | //////////////////////////////////////////////////////////////////////////////////////////////////// |
288 | 289 |
|
|
397 | 398 | }; |
398 | 399 |
|
399 | 400 | return result; |
400 | | - } |
| 401 | + }; |
401 | 402 |
|
402 | 403 |
|
403 | 404 | //////////////////////////////////////////////////////////////////////////////////////////////////// |
|
465 | 466 | mode = getDefaultTransaction(mode); |
466 | 467 | return $.Deferred(function(dfd){ |
467 | 468 | dbPromise.then(function(db, e){ |
| 469 | + var idbTransaction; |
468 | 470 | try { |
469 | 471 | console.log("DB Opened, now trying to create a transaction", storeNames, mode); |
470 | | - var idbTransaction = db.transaction(storeNames, mode); |
| 472 | + idbTransaction = db.transaction(storeNames, mode); |
471 | 473 | console.log("Created a transaction", idbTransaction, mode, storeNames); |
472 | 474 | idbTransaction.onabort = idbTransaction.onerror = function(e){ |
473 | 475 | dfd.rejectWith(idbTransaction, [e]); |
|
556 | 558 | } : mode); |
557 | 559 | console.log("Object store created", storeName, db); |
558 | 560 | } catch (ex) { |
559 | | - console.log("Exception when trying ot create a new object store", ex) |
| 561 | + console.log("Exception when trying ot create a new object store", ex); |
560 | 562 | dfd.rejectWith(this, [ex, e]); |
561 | 563 | } |
562 | 564 | } |
|
570 | 572 | onTransactionProgress(trans, callback); |
571 | 573 | }); |
572 | 574 | }); |
573 | | - }; |
| 575 | + } |
574 | 576 |
|
575 | 577 | function crudOp(opName, args){ |
576 | 578 | return op(function(wrappedObjectStore){ |
|
590 | 592 | result[crud[i]] = (function(op){ |
591 | 593 | return function(){ |
592 | 594 | return crudOp(op, arguments); |
593 | | - } |
| 595 | + }; |
594 | 596 | })(crud[i]); |
595 | 597 | } |
596 | 598 |
|
|
609 | 611 | return indexOp("getKey", indexName, [key]); |
610 | 612 | } |
611 | 613 | }; |
612 | | - } |
| 614 | + }; |
613 | 615 |
|
614 | 616 | return result; |
615 | 617 | } |
|
0 commit comments