From 9fec6400ef283c18bf68f0b198cb02f5a529b8cb Mon Sep 17 00:00:00 2001 From: callebtc <93376500+callebtc@users.noreply.github.com> Date: Sat, 5 Nov 2022 22:32:36 +0100 Subject: [PATCH] backup button --- .../cashu/templates/cashu/wallet.html | 43 ++++++++++++++++++- 1 file changed, 41 insertions(+), 2 deletions(-) diff --git a/lnbits/extensions/cashu/templates/cashu/wallet.html b/lnbits/extensions/cashu/templates/cashu/wallet.html index 3c781ac3b..be4fd1261 100644 --- a/lnbits/extensions/cashu/templates/cashu/wallet.html +++ b/lnbits/extensions/cashu/templates/cashu/wallet.html @@ -248,13 +248,22 @@ -
+
Warning + + Backup
@@ -511,6 +520,7 @@ I understand + @@ -1923,6 +1933,36 @@ } }, + ////////////// STORAGE ///////////// + + getLocalstorageToFile: async function() { + // https://stackoverflow.com/questions/24263682/save-restore-local-storage-to-a-local-file + const fileName = `cashu_backup_${currentDateStr()}.json` + var a = {}; + for (var i = 0; i < localStorage.length; i++) { + var k = localStorage.key(i); + var v = localStorage.getItem(k); + a[k] = v; + } + var textToSave = JSON.stringify(a) + var textToSaveAsBlob = new Blob([textToSave], { + type: "text/plain" + }); + var textToSaveAsURL = window.URL.createObjectURL(textToSaveAsBlob); + + var downloadLink = document.createElement("a"); + downloadLink.download = fileName; + downloadLink.innerHTML = "Download File"; + downloadLink.href = textToSaveAsURL; + downloadLink.onclick = function () { + document.body.removeChild(event.target); + }; + downloadLink.style.display = "none"; + document.body.appendChild(downloadLink); + downloadLink.click(); + + }, + storeinvoicesCashu: function () { localStorage.setItem( this.mintKey(this.mintId, 'invoicesCashu'), @@ -2013,7 +2053,6 @@ console.table('### tokens', this.proofs) console.log('#### this.mintId', this.mintId) console.log('#### this.mintName', this.mintName) - this.recheckPendingInvoices() } })