diff --git a/user_script/checkmk_swissknife.user.js b/user_script/checkmk_swissknife.user.js
index bb57390..1b41ffe 100644
--- a/user_script/checkmk_swissknife.user.js
+++ b/user_script/checkmk_swissknife.user.js
@@ -1,7 +1,7 @@
// ==UserScript==
// @name Checkmk SwissKnife
// @namespace https://luigidacunto.com/
-// @version 2.9.2
+// @version 2.9.3
// @description Raccolta di miglioramenti all'interfaccia di Checkmk WATO. Ogni fix o enhancement viene aggiunto qui come feature indipendente.
// @author Luigi D'Acunto
// @homepageURL https://git.luigidacunto.com/tools/checkmk-swissknife
@@ -837,7 +837,26 @@
flex-shrink: 0;
}
.cmk-sk-inv-btn:hover { opacity: 1; background: rgba(229,165,0,0.18) !important; }
- .cmk-sk-inv-btn svg { display: block; }
+ .cmk-sk-copy-btn {
+ display: inline-flex;
+ align-items: center;
+ justify-content: center;
+ width: 16px;
+ height: 16px;
+ background: transparent;
+ color: #999 !important;
+ border: 1px solid #666;
+ border-radius: 3px;
+ margin-right: 5px;
+ vertical-align: middle;
+ cursor: pointer;
+ opacity: 0.7;
+ flex-shrink: 0;
+ padding: 0;
+ }
+ .cmk-sk-copy-btn:hover { opacity: 1; border-color: #aaa; color: #ccc !important; }
+ .cmk-sk-copy-btn.copied { border-color: #4caf50 !important; color: #4caf50 !important; opacity: 1; }
+ .cmk-sk-inv-btn svg, .cmk-sk-copy-btn svg { display: block; }
`);
hostCells.forEach(td => {
@@ -854,6 +873,20 @@
btn.rel = 'noopener';
btn.title = `Service Discovery: ${hostname}`;
btn.innerHTML = '';
+
+ const copyBtn = doc.createElement('button');
+ copyBtn.className = 'cmk-sk-copy-btn';
+ copyBtn.type = 'button';
+ copyBtn.title = `Copia hostname: ${hostname}`;
+ copyBtn.innerHTML = '';
+ copyBtn.addEventListener('click', () => {
+ navigator.clipboard.writeText(hostname).then(() => {
+ copyBtn.classList.add('copied');
+ setTimeout(() => copyBtn.classList.remove('copied'), 900);
+ });
+ });
+
+ td.prepend(copyBtn);
td.prepend(btn);
});