From f9352a94c65c9e8aeecad786bf31cbff79c163c1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?V=C3=ADctor=20Losada=20Hern=C3=A1ndez?= Date: Fri, 31 May 2024 16:47:17 +0200 Subject: [PATCH] "Refactor BrewRenderer: simplify URL param extraction, remove iframe existence checks, and update scrollIntoView behavior" --- client/homebrew/brewRenderer/brewRenderer.jsx | 21 ++----------------- 1 file changed, 2 insertions(+), 19 deletions(-) diff --git a/client/homebrew/brewRenderer/brewRenderer.jsx b/client/homebrew/brewRenderer/brewRenderer.jsx index e3742a051..e01b2828f 100644 --- a/client/homebrew/brewRenderer/brewRenderer.jsx +++ b/client/homebrew/brewRenderer/brewRenderer.jsx @@ -81,9 +81,7 @@ const BrewRenderer = (props)=>{ useEffect(() => { - // Extract element ID from the URL - const urlParams = new URLSearchParams(window.location.search); - const elementId = urlParams.get('elementId'); // Assume the URL is like ?elementId=yourElementId + const elementId = window.location.hash.slice(1); // Remove the leading '#' if (elementId) { const iframe = document.getElementById('BrewRenderer'); @@ -106,7 +104,7 @@ const BrewRenderer = (props)=>{ if (brewRenderer) { const pages = brewRenderer.querySelectorAll('.page'); if (pages && pages[pageNumber]) { - pages[pageNumber].scrollIntoView({ behavior: 'smooth', block: 'start' }); + pages[pageNumber].scrollIntoView({ block: 'start' }); } } } @@ -114,22 +112,10 @@ const BrewRenderer = (props)=>{ const getPageContainingElement = (iframe, elementId) => { return new Promise((resolve, reject) => { - if (!iframe || !iframe.contentWindow) { - console.log("iframe doesn't exist or content window is not accessible."); - reject(new Error("iframe doesn't exist or content window is not accessible.")); - return; - } - iframe.addEventListener('load', () => { - console.log('Iframe has finished loading'); const brewRenderer = iframe.contentWindow.document.querySelector('.brewRenderer'); console.log('brewRenderer:', brewRenderer); - if (!brewRenderer) { - console.log("brewRenderer doesn't exist"); - reject(new Error("brewRenderer doesn't exist")); - return; - } setTimeout(() => { const pages = brewRenderer.querySelectorAll('.page'); @@ -137,11 +123,8 @@ const BrewRenderer = (props)=>{ for (let i = 0; i < pages.length; i++) { if (pages[i].querySelector(`#${elementId}`)) { - console.log('Page containing element found:', i); resolve(i); return; - } else { - console.log('Page containing element not found:', i); } }