feat(clickTtPlayerRegistrationService, MembersView): enhance Click-TT registration flow and UI feedback

- Replaced the abort confirmation flow with a new function to open the application after a search, improving user experience by directly navigating to the application.
- Updated error handling to provide clearer messages when a confirm dialog is encountered, enhancing traceability.
- Modified the MembersView to track application submission status and display detailed success/error messages, improving user feedback during the registration process.
- Introduced a new method to format and display trace details, aiding in debugging and user communication.
This commit is contained in:
Torsten Schulz (local)
2026-03-11 15:31:37 +01:00
parent 139d169fcc
commit 8fc754c235
3 changed files with 106 additions and 10 deletions

View File

@@ -368,13 +368,40 @@ function injectProxyNavigationScript(html, proxyBaseUrl, pageBaseUrl, sid) {
"console.log('[ClickTT Proxy] inline confirm elements json',JSON.stringify(elements));",
'}catch(e){}',
'}',
'function bindInlineConfirmElements(){',
'try{',
"var elements=[].slice.call(document.querySelectorAll('[onclick*=\"confirm(\"]'));",
'elements.forEach(function(el,index){',
"if(el.__clickttConfirmBound)return;",
'el.__clickttConfirmBound=true;',
"el.addEventListener('click',function(event){",
"try{console.log('[ClickTT Proxy] direct confirm element click',{index:index,tag:el.tagName,name:el.getAttribute('name'),value:el.getAttribute('value'),href:el.getAttribute('href'),onclick:el.getAttribute('onclick'),text:(el.textContent||'').trim().slice(0,120)});}catch(e){}",
'var allowed=shouldAllowInlineConfirm(el);',
'if(!allowed){',
'event.preventDefault();',
'event.stopPropagation();',
'return false;',
'}',
"var href=el.getAttribute&&el.getAttribute('href');",
'var targetUrl=normalizeUrl(href,PAGE_BASE_URL);',
'if(targetUrl&&shouldProxyUrl(targetUrl)){',
'event.preventDefault();',
'event.stopPropagation();',
'navigateViaProxy(targetUrl);',
'return false;',
'}',
'return true;',
'},true);',
'});',
'}catch(e){}',
'}',
'function getSubmitTarget(form, submitter){',
"var action=submitter&&submitter.getAttribute?submitter.getAttribute('formaction'):null;",
'if(action)return normalizeUrl(action,PAGE_BASE_URL);',
"return normalizeUrl((form&&form.getAttribute?form.getAttribute('action'):null)||PAGE_BASE_URL,PAGE_BASE_URL);",
'}',
'var lastSubmitter=null;',
'if(document.readyState==="loading"){document.addEventListener("DOMContentLoaded",logInlineConfirmElements,{once:true});}else{logInlineConfirmElements();}',
'if(document.readyState==="loading"){document.addEventListener("DOMContentLoaded",function(){logInlineConfirmElements();bindInlineConfirmElements();},{once:true});}else{logInlineConfirmElements();bindInlineConfirmElements();}',
"document.addEventListener('click',function(event){",
"var anchor=event.target&&event.target.closest?event.target.closest('a[href]'):null;",
"var submitControl=event.target&&event.target.closest?event.target.closest('button, input[type=\"submit\"], input[type=\"image\"]'):null;",