Fix Configure in WATO menu not appearing on views without a Host column
Falls back to any per-row link carrying a host= parameter when the classic td.nobr Host column isn't present, e.g. on the Service search view grouped by service across hosts.
This commit is contained in:
parent
3990656407
commit
3629447279
3 changed files with 14 additions and 2 deletions
|
|
@ -5,6 +5,11 @@ All notable changes to **Checkmk SwissKnife** are documented in this file.
|
||||||
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
|
||||||
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
||||||
|
|
||||||
|
## [2.20.1] - 2026-08-20
|
||||||
|
|
||||||
|
### Fixed
|
||||||
|
- "Configure in WATO" menu (host select + "Apri" button) did not appear on views without a dedicated Host column (e.g. "Service search" / `searchsvc`, grouped by service across hosts). Hostnames are now also recovered from any per-row link carrying a `host=` parameter when the classic Host column isn't present.
|
||||||
|
|
||||||
## [2.20.0] - 2026-07-31
|
## [2.20.0] - 2026-07-31
|
||||||
|
|
||||||
### Added
|
### Added
|
||||||
|
|
|
||||||
|
|
@ -112,6 +112,7 @@ Adds a **Select hosts (N)** dropdown and an **Open** button to the monitoring vi
|
||||||
|
|
||||||
- Up to 50 hosts per page (keeps URLs within safe length limits)
|
- Up to 50 hosts per page (keeps URLs within safe length limits)
|
||||||
- Deduplicates hostnames automatically (useful on service views where hosts repeat)
|
- Deduplicates hostnames automatically (useful on service views where hosts repeat)
|
||||||
|
- Works even on views without a dedicated Host column (e.g. "Service search"), by recovering hostnames from any per-row link
|
||||||
- **Open** button is disabled (gray) until a page is selected; turns blue when active; resets after opening
|
- **Open** button is disabled (gray) until a page is selected; turns blue when active; resets after opening
|
||||||
- Only visible for users with WATO configuration access
|
- Only visible for users with WATO configuration access
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
// ==UserScript==
|
// ==UserScript==
|
||||||
// @name Checkmk SwissKnife
|
// @name Checkmk SwissKnife
|
||||||
// @namespace https://luigidacunto.com/
|
// @namespace https://luigidacunto.com/
|
||||||
// @version 2.20.0
|
// @version 2.20.1
|
||||||
// @checkmk 2.3.x - 2.4.x
|
// @checkmk 2.3.x - 2.4.x
|
||||||
// @description Collection of UI improvements for Checkmk WATO. Each fix or enhancement is added here as an independent feature.
|
// @description Collection of UI improvements for Checkmk WATO. Each fix or enhancement is added here as an independent feature.
|
||||||
// @author Luigi D'Acunto
|
// @author Luigi D'Acunto
|
||||||
|
|
@ -1174,8 +1174,14 @@
|
||||||
const menues = doc.querySelector('#page_menu_bar td.menues');
|
const menues = doc.querySelector('#page_menu_bar td.menues');
|
||||||
if (!menues) return;
|
if (!menues) return;
|
||||||
|
|
||||||
|
// Views with a dedicated Host column expose it as td.nobr. Views without one
|
||||||
|
// (e.g. searchsvc "Service search", grouped by service across hosts) still
|
||||||
|
// carry host= on other per-row links (Service, Icons, Perf-O-Meter...), so
|
||||||
|
// fall back to any link in the row when the classic column isn't there.
|
||||||
|
let hostLinks = [...doc.querySelectorAll('tr.data td.nobr a[href*="host="]')];
|
||||||
|
if (!hostLinks.length) hostLinks = [...doc.querySelectorAll('tr.data a[href*="host="]')];
|
||||||
const hosts = [...new Set(
|
const hosts = [...new Set(
|
||||||
[...doc.querySelectorAll('tr.data td.nobr a[href*="host="]')]
|
hostLinks
|
||||||
.map(a => { const m = a.href.match(/[?&]host=([^&]+)/); return m ? decodeURIComponent(m[1]) : null; })
|
.map(a => { const m = a.href.match(/[?&]host=([^&]+)/); return m ? decodeURIComponent(m[1]) : null; })
|
||||||
.filter(Boolean)
|
.filter(Boolean)
|
||||||
)];
|
)];
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue