From 17ff6669654c527886982e812ddb02cc767c6efe Mon Sep 17 00:00:00 2001 From: lelo Date: Sun, 7 Sep 2025 18:43:15 +0000 Subject: [PATCH] improve setting page --- templates/folder_secret_config_editor.html | 27 +++++++++++++++++----- 1 file changed, 21 insertions(+), 6 deletions(-) diff --git a/templates/folder_secret_config_editor.html b/templates/folder_secret_config_editor.html index 05b14e5..accbce7 100644 --- a/templates/folder_secret_config_editor.html +++ b/templates/folder_secret_config_editor.html @@ -147,7 +147,7 @@ const remBtn = document.createElement('button'); remBtn.className = 'btn btn-outline-danger'; remBtn.type = 'button'; - remBtn.textContent = 'Remove'; + remBtn.textContent = 'entfernen'; remBtn.addEventListener('click', () => removeFolder(key, i)); nameGroup.appendChild(remBtn); } @@ -170,7 +170,7 @@ const addFld = document.createElement('button'); addFld.className = 'btn btn-sm btn-primary mb-2'; addFld.type = 'button'; - addFld.textContent = 'Add Folder'; + addFld.textContent = 'Ordner hinzufügen'; addFld.addEventListener('click', () => addFolder(key)); body.appendChild(addFld); } @@ -186,17 +186,25 @@ actions.appendChild(openButton); } + if (!isEdit) { + const openButton = document.createElement('button'); + openButton.className = 'btn btn-secondary btn-sm me-2'; + openButton.onclick = () => toClipboard(`${window.location.origin}/?secret=${rec.secret}`); + openButton.textContent = 'Link kopieren'; + actions.appendChild(openButton); + } + const delBtn = document.createElement('button'); delBtn.className = 'btn btn-danger btn-sm me-2 delete-btn'; delBtn.type = 'button'; - delBtn.textContent = 'Delete'; + delBtn.textContent = 'löschen'; delBtn.dataset.secret = key; actions.appendChild(delBtn); const cloneBtn = document.createElement('button'); cloneBtn.className = 'btn btn-secondary btn-sm me-2'; cloneBtn.type = 'button'; - cloneBtn.textContent = 'Clone'; + cloneBtn.textContent = 'clonen'; cloneBtn.addEventListener('click', () => cloneRec(key)); actions.appendChild(cloneBtn); @@ -204,14 +212,14 @@ const saveBtn = document.createElement('button'); saveBtn.className = 'btn btn-success btn-sm'; saveBtn.type = 'button'; - saveBtn.textContent = 'Save'; + saveBtn.textContent = 'speichern'; saveBtn.addEventListener('click', () => saveRec(key)); actions.appendChild(saveBtn); } else { const editBtn = document.createElement('button'); editBtn.className = 'btn btn-warning btn-sm'; editBtn.type = 'button'; - editBtn.textContent = 'Edit'; + editBtn.textContent = 'bearbeiten'; editBtn.addEventListener('click', () => editRec(key)); actions.appendChild(editBtn); } @@ -241,6 +249,13 @@ const rec = JSON.parse(JSON.stringify(data[idx])); const existing = data.map(r => r.secret); rec.secret = generateSecret(existing); + const futureDate = new Date(); + futureDate.setDate(futureDate.getDate() + 35); + // Format as DD.MM.YYYY for validity input + const dd = String(futureDate.getDate()).padStart(2, '0'); + const mm = String(futureDate.getMonth() + 1).padStart(2, '0'); + const yyyy = futureDate.getFullYear(); + rec.validity = `${dd}.${mm}.${yyyy}`; data.splice(idx+1, 0, rec); editing.add(rec.secret); render();