diff --git a/scripts/js/queries.js b/scripts/js/queries.js index c0a3c2ba..94a814bb 100644 --- a/scripts/js/queries.js +++ b/scripts/js/queries.js @@ -28,6 +28,17 @@ const filters = [ "reply", "dnssec", ]; +var doDNSSEC = false; + +// Check if pihole is validiting DNSSEC +function getDnssecConfig() { + $.getJSON( + document.body.dataset.apiurl + "/config/dns/dnssec", + function(data) { + doDNSSEC = data.config.dns.dnssec; + } + ); +} function initDateRangePicker() { $("#querytime").daterangepicker( @@ -480,6 +491,9 @@ function liveUpdate() { } $(() => { + // Do we want to show DNSSEC icons? + getDnssecConfig(); + // Do we want to filter queries? const GETDict = utils.parseQueryString(); @@ -565,7 +579,6 @@ $(() => { }, rowCallback(row, data) { const querystatus = parseQueryStatus(data); - const dnssec = parseDNSSEC(data); if (querystatus.icon !== false) { $("td:eq(1)", row).html( @@ -589,14 +602,17 @@ $(() => { // Prefix colored DNSSEC icon to domain text let dnssecIcon = ""; - dnssecIcon = - ''; + if (doDNSSEC === true) { + const dnssec = parseDNSSEC(data); + dnssecIcon = + ''; + } // Escape HTML in domain domain = dnssecIcon + utils.escapeHtml(domain); diff --git a/style/pi-hole.css b/style/pi-hole.css index fc51792e..1ab96976 100644 --- a/style/pi-hole.css +++ b/style/pi-hole.css @@ -1609,3 +1609,13 @@ textarea.field-sizing-content { opacity: 0; transition: opacity 200ms ease-in-out; } + +/* Used in query log page */ +td.dnssec { + padding-inline-start: 2.25em !important; + text-indent: -1.25em; +} +td.dnssec i { + text-indent: 0; + margin-left: -0.5rem; +}