fix: MakerWorld Bookmarklet - Chrome Suchmaschinen-Trick statt blockiertem Lesezeichen-Tap

This commit is contained in:
2026-07-11 11:13:55 +02:00
parent 142eda070c
commit dfb0b5d1ba

View File

@@ -226,7 +226,7 @@ function MakerworldTab({ toast }) {
finally { setRegenerating(false); } finally { setRegenerating(false); }
}; };
const bookmarkletCode = tokenInfo ? `javascript:(function(){try{var el=document.getElementById('__NEXT_DATA__');if(!el){alert('MakerWorld: __NEXT_DATA__ nicht gefunden. Bist du auf der Statistikseite (/my/data-overview/model)?');return;}var nd=JSON.parse(el.textContent);var sd=nd.props&&nd.props.pageProps&&nd.props.pageProps.statisticalData;if(!sd||!sd.summary){alert('MakerWorld: Keine Statistikdaten auf dieser Seite gefunden.');return;}fetch('${tokenInfo.origin}/api/tools/makerworld/ingest',{method:'POST',headers:{'Content-Type':'application/json'},body:JSON.stringify({token:'${tokenInfo.token}',statisticalData:sd})}).then(function(r){return r.json();}).then(function(j){alert(j.ok?'DickenDock aktualisiert ✓':('Fehler: '+(j.error||'unbekannt')));}).catch(function(e){alert('Fehler: '+e.message);});}catch(e){alert('Fehler: '+e.message);}})();` : ''; const bookmarkletCode = tokenInfo ? `javascript:(function(){try{var el=document.getElementById('__NEXT_DATA__');if(!el){alert('MakerWorld: __NEXT_DATA__ nicht gefunden. Bist du auf der Statistikseite (/my/data-overview/model)?');return;}var nd=JSON.parse(el.textContent);var sd=nd.props&&nd.props.pageProps&&nd.props.pageProps.statisticalData;if(!sd||!sd.summary){alert('MakerWorld: Keine Statistikdaten auf dieser Seite gefunden.');return;}fetch('${tokenInfo.origin}/api/tools/makerworld/ingest',{method:'POST',headers:{'Content-Type':'application/json'},body:JSON.stringify({token:'${tokenInfo.token}',statisticalData:sd})}).then(function(r){return r.json();}).then(function(j){alert(j.ok?'DickenDock aktualisiert ✓':('Fehler: '+(j.error||'unbekannt')));}).catch(function(e){alert('Fehler: '+e.message);});}catch(e){alert('Fehler: '+e.message);}})();//%s` : '';
const copyBookmarklet = async () => { const copyBookmarklet = async () => {
try { await navigator.clipboard.writeText(bookmarkletCode); toast?.('Bookmarklet-Code kopiert'); } try { await navigator.clipboard.writeText(bookmarkletCode); toast?.('Bookmarklet-Code kopiert'); }
@@ -268,15 +268,24 @@ function MakerworldTab({ toast }) {
</a> </a>
</div> </div>
<div style={{...S.sub,marginBottom:6,fontWeight:700,color:'rgba(255,255,255,0.6)'}}>Am Handy:</div> <div style={{...S.sub,marginBottom:6,fontWeight:700,color:'rgba(255,255,255,0.6)'}}>Am Handy (Chrome):</div>
<div style={{...S.sub,marginBottom:10}}> <div style={{...S.sub,marginBottom:10}}>
Erst irgendeine Seite als Lesezeichen speichern, dann dieses Lesezeichen bearbeiten und Normale Lesezeichen mit <code style={{color:'#4ecdc4'}}>javascript:</code>-Code werden von mobilen
als Namen z.B. "DickenDock Sync" eintragen als URL den kopierten Code einfügen (ersetzt Browsern beim Antippen mittlerweile blockiert. Zuverlässig funktioniert stattdessen der
die bisherige URL komplett): "Alternative Suchmaschine"-Trick:
<br/>1. Code unten kopieren
<br/>2. Chrome Einstellungen Suchmaschine Suchmaschinen verwalten "Hinzufügen"
<br/>3. Suchmaschine: z.B. <code style={{color:'#4ecdc4'}}>DickenDock Sync</code>, Suchwort: z.B. <code style={{color:'#4ecdc4'}}>dds</code>, URL: den kopierten Code einfügen
<br/>4. Speichern, dann auf der MakerWorld-Statistikseite in die Adresszeile tippen, <code style={{color:'#4ecdc4'}}>dds</code> eingeben, Leertaste, Enter
</div> </div>
<button onClick={copyBookmarklet} style={{...S.btn('#4ecdc4')}}> <button onClick={copyBookmarklet} style={{...S.btn('#4ecdc4')}}>
📋 Bookmarklet-Code kopieren 📋 Bookmarklet-Code kopieren
</button> </button>
<div style={{...S.sub,marginTop:10}}>
Firefox für Android unterstützt diesen Trick leider nicht zuverlässig dafür entweder kurz zu
Chrome wechseln, oder den <b>Kiwi Browser</b> installieren (Chromium-basiert, unterstützt
klassische Lesezeichen-Bookmarklets wieder ganz normal).
</div>
<div style={{display:'flex',gap:8,marginTop:14,paddingTop:14,borderTop:'1px solid rgba(255,255,255,0.07)'}}> <div style={{display:'flex',gap:8,marginTop:14,paddingTop:14,borderTop:'1px solid rgba(255,255,255,0.07)'}}>
<button onClick={regenerateToken} disabled={regenerating} style={{...S.btn('#f87171'),opacity:regenerating?0.5:1}}> <button onClick={regenerateToken} disabled={regenerating} style={{...S.btn('#f87171'),opacity:regenerating?0.5:1}}>