diff --git a/static/addressbook.html b/static/addressbook.html index 345d5ed..3b2cd20 100644 --- a/static/addressbook.html +++ b/static/addressbook.html @@ -844,7 +844,7 @@ var html = '' + ''; - if (isAdmin) html += ''; + if (isAdmin) html += ''; html += ''; entries.forEach(function(e) { @@ -872,6 +872,7 @@ html += ''; if (isAdmin) { html += ''; + html += ''; html += ''; } html += ''; @@ -1023,6 +1024,27 @@ return; } + // Clone entry + if (btn.getAttribute('data-clone-entry')) { + var name = btn.getAttribute('data-clone-entry'); + var scope = btn.getAttribute('data-scope'); + var folder = btn.getAttribute('data-folder'); + var entry = currentEntries.find(function(e) { return e.name === name; }); + if (!entry) return; + // Open as new entry, pre-populated with cloned data + openEditEntry(name, scope, folder, entry.session_type); + // Switch to create mode: enable name field, clear edit mode, set copy name + entryEditMode = null; + document.getElementById('entry-modal-title').textContent = 'Clone: ' + name; + var nameField = document.getElementById('em-name'); + nameField.disabled = false; + nameField.value = name + '-copy'; + entryTypeSelect.disabled = false; + // Hide move-to-folder (not relevant for new entries) + document.getElementById('em-move-section').style.display = 'none'; + return; + } + // Edit entry if (btn.getAttribute('data-edit-entry')) { openEditEntry(
NameTypeHostUser