Compare commits

..

2 commits

Author SHA1 Message Date
0fbfda4b81 v2.16.1 - Fix: filtro "Relevant only" non compariva su edit_ruleset con contesto host
Le righe "no match" erano incluse in RELEVANT_SEL e risultavano rilevanti:
su pagine con contesto host/service ogni riga aveva un badge, quindi non
c'era mai nulla da nascondere e la barra non veniva inserita. Ora il filtro
nasconde proprio le righe che non matchano.

Inoltre il guard cmkFilterToggle veniva settato in cima alla funzione:
un primo tentativo a vuoto bloccava per sempre i successivi. Ora viene
settato solo quando la barra viene effettivamente inserita.
2026-07-13 16:19:28 +02:00
033bc1c482 Aggiorna il file .gitignore per includere file di test personali e migliorare la gestione dei file ignorati 2026-07-13 15:29:30 +02:00
3 changed files with 12 additions and 7 deletions

5
.gitignore vendored
View file

@ -1,8 +1,9 @@
### My Personal test file for Dev only ###
/.*/ /.*/
/*.bat /*.bat
/*.ps1 /*.ps1
/*.sh
/*.md /*.md
!/.gitlab
!README.md !README.md
!CHANGELOG.md !CHANGELOG.md

View file

@ -70,9 +70,9 @@ Applies to: `mode=edit_ruleset` with host/service context.
--- ---
### Ruleset Filter Toggle ### Ruleset Filter Toggle
After match/ineffective highlighting runs, a **"Relevant only"** button appears above the rule list. Clicking it hides all non-highlighted rows and empty folders, leaving only the rules that matter for the current context. After match/ineffective highlighting runs, a **"Relevant only"** button appears above the rule list. Clicking it hides all `✗ no match` rows, non-highlighted rows and empty folders, leaving only the matching (or ineffective) rules for the current context.
Applies to: `mode=edit_ruleset` (when at least one highlighted row exists). Applies to: `mode=edit_ruleset` (when at least one `✓ match` or ineffective row exists).
--- ---

View file

@ -1,7 +1,7 @@
// ==UserScript== // ==UserScript==
// @name Checkmk SwissKnife // @name Checkmk SwissKnife
// @namespace https://luigidacunto.com/ // @namespace https://luigidacunto.com/
// @version 2.16.0 // @version 2.16.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
@ -729,9 +729,9 @@
function addRulesetFilterToggle(doc) { function addRulesetFilterToggle(doc) {
if (doc.body.dataset.cmkFilterToggle === '1') return; if (doc.body.dataset.cmkFilterToggle === '1') return;
doc.body.dataset.cmkFilterToggle = '1';
const RELEVANT_SEL = 'tr.cmk-sk-rule-match, tr.cmk-sk-rule-nomatch, tr.cmk-sk-ineffective'; // Le righe "no match" NON sono rilevanti: il filtro serve proprio a nasconderle
const RELEVANT_SEL = 'tr.cmk-sk-rule-match, tr.cmk-sk-ineffective';
// No highlighted rows = no active search, toggle is useless // No highlighted rows = no active search, toggle is useless
const relevantCount = doc.querySelectorAll(RELEVANT_SEL).length; const relevantCount = doc.querySelectorAll(RELEVANT_SEL).length;
@ -750,6 +750,10 @@
if (!irrelevantRows && !irrelevantFolders) return; if (!irrelevantRows && !irrelevantFolders) return;
// Guard settato solo qui: se la tabella non era ancora renderizzata
// il prossimo tentativo deve poter riprovare
doc.body.dataset.cmkFilterToggle = '1';
injectStyles(doc, 'cmk-sk-filter-toggle-styles', ` injectStyles(doc, 'cmk-sk-filter-toggle-styles', `
#cmk-sk-filter-bar { #cmk-sk-filter-bar {
display: flex; display: flex;