Skip to content

Commit 9436317

Browse files
committed
UI/UX Improvements
1 parent fb5141d commit 9436317

5 files changed

Lines changed: 314 additions & 21 deletions

File tree

docs/content/compliance/_index.md

Lines changed: 15 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,8 @@ Each test sends a request that violates a specific **MUST** or **MUST NOT** requ
1818
</div>
1919

2020
<div id="lang-filter"></div>
21+
<div id="method-filter"></div>
22+
<div id="rfc-level-filter"></div>
2123
<div id="table-compliance"><p><em>Loading...</em></p></div>
2224

2325
<script src="/Http11Probe/probe/data.js"></script>
@@ -63,11 +65,21 @@ Each test sends a request that violates a specific **MUST** or **MUST NOT** requ
6365
'COMP-CONNECTION-CLOSE','COMP-HTTP10-DEFAULT-CLOSE','COMP-HTTP10-NO-HOST'
6466
]}
6567
];
66-
function render(data) {
68+
var langData = window.PROBE_DATA;
69+
var methodFilter = null;
70+
var rfcLevelFilter = null;
71+
72+
function rerender() {
73+
var data = langData;
74+
if (methodFilter) data = ProbeRender.filterByMethod(data, methodFilter);
75+
if (rfcLevelFilter) data = ProbeRender.filterByRfcLevel(data, rfcLevelFilter);
6776
var ctx = ProbeRender.buildLookups(data.servers);
6877
ProbeRender.renderSubTables('table-compliance', 'Compliance', ctx, GROUPS);
6978
}
70-
render(window.PROBE_DATA);
71-
ProbeRender.renderLanguageFilter('lang-filter', window.PROBE_DATA, render);
79+
rerender();
80+
var catData = ProbeRender.filterByCategory(window.PROBE_DATA, ['Compliance']);
81+
ProbeRender.renderLanguageFilter('lang-filter', window.PROBE_DATA, function (d) { langData = d; rerender(); });
82+
ProbeRender.renderMethodFilter('method-filter', catData, function (m) { methodFilter = m; rerender(); });
83+
ProbeRender.renderRfcLevelFilter('rfc-level-filter', catData, function (l) { rfcLevelFilter = l; rerender(); });
7284
})();
7385
</script>

docs/content/malformed-input/_index.md

Lines changed: 15 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,8 @@ A well-implemented server should respond with `400 Bad Request`, `414 URI Too Lo
1818
</div>
1919

2020
<div id="lang-filter"></div>
21+
<div id="method-filter"></div>
22+
<div id="rfc-level-filter"></div>
2123
<div id="table-malformed"><p><em>Loading...</em></p></div>
2224

2325
<script src="/Http11Probe/probe/data.js"></script>
@@ -45,11 +47,21 @@ A well-implemented server should respond with `400 Bad Request`, `414 URI Too Lo
4547
'MAL-URL-PERCENT-NULL','MAL-URL-PERCENT-CRLF'
4648
]}
4749
];
48-
function render(data) {
50+
var langData = window.PROBE_DATA;
51+
var methodFilter = null;
52+
var rfcLevelFilter = null;
53+
54+
function rerender() {
55+
var data = langData;
56+
if (methodFilter) data = ProbeRender.filterByMethod(data, methodFilter);
57+
if (rfcLevelFilter) data = ProbeRender.filterByRfcLevel(data, rfcLevelFilter);
4958
var ctx = ProbeRender.buildLookups(data.servers);
5059
ProbeRender.renderSubTables('table-malformed', 'MalformedInput', ctx, GROUPS);
5160
}
52-
render(window.PROBE_DATA);
53-
ProbeRender.renderLanguageFilter('lang-filter', window.PROBE_DATA, render);
61+
rerender();
62+
var catData = ProbeRender.filterByCategory(window.PROBE_DATA, ['MalformedInput']);
63+
ProbeRender.renderLanguageFilter('lang-filter', window.PROBE_DATA, function (d) { langData = d; rerender(); });
64+
ProbeRender.renderMethodFilter('method-filter', catData, function (m) { methodFilter = m; rerender(); });
65+
ProbeRender.renderRfcLevelFilter('rfc-level-filter', catData, function (l) { rfcLevelFilter = l; rerender(); });
5466
})();
5567
</script>

