[3.3] [CDB][3.3] Opt-In Cookie Manager by klaro Script
Re: [3.3] [CDB][3.3] Opt-In Cookie Manager by klaro Script
Für youtu.be ist doch schon ein bbcode vorhanden.
Aber imc wenn du einen bastelst mit java dann werd ich den gern in die extension aufnehmen.
Aber imc wenn du einen bastelst mit java dann werd ich den gern in die extension aufnehmen.
Re: [3.3] [CDB][3.3] Opt-In Cookie Manager by klaro Script
Dafür würde ich ihn dann erstellen. Der sollte mit wenigen Zeilen zu erstellen sein. Es sei den es tun sich Untiefen und Klippen auf die ich jetzt noch nicht sehen kann.
Re: [3.3] [CDB][3.3] Opt-In Cookie Manager by klaro Script
Kein Problem. Bin dafür auch dankbar für deine Hilfe.
Re: [3.3] [CDB][3.3] Opt-In Cookie Manager by klaro Script
Ich konnte mich nicht bremsen.
BBCode-Benutzung;
HTML Ersetzung für deine Erweiterung:
HTML Ersetzung mit der ich geteste habe:
Mit diesen drei URL's funktioniert der BBCode. Wenn es noch weitere geben sollte bräuchte ich eine Info.
Vielleicht müsste man die Variablen noch besser isolieren. Für heute sollte das aber reichen.
Edit:
@Paul
Startzeiten funktionieren mit dem eingebetten Video nicht. Die werden ignoriert.
@Chris
Wahrscheinlich müss deine if/else Strucktur anders gesetzt werden. Teste mal ob es Fehler gibt wenn die Videos nicht erlaubt sind. Dann müsste dein erstes else hinter das letzte </script>
BBCode-Benutzung;
Code: Alles auswählen
[youtube]{URL}[/youtube]
Code: Alles auswählen
<!-- IF YOUTUBE_BBCODE_SWITCH --><div class="yt_video_layer"></div><!-- ELSE --><div class="yt_video_switch_false">{L_YOUTUBE_ADMIN}</div><!-- ELSE --><div class="yt_video_switch_false">{L_YOUTUBE_ADMIN}</div><!-- ENDIF -->
<script>
var youtubeURL = '{URL}';
var ytVideoAry = document.getElementsByClassName('yt_video_layer');
var ytVideo = ytVideoAry[ytVideoAry.length-1];
var strIdentifier, newYtURL;
if (youtubeURL.includes('watch')) {
const url = new URL(youtubeURL);
const searchParams = new URLSearchParams(url.search);
strIdentifier = searchParams.get('v');
}
else if (youtubeURL.includes('shorts') || youtubeURL.includes('youtu.be')) {
const url = new URL(youtubeURL);
strIdentifier = url.pathname.substring(url.pathname.lastIndexOf('/'));
}
newYtURL = 'https://www.youtube.com/embed/' + strIdentifier;
ytVideo.innerHTML = '<iframe src="' + newYtURL + '" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>';
</script>Code: Alles auswählen
<div class="yt_video_layer"></div>
<script>
var youtubeURL = '{URL}';
var ytVideoAry = document.getElementsByClassName('yt_video_layer');
var ytVideo = ytVideoAry[ytVideoAry.length-1];
var strIdentifier, newYtURL;
if (youtubeURL.includes('watch')) {
const url = new URL(youtubeURL);
const searchParams = new URLSearchParams(url.search);
strIdentifier = searchParams.get('v');
}
else if (youtubeURL.includes('shorts') || youtubeURL.includes('youtu.be')) {
const url = new URL(youtubeURL);
strIdentifier = url.pathname.substring(url.pathname.lastIndexOf('/'));
}
newYtURL = 'https://www.youtube.com/embed/' + strIdentifier;
ytVideo.innerHTML = '<iframe src="' + newYtURL + '" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>';
</script>Code: Alles auswählen
[youtube]https://youtu.be/j90x1Be0bTY[/youtube]
[youtube]https://www.youtube.com/watch?v=k4121ownglU[/youtube]
[youtube]https://www.youtube.com/shorts/ebSFjN1POow[/youtube]Edit:
@Paul
Startzeiten funktionieren mit dem eingebetten Video nicht. Die werden ignoriert.
@Chris
Wahrscheinlich müss deine if/else Strucktur anders gesetzt werden. Teste mal ob es Fehler gibt wenn die Videos nicht erlaubt sind. Dann müsste dein erstes else hinter das letzte </script>
Re: [3.3] [CDB][3.3] Opt-In Cookie Manager by klaro Script
Ich teste das aus und melde mich.
Aber erstmal dafür schon mal danke.
Aber erstmal dafür schon mal danke.
Re: [3.3] [CDB][3.3] Opt-In Cookie Manager by klaro Script
Okay, also @imc, dass funktioniert nur, hast du in einer Zeile was doppelt, was zu viel war:
Für das HTML für meine Erweiterung hattest du das so
Korrekt geschrieben so:
Da war einmal Else zu viel, aber kein Problem.
Ich habe dann das Ganze noch angepasst an den Cookie-Manager, weil man in dem Frame aus src data-src machen muss und dann den data-name einfügen muss.
BBCode-Benutzung:
HTML Ersetzung:
Tipp-Anzeige:
Jetzt gibt es zwei Möglichkeiten.
Man kann hingehen und bei beiden YouTube-BBCodes die HTML‑Ersetzung tauschen, was am einfachsten ist. Dann spielt es keine Rolle, welchen bbcode der Benutzer benutzt.
Eventuell muss man die Foren/Beiträge im ACP resynchronisieren, aber das wäre die unkomplizierteste Lösung.
Alternativ könnte man den youtu.be bbcode löschen, müsste dann aber in der Datenbank die Beiträge mit nachfolgendem Befehl aktualisieren:
Natürlich, bevor ihr das macht, solltet ihr in jedem Fall ein Backup der Datenbank machen.
Und vielen Dank @imc
Für das HTML für meine Erweiterung hattest du das so
Code: Alles auswählen
<!-- IF YOUTUBE_BBCODE_SWITCH --><div class="yt_video_layer"></div><!-- ELSE --><div class="yt_video_switch_false">{L_YOUTUBE_ADMIN}</div><!-- ELSE --><div class="yt_video_switch_false">{L_YOUTUBE_ADMIN}</div><!-- ENDIF -->Code: Alles auswählen
<!-- IF YOUTUBE_BBCODE_SWITCH -->
<div class="yt_video_layer"></div>
<!-- ELSE -->
<div class="yt_video_switch_false">{L_YOUTUBE_ADMIN}</div>
<!-- ELSE -->
<div class="yt_video_switch_false">{L_YOUTUBE_ADMIN}</div>
<!-- ENDIF -->Ich habe dann das Ganze noch angepasst an den Cookie-Manager, weil man in dem Frame aus src data-src machen muss und dann den data-name einfügen muss.
BBCode-Benutzung:
Code: Alles auswählen
[youtube]{URL}[/youtube]Code: Alles auswählen
<!-- IF YOUTUBE_BBCODE_SWITCH -->
<div class="yt_video_layer"></div>
<!-- ELSE -->
<div class="yt_video_switch_false">{L_YOUTUBE_ADMIN}</div>
<!-- ENDIF -->
<script>
var youtubeURL = '{URL}';
var ytVideoAry = document.getElementsByClassName('yt_video_layer');
var ytVideo = ytVideoAry[ytVideoAry.length-1];
var strIdentifier, newYtURL;
if (youtubeURL.includes('watch')) {
const url = new URL(youtubeURL);
const searchParams = new URLSearchParams(url.search);
strIdentifier = searchParams.get('v');
}
else if (youtubeURL.includes('shorts') || youtubeURL.includes('youtu.be')) {
const url = new URL(youtubeURL);
strIdentifier = url.pathname.substring(url.pathname.lastIndexOf('/'));
}
newYtURL = 'https://www.youtube.com/embed/' + strIdentifier;
ytVideo.innerHTML = '<iframe data-name="youtube" data-src="' + newYtURL + '" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>';
</script>Code: Alles auswählen
YTBE_VIDEOLINK_HELPMan kann hingehen und bei beiden YouTube-BBCodes die HTML‑Ersetzung tauschen, was am einfachsten ist. Dann spielt es keine Rolle, welchen bbcode der Benutzer benutzt.
Eventuell muss man die Foren/Beiträge im ACP resynchronisieren, aber das wäre die unkomplizierteste Lösung.
Alternativ könnte man den youtu.be bbcode löschen, müsste dann aber in der Datenbank die Beiträge mit nachfolgendem Befehl aktualisieren:
Code: Alles auswählen
UPDATE phpbb_posts
SET post_text = REPLACE(post_text, 'youtube_be', 'youtube')
WHERE post_text LIKE '%youtube_be%'Natürlich, bevor ihr das macht, solltet ihr in jedem Fall ein Backup der Datenbank machen.
Und vielen Dank @imc
Re: [3.3] [CDB][3.3] Opt-In Cookie Manager by klaro Script
Ich habe mir mal die Mühe gemacht aus dem Forum alle bisher vorgekommenen Youtube-Video Link Formen aufzulisten.
Habe jetzt noch nicht verglichen, welche Link-Formen mit den inzwischen neu geposteten BBCodes schon vorhanden sind.
--
Den am Ende des Beitrages vom 15.01.2026 07:33 geposteten BBCode habe ich mal eingebaut.
Vorhandene Postings bringen den Fehler
[youtube]https://www.youtube.com/watch?v=bZ_XcL20nxk[/youtube]
Den Beitrag 1x im Editor geöffnet und unverändert gespeichert und es funktioniert.
Es erscheint mir aber fast unmöglich alle Beiträge so zu bearbeiten.
Gibt es eine andere Möglichkeit, das neue BBCodes auf alle vorhandenen Postings angewendet werden?
Code: Alles auswählen
Unterschiedliche Links für Youtube Videos in Foren
https://www.youtube.com/watch?v=9vAgwfUuaLQ
https://youtube.com/@womo-adventure
https://www.youtube.com/watch?v=b0kMkMSFE0I&list=LL&index=5&t=32s
https://www.youtube.com/watch?v=MZvlCbMGtbg&list=LL
https://www.youtube.com/watch?v=5rSw9Z0ZegU&t=1344s\
https://www.youtube.com/watch?v=dc455XOLGxk&list=RDdc455XOLGxk&start_radio=1&t=12\"><
https://www.youtube.com/watch?v=PinBVYKQGeM&list=PLcspTFH0j1yEMb09XUxn8XiIaSMsiXvyP
https://www.youtube.com/results?search_query=omnia+backofen
https://m.youtube.com/watch?v=CskuAh6Y-nU\
https://m.youtube.com/watch?feature=youtu.be&v=Ws9JxRTxhRo\
https://www.youtube.com/c/Womoversum\
https://youtu.be/-dQ75USmQZo?si=NkM0n6UcO_TtTH4n
https://youtube.com/shorts/jJB-rJL2BQA?si=Pocug9KVSm1lD24F
manchmal kommen User auch auf die Idee nur: _9TtYfJmKrs zu posten
--
Den am Ende des Beitrages vom 15.01.2026 07:33 geposteten BBCode habe ich mal eingebaut.
Vorhandene Postings bringen den Fehler
Gepostet wurde mitEs ist ein Fehler aufgetreten. Bitte versuche es später noch einmal. (Wiedergabe-ID: SQtZbUmZaVe20efX)
Weitere Informationen
[youtube]https://www.youtube.com/watch?v=bZ_XcL20nxk[/youtube]
Den Beitrag 1x im Editor geöffnet und unverändert gespeichert und es funktioniert.
Es erscheint mir aber fast unmöglich alle Beiträge so zu bearbeiten.
Gibt es eine andere Möglichkeit, das neue BBCodes auf alle vorhandenen Postings angewendet werden?
Zuletzt geändert von SeewolfPK am 15.01.2026 13:20, insgesamt 2-mal geändert.
Gruß Paul (Freunde nennen mich auch Paulchen Panther) https://www.reisemobiltreff.de https://www.seewolfpk.de
-
Joe Kolade
- Mitglied
- Beiträge: 274
- Registriert: 27.02.2023 19:59
Re: [3.3] [CDB][3.3] Opt-In Cookie Manager by klaro Script
Diese Video-ID ist der eindeutige, (in der Regel) 11-stellige Code bzw. eine Zeichenfolge aus Buchstaben und Zahlen, teilweise auch mit Binde- oder Unterstrichen.SeewolfPK hat geschrieben: 15.01.2026 12:07 manchmal kommen User auch auf die Idee nur: _9TtYfJmKrs zu posten
Die ID ist der Teil der URL nach watch?v=, youtu.be/ oder shorts/, also am Ende der Video-URL.
Entsprechend wäre es gut, auch die Video-ID (also ohne URL) zu berücksichtigen.
Gruß Joe
Re: [3.3] [CDB][3.3] Opt-In Cookie Manager by klaro Script
Wenn Beiträge z.B. nur
enthalten, wird nur der Link angezeigt.
Gibt es eine Möglichkeit, das automatisch [youtube] und [/youtube] angewendet wird?
Auch hier ist Beitragseditieren mühevoll.
-----
Etwas kurios:
Im Gesamten Beitrag wird trotz unterschiedlicher Links immer das erste eingebettete Video angezeigt.
Auch hier ist editieren und unverändert speichern angesagt.
+
Alles mit dem Test BBCode aus Beitrag 07.33 Uhr
Code: Alles auswählen
https://www.youtube.com/watch?v=mBtpsrSP4RUGibt es eine Möglichkeit, das automatisch [youtube] und [/youtube] angewendet wird?
Auch hier ist Beitragseditieren mühevoll.
-----
Etwas kurios:
Im Gesamten Beitrag wird trotz unterschiedlicher Links immer das erste eingebettete Video angezeigt.
Auch hier ist editieren und unverändert speichern angesagt.
+
Alles mit dem Test BBCode aus Beitrag 07.33 Uhr
Gruß Paul (Freunde nennen mich auch Paulchen Panther) https://www.reisemobiltreff.de https://www.seewolfpk.de
Re: [3.3] [CDB][3.3] Opt-In Cookie Manager by klaro Script
Man kann im acp auch das forum resynchronisieren. Poste später anleitung.