From 29900b5f7832f1240a1e5dcda88b8c679baaa05a Mon Sep 17 00:00:00 2001 From: candela97 <54083835+candela97@users.noreply.github.com> Date: Sun, 28 Jul 2024 03:18:31 +0800 Subject: [PATCH 1/2] Fix day select dropdown --- .../Features/Community/Guides/FRemoveGuidesLangFilter.ts | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/js/Content/Features/Community/Guides/FRemoveGuidesLangFilter.ts b/src/js/Content/Features/Community/Guides/FRemoveGuidesLangFilter.ts index e3579b69c..60bb5b0fa 100644 --- a/src/js/Content/Features/Community/Guides/FRemoveGuidesLangFilter.ts +++ b/src/js/Content/Features/Community/Guides/FRemoveGuidesLangFilter.ts @@ -23,7 +23,13 @@ export default class FRemoveGuidesLangFilter extends Feature { linkNode.href = newLink.href; - HTML.replace(node, node.outerHTML); // Sanitize click listeners + /* + * There's no `onclick` attribute when filtering by Most Popular, + * so avoid replacing the node and breaking the day select dropdown. + */ + if (node.hasAttribute("onclick")) { + HTML.replace(node, node.outerHTML); // Sanitize click listeners + } } } From d18e5775b3972a7f8beea8e86847527feaf42214 Mon Sep 17 00:00:00 2001 From: candela97 <54083835+candela97@users.noreply.github.com> Date: Sun, 28 Jul 2024 03:21:12 +0800 Subject: [PATCH 2/2] Restore click listener on new tab --- .../Features/Community/Guides/FRemoveGuidesLangFilter.ts | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/js/Content/Features/Community/Guides/FRemoveGuidesLangFilter.ts b/src/js/Content/Features/Community/Guides/FRemoveGuidesLangFilter.ts index 60bb5b0fa..8a799a888 100644 --- a/src/js/Content/Features/Community/Guides/FRemoveGuidesLangFilter.ts +++ b/src/js/Content/Features/Community/Guides/FRemoveGuidesLangFilter.ts @@ -28,7 +28,11 @@ export default class FRemoveGuidesLangFilter extends Feature { * so avoid replacing the node and breaking the day select dropdown. */ if (node.hasAttribute("onclick")) { - HTML.replace(node, node.outerHTML); // Sanitize click listeners + const newTab = HTML.replace(node, node.outerHTML)!; // Sanitize click listeners + + newTab.addEventListener("click", () => { + window.location.href = newLink.href; + }); } } }