docs/content/normalization/_index.md

Lines changed: 15 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,8 @@ Some tests are **unscored** (marked with `*`). These cover behaviors like case n
2424
</div>
2525

2626
<div id="lang-filter"></div>
27+
<div id="method-filter"></div>
28+
<div id="rfc-level-filter"></div>
2729
<div id="table-normalization"><p><em>Loading...</em></p></div>
2830

2931
<script src="/Http11Probe/probe/data.js"></script>
@@ -34,11 +36,21 @@ Some tests are **unscored** (marked with `*`). These cover behaviors like case n
3436
document.getElementById('table-normalization').innerHTML = '<p><em>No probe data available yet. Run the Probe workflow manually on <code>main</code> to generate results.</em></p>';
3537
return;
3638
}
37-
function render(data) {
39+
var langData = window.PROBE_DATA;
40+
var methodFilter = null;
41+
var rfcLevelFilter = null;
42+
43+
function rerender() {
44+
var data = langData;
45+
if (methodFilter) data = ProbeRender.filterByMethod(data, methodFilter);
46+
if (rfcLevelFilter) data = ProbeRender.filterByRfcLevel(data, rfcLevelFilter);
3847
var ctx = ProbeRender.buildLookups(data.servers);
3948
ProbeRender.renderTable('table-normalization', 'Normalization', ctx);
4049
}
41-
render(window.PROBE_DATA);
42-
ProbeRender.renderLanguageFilter('lang-filter', window.PROBE_DATA, render);
50+
rerender();
51+
var catData = ProbeRender.filterByCategory(window.PROBE_DATA, ['Normalization']);
52+
ProbeRender.renderLanguageFilter('lang-filter', window.PROBE_DATA, function (d) { langData = d; rerender(); });
53+
ProbeRender.renderMethodFilter('method-filter', catData, function (m) { methodFilter = m; rerender(); });
54+
ProbeRender.renderRfcLevelFilter('rfc-level-filter', catData, function (l) { rfcLevelFilter = l; rerender(); });
4355
})();
4456
</script>

docs/content/smuggling/_index.md

Lines changed: 15 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,8 @@ Some tests are **unscored** (marked with `*`). These send payloads where the RFC
2222
</div>
2323

2424
<div id="lang-filter"></div>
25+
<div id="method-filter"></div>
26+
<div id="rfc-level-filter"></div>
2527
<div id="table-smuggling"><p><em>Loading...</em></p></div>
2628

2729
<script src="/Http11Probe/probe/data.js"></script>
@@ -64,11 +66,21 @@ Some tests are **unscored** (marked with `*`). These send payloads where the RFC
6466
'SMUG-ABSOLUTE-URI-HOST-MISMATCH','SMUG-MULTIPLE-HOST-COMMA'
6567
]}
6668
];
67-
function render(data) {
69+
var langData = window.PROBE_DATA;
70+
var methodFilter = null;
71+
var rfcLevelFilter = null;
72+
73+
function rerender() {
74+
var data = langData;
75+
if (methodFilter) data = ProbeRender.filterByMethod(data, methodFilter);
76+
if (rfcLevelFilter) data = ProbeRender.filterByRfcLevel(data, rfcLevelFilter);
6877
var ctx = ProbeRender.buildLookups(data.servers);
6978
ProbeRender.renderSubTables('table-smuggling', 'Smuggling', ctx, GROUPS);
7079
}
71-
render(window.PROBE_DATA);
72-
ProbeRender.renderLanguageFilter('lang-filter', window.PROBE_DATA, render);
80+
rerender();
81+
var catData = ProbeRender.filterByCategory(window.PROBE_DATA, ['Smuggling']);
82+
ProbeRender.renderLanguageFilter('lang-filter', window.PROBE_DATA, function (d) { langData = d; rerender(); });
83+
ProbeRender.renderMethodFilter('method-filter', catData, function (m) { methodFilter = m; rerender(); });
84+
ProbeRender.renderRfcLevelFilter('rfc-level-filter', catData, function (l) { rfcLevelFilter = l; rerender(); });
7385
})();
7486
</script>

0 commit comments

Comments
 (0)