From d29c04b2ed515f1c8131052da44ef28c59599060 Mon Sep 17 00:00:00 2001 From: Joe Tretter Date: Sat, 1 Nov 2025 12:52:02 -0500 Subject: [PATCH] Gemini added delete undo functionality --- datahandler.js | 21 ++++++++++++++++++++- index.html | 3 ++- uicontroler.js | 8 ++++++++ 3 files changed, 30 insertions(+), 2 deletions(-) diff --git a/datahandler.js b/datahandler.js index bef733f..2c64dbc 100644 --- a/datahandler.js +++ b/datahandler.js @@ -127,11 +127,16 @@ function addNewEntry(sEntry){ }); } +var lastDeletedEntry = null; + function deleteEntry(sKey) { db.objectStore("Entry").get(Number(sKey)).done( function(result,event){ + lastDeletedEntry = result; + lastDeletedEntry.key = Number(sKey); addToQ("DeleteEntry",result); db.objectStore("Entry").delete(Number(sKey)).done( function(result,event){ - deleteEntryFromUi(sKey) + deleteEntryFromUi(sKey); + showUndoButton(); }).fail( function (result, event){ console.log("[deleteEntry] Failed deleting List Item: " , result , event ) }); @@ -140,6 +145,20 @@ function deleteEntry(sKey) { }); } +function undoDeleteEntry() { + if (lastDeletedEntry) { + db.objectStore("Entry").add({"Description":lastDeletedEntry.Description,"shopGlobalId":lastDeletedEntry.shopGlobalId }).done( function(result,event){ + addToQ("SendEntry",result); + addEntryToUi(result,lastDeletedEntry.Description); + $("#lstEntries").listview("refresh"); + lastDeletedEntry = null; + hideUndoButton(); + }).fail( function (result, event){ + console.log("Failed Inserting List Item: " , result, event ) + }); + } +} + function shopDeletion(shopGlobalId){ db.objectStore("Shop").delete(shopGlobalId) diff --git a/index.html b/index.html index 75368f2..0999b9d 100644 --- a/index.html +++ b/index.html @@ -128,7 +128,8 @@ $(document).bind('pageinit',function() {
-
+
+
diff --git a/uicontroler.js b/uicontroler.js index e0b0b5d..5e02f8b 100644 --- a/uicontroler.js +++ b/uicontroler.js @@ -302,3 +302,11 @@ function setMode(sMode){ function updateTransferQCounter(){ db.objectStore("TransferQ").count().done(function (result) { changeButtonText("btnHeadingRight",result); }); } + +function showUndoButton() { + $("#btnUndo").show(); +} + +function hideUndoButton() { + $("#btnUndo").hide(); +}