From cdfb4b7ff9829cb9048b573f7f1775dc8029f75a Mon Sep 17 00:00:00 2001 From: Markus Heiser Date: Sun, 16 May 2021 13:16:44 +0200 Subject: [PATCH] [fix] make /stats more CSP compliant - bar graph Replace bar graph's *styles* (see below) by CSP compliant implementation in ``searx/static/themes/__common__/less/stats.less`` :: ./simple/stats.html:49: {{- "" -}} ./simple/stats.html:57: {{- "" -}} ./simple/stats.html:58: {{- "" -}} ./oscar/stats.html:50: {{- "" -}} ./oscar/stats.html:58: {{- "" -}} ./oscar/stats.html:59: {{- "" -}} Reported-by: https://github.com/searxng/searxng/issues/57 Signed-off-by: Markus Heiser --- .../static/themes/__common__/less/stats.less | 38 +++++++++++++++++++ .../oscar/src/less/logicodev-dark/oscar.less | 1 + .../oscar/src/less/logicodev/oscar.less | 1 + .../oscar/src/less/logicodev/preferences.less | 14 ------- .../themes/oscar/src/less/pointhi/oscar.less | 1 + .../oscar/src/less/pointhi/preferences.less | 15 -------- searx/static/themes/simple/less/style.less | 1 + searx/static/themes/simple/less/toolkit.less | 14 ------- searx/templates/oscar/stats.html | 18 ++++----- searx/templates/simple/stats.html | 20 +++++----- 10 files changed, 62 insertions(+), 61 deletions(-) create mode 100644 searx/static/themes/__common__/less/stats.less diff --git a/searx/static/themes/__common__/less/stats.less b/searx/static/themes/__common__/less/stats.less new file mode 100644 index 000000000..6c2117b39 --- /dev/null +++ b/searx/static/themes/__common__/less/stats.less @@ -0,0 +1,38 @@ +.bar-chart-value { + width: 3em; +} + +.bar-chart-graph { + width: 300px; +} + +.bar-chart-bar { + border: 3px solid #5bc0de; + margin: 1px 0; +} + +.bar-chart-serie1 { + border: 3px solid #5bc0de; + margin: 1px 0; + float: left; +} + +.bar-chart-serie2 { + border: 3px solid #deb15b; + margin: 1px 0; + float: left; +} + +.bar0{ + width: 0; + border: 0; +} + +.generate-bar(100); + +.generate-bar(@n, @i: 1) when (@i =< @n) { + .bar@{i} { + width: (@i * 100% / @n); + } + .generate-bar(@n, (@i + 1)); +} diff --git a/searx/static/themes/oscar/src/less/logicodev-dark/oscar.less b/searx/static/themes/oscar/src/less/logicodev-dark/oscar.less index 44d3154a8..53ee7ae31 100644 --- a/searx/static/themes/oscar/src/less/logicodev-dark/oscar.less +++ b/searx/static/themes/oscar/src/less/logicodev-dark/oscar.less @@ -1,5 +1,6 @@ @import "../logicodev/variables.less"; @import "../../../../__common__/less/new_issue.less"; +@import "../../../../__common__/less/stats.less"; @stacked-bar-chart: rgb(213, 216, 215, 1); diff --git a/searx/static/themes/oscar/src/less/logicodev/oscar.less b/searx/static/themes/oscar/src/less/logicodev/oscar.less index 3415af30b..57c351bd9 100644 --- a/searx/static/themes/oscar/src/less/logicodev/oscar.less +++ b/searx/static/themes/oscar/src/less/logicodev/oscar.less @@ -1,5 +1,6 @@ @import "variables.less"; @import "../../../../__common__/less/new_issue.less"; +@import "../../../../__common__/less/stats.less"; @import "navbar.less"; @import "footer.less"; diff --git a/searx/static/themes/oscar/src/less/logicodev/preferences.less b/searx/static/themes/oscar/src/less/logicodev/preferences.less index 790ed10b7..32e230413 100644 --- a/searx/static/themes/oscar/src/less/logicodev/preferences.less +++ b/searx/static/themes/oscar/src/less/logicodev/preferences.less @@ -89,17 +89,3 @@ td:hover .engine-tooltip, th:hover .engine-tooltip, .engine-tooltip:hover { padding: 0.4rem 0; width: 1px; } - -.stacked-bar-chart-serie1 { - .stacked-bar-chart-base(); - background: #5bc0de; - box-shadow: inset 0 -1px 0 rgba(0,0,0,.15); - padding: 0.4rem 0; -} - -.stacked-bar-chart-serie2 { - .stacked-bar-chart-base(); - background: #deb15b; - box-shadow: inset 0 -1px 0 rgba(0,0,0,.15); - padding: 0.4rem 0; -} diff --git a/searx/static/themes/oscar/src/less/pointhi/oscar.less b/searx/static/themes/oscar/src/less/pointhi/oscar.less index 4ac8da564..689fc1471 100644 --- a/searx/static/themes/oscar/src/less/pointhi/oscar.less +++ b/searx/static/themes/oscar/src/less/pointhi/oscar.less @@ -1,5 +1,6 @@ @import "variables.less"; @import "../../../../__common__/less/new_issue.less"; +@import "../../../../__common__/less/stats.less"; @import "footer.less"; @import "checkbox.less"; diff --git a/searx/static/themes/oscar/src/less/pointhi/preferences.less b/searx/static/themes/oscar/src/less/pointhi/preferences.less index 352aed513..25ba100d6 100644 --- a/searx/static/themes/oscar/src/less/pointhi/preferences.less +++ b/searx/static/themes/oscar/src/less/pointhi/preferences.less @@ -77,18 +77,3 @@ th:hover .engine-tooltip, td:hover .engine-tooltip, .engine-tooltip:hover { padding: 0.4rem 0; width: 1px; } - -.stacked-bar-chart-serie1 { - .stacked-bar-chart-base(); - background: #5bc0de; - box-shadow: inset 0 -1px 0 rgba(0,0,0,.15); - padding: 0.4rem 0; -} - -.stacked-bar-chart-serie2 { - .stacked-bar-chart-base(); - background: #deb15b; - box-shadow: inset 0 -1px 0 rgba(0,0,0,.15); - padding: 0.4rem 0; -} - diff --git a/searx/static/themes/simple/less/style.less b/searx/static/themes/simple/less/style.less index b82b1cb1f..3b0506b98 100644 --- a/searx/static/themes/simple/less/style.less +++ b/searx/static/themes/simple/less/style.less @@ -7,6 +7,7 @@ @stacked-bar-chart: rgb(0, 0, 0); @import "../../__common__/less/new_issue.less"; +@import "../../__common__/less/stats.less"; @import "normalize.less"; diff --git a/searx/static/themes/simple/less/toolkit.less b/searx/static/themes/simple/less/toolkit.less index 3e9274fc8..c381af802 100644 --- a/searx/static/themes/simple/less/toolkit.less +++ b/searx/static/themes/simple/less/toolkit.less @@ -551,17 +551,3 @@ th:hover .engine-tooltip, td:hover .engine-tooltip, .engine-tooltip:hover { padding: 0.4rem 0; width: 1px; } - -.stacked-bar-chart-serie1 { - .stacked-bar-chart-base(); - background: #5bc0de; - box-shadow: inset 0 -1px 0 rgba(0,0,0,.15); - padding: 0.4rem 0; -} - -.stacked-bar-chart-serie2 { - .stacked-bar-chart-base(); - background: #deb15b; - box-shadow: inset 0 -1px 0 rgba(0,0,0,.15); - padding: 0.4rem 0; -} diff --git a/searx/templates/oscar/stats.html b/searx/templates/oscar/stats.html index 49c776ea8..8b57e39b6 100644 --- a/searx/templates/oscar/stats.html +++ b/searx/templates/oscar/stats.html @@ -45,19 +45,19 @@ {%- if engine_stat.result_count -%} - {{- engine_stat.result_count | int -}}{{- "" -}} - +
{{- engine_stat.result_count | int -}}
{{- "" -}} + {%- endif -%} {%- if engine_stat.total -%} - {{- engine_stat.total | round(1) -}}{{- "" -}} - {{- "" -}} +
{{- engine_stat.total | round(1) -}}
{{- "" -}} +