Opt-In Cookie Extension

In diesem Forum gibt es Starthilfe zum neuen Extension-System von phpBB 3.1/3.2. Fragen zur Entwicklung von Extensions und zur Konvertierung von phpBB 3.0.x MODs sind ebenfalls willkommen.
Benutzeravatar
chris1278
Mitglied
Beiträge: 2229
Registriert: 12.11.2007 06:20
Wohnort: Euskirchen
Kontaktdaten:

Re: DSGVO - phpBB Extensions

Beitrag von chris1278 »

ok ich hab das jetzt so hinbekommen. die klaro.js von github läuft.

Ich denke, ich kann das so hinbekommen das mit einer Extension die beiden Scripte an sich geladen werden aber die Scripte bzw. um genau zu sein das Config.js Script muss immer jeder selber anpassen.

Mit der Extension könnte man das Script dann direkt unabhängig des styles laden.

Ich würde ja gern noch variabeln in die js einbinden um die dienste vorzugenen und im admin bereich einfach zu aktiveren aber das geht leider nicht.
Zuletzt geändert von chris1278 am 26.11.2020 20:15, insgesamt 1-mal geändert.
Benutzeravatar
sepp71
Mitglied
Beiträge: 897
Registriert: 23.12.2006 00:03

Re: DSGVO - phpBB Extensions

Beitrag von sepp71 »

chris1278 hat geschrieben:
26.11.2020 19:41
ok ich hab das jetzt so hinbekommen. die klaro.js von github läuft.
Ich find's super!
Bei den phpBB-Cookies gibt es aber einen Unterschied, technisch notwendig ist nach meinem Stand alles bis auf das Cookie für "angemeldet bleiben", das ist streng genommen Komfort.
Pfiffig wäre auch, in der navbar_footer.html -z.B. hinter dem Event "<!-- EVENT overall_footer_timezone_after -->" noch einen Punkt für die Cookie-Einstellungen aufzunehmen.
Ich habe das Info-I genommen (weiß aber auch nicht, welche Icons noch im Angebot sind, ein angefressener Kekes wäre cooler gewesen):

Code: Alles auswählen

		<li class="rightside">
				<a href="" data-ajax="true" data-refresh="true" role="menuitem" onclick="return klaro.show();">
					<i class="icon fa-info-circle fa-fw" aria-hidden="true"></i><span>Cookie-Einstellungen</span>
				</a>
			</li>
Da ich jetzt trotz Notepad++ ein paarmal Ärger mit den Zeichensätzen für config.js und klaro.js hatte, schlage ich für den Skriptaufruf in der overall_header.html vor (also mit Zeichensatzangabe - hoffentlich korrekt):

Code: Alles auswählen

<script defer type="application/javascript" src="###" charset="utf-8"></script>
Sepp
phpBB 3.3.2 mit About us, Advertisement Management, Delete my registration, Precise Similar Topics, Privacy protection, Recent Topics, Thanks for posts 2.0.7-dev
Benutzeravatar
chris1278
Mitglied
Beiträge: 2229
Registriert: 12.11.2007 06:20
Wohnort: Euskirchen
Kontaktdaten:

Re: DSGVO - phpBB Extensions

Beitrag von chris1278 »

Das notepad++ ist schon super man mus die dateien nur im richtigen format codieren.
Benutzeravatar
sepp71
Mitglied
Beiträge: 897
Registriert: 23.12.2006 00:03

Re: DSGVO - phpBB Extensions

Beitrag von sepp71 »

Das müsste man dann auch jedem erklären, der besagte Dateien manuell anpasst :) oder - wie ich - auch noch von einer statischen HTML-Seite aus aufruft. Die ist nicht utf-8 und ich glaube fast, dass das Skript - wenn man nix dazusagt - dann auch im Format der HTML-Datei aufgerufen wird. Solange alles unter phpBB läuft, stimmt es nämlich.
phpBB 3.3.2 mit About us, Advertisement Management, Delete my registration, Precise Similar Topics, Privacy protection, Recent Topics, Thanks for posts 2.0.7-dev
Benutzeravatar
chris1278
Mitglied
Beiträge: 2229
Registriert: 12.11.2007 06:20
Wohnort: Euskirchen
Kontaktdaten:

Re: DSGVO - phpBB Extensions

Beitrag von chris1278 »

Gut das sind aber alles Feinheiten. Erst mal geht es um die Funktionalität. Ich muss deren Funktion noch testen. Z. B. google Search, wenn ich diese google Search Extension installieren müsste die ja bei Abwahl des Cookies ausgeblendet werden. Das muss ich erst mal schauen, ob das so geht.

Dein Vorschlag bezüglich der Navbar mit den Cookie Einstellungen habe ich mal so übernommen und wird dann sollte die Ext veröffentlicht werden mit drin sein.

Sobald ich eine Erste Version habe sag, ich dir Bescheid dann kannst dir mal anschauen. Allerdings erst wenn ich getestet habe ob das mit abwahl des cookies auch die funktion entsprechend blockiert sonst bringt das ganze nähmlichnix.

ichhabe jetzt das was Von HAckepeter13 war soweit das auch die umlaute korrekt angezeigt werden. werde das die tage testen wegen den funktionen und melde mich wieder.
Benutzeravatar
sepp71
Mitglied
Beiträge: 897
Registriert: 23.12.2006 00:03

Re: DSGVO - phpBB Extensions

Beitrag von sepp71 »

chris1278 hat geschrieben:
26.11.2020 20:29
ichhabe jetzt das was Von HAckepeter13 war soweit das auch die umlaute korrekt angezeigt werden. werde das die tage testen wegen den funktionen und melde mich wieder.
Viel Erfolg!
Ich habe - mit hackepeters Hilfe - lange rumgefummelt, weil ich mich ewig zwischen irgendwelchen Caches und schon gesetzten Cookies verheddert habe (phpBB, Browser,...) Da hat es geholfen, immer mal den klaro-Cookie in der config umzubenennen, denn dann kann kein alter ausgelesen werden.
Zusätzlich gab es einen Versionsunterschied in der Dokumentation von klaro und dem bereitgestellten Skript.
phpBB 3.3.2 mit About us, Advertisement Management, Delete my registration, Precise Similar Topics, Privacy protection, Recent Topics, Thanks for posts 2.0.7-dev
Benutzeravatar
chris1278
Mitglied
Beiträge: 2229
Registriert: 12.11.2007 06:20
Wohnort: Euskirchen
Kontaktdaten:

Re: DSGVO - phpBB Extensions

Beitrag von chris1278 »

So ich hab jetzt mal getestet und leider funktioniert das nicht ganz so wie gewünscht. Ich hab mal eine Ext installiert die ein Google Search feld intergriert und auch ein Video von Youtube verlinkt und beides funktioniert egal ob Cookie dafür gesetzt oder nicht.
Benutzeravatar
chris1278
Mitglied
Beiträge: 2229
Registriert: 12.11.2007 06:20
Wohnort: Euskirchen
Kontaktdaten:

Re: DSGVO - phpBB Extensions

Beitrag von chris1278 »

Hallo Hackpeter13

Also ich hab das Jetzt wie gesagt so das die beiden Scripte geladen werden. Allerdings funktioniert das nicht wirklich. Hab jetzt mal nur technische notwendige Cookies und einmal YouTube Cookie im Script. Aber die YouTube Videos im Forum lassen sich dennoch abspielen egal, ob akzeptiert oder nicht. Normalerweise sollten die, wenn nicht akzeptiert doch kein Video abspielen.

Hier mal mein config.js im pastebin.

pastebin/?mode=view&s=60

Das läuft im moment nur local.
Benutzeravatar
sepp71
Mitglied
Beiträge: 897
Registriert: 23.12.2006 00:03

Re: DSGVO - phpBB Extensions

Beitrag von sepp71 »

Youtube ist, glaube ich, ein schwieriges Beispiel, weil die Videos ja meist inline angeboten/angezeigt werden.
Neben den Angaben in der config.js müssen ja auch alle Einbettungslinks geändert werden (an den Stellen, an denen Youtube aufgerufen wird, so wie hier https://kiprotect.com/de/doku/klaro/erste-schritte), also in der Art von

Code: Alles auswählen

<script type="text/plain"
data-type="application/javascript"
data-src="https://YOUTUBELINK"
data-name="youtube">
</script>
.
Und auch die Suchfenster, die über eine andere Ext erzeugt werden, müssten ja vermutlich in der Ext umprogrammiert werden.

Ich fummele auch gerade mal wieder an meiner Einbindung, weil Adsense die Umschreibung in dem o.g. Sinne "anmeckert"...
:evil: :roll:
Sepp
phpBB 3.3.2 mit About us, Advertisement Management, Delete my registration, Precise Similar Topics, Privacy protection, Recent Topics, Thanks for posts 2.0.7-dev
hackepeter13
Valued Contributor
Beiträge: 3442
Registriert: 21.04.2004 12:22
Wohnort: Berlin
Kontaktdaten:

Re: DSGVO - phpBB Extensions

Beitrag von hackepeter13 »

Mit der Einbettung von Medien ist das in der Tat umfangreicher.

Ich habe bei mir in der overall_footer.html folgenden Zusatz eingefügt:

Code: Alles auswählen

<script type="opt-in" data-type="application/javascript" data-name="youtube">
	$( document ).ready( function() {
      if( $( '.videoCConsentContainer' ).length > 0 ) {
        $( '.videoCConsentContainer' ).each( function() {
          _wrapper = $( this );
          _wrapper.children(".ccMessageContainer").hide();
          _wrapper.children(".videoLayer").show().html( '<iframe src="https://www.youtube-nocookie.com/embed/' + _wrapper.attr( 'data-source' ) + '?rel=0&controls=0&showinfo=0&autoplay=0" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>');
         });
      }
    });
</script>
<script>
	function showAllYoutubeContainer() {
	  if( $( '.videoCConsentContainer' ).length > 0 ) {
        $( '.videoCConsentContainer' ).each( function() {
          _wrapper = $( this );
          _wrapper.children(".ccMessageContainer").hide();
          _wrapper.children(".videoLayer").show().html( '<iframe src="https://www.youtube-nocookie.com/embed/' + _wrapper.attr( 'data-source' ) + '?rel=0&controls=0&showinfo=0&autoplay=0" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>');
         });
      }
	}
	function hideAllYoutubeContainer() {
	  if( $( '.videoCConsentContainer' ).length > 0 ) {
        $( '.videoCConsentContainer' ).each( function() {
          _wrapper = $( this );
          _wrapper.children(".ccMessageContainer").show();
          _wrapper.children(".videoLayer").hide().html("");
         });
      }	  
	}
</script>

<script type="opt-in" data-type="application/javascript" data-name="youtube">
	$( document ).ready( function() {
      if( $( '.bbvideo' ).length > 0 ) {
        $( '.bbvideo' ).each( function() {
          _wrapper = $( this );
          _wrapper.children(".bbvideotitle").hide();
          _wrapper.children(".bbvideocontent").show().html( '<iframe src="https://www.youtube-nocookie.com/embed/' + _wrapper.attr( 'data-source' ) + '?rel=0&controls=0&showinfo=0&autoplay=0" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>');
         });
      }
    });
</script>
<script>
	function showAllYoutubeContainer() {
	  if( $( '.bbvideo' ).length > 0 ) {
        $( '.bbvideo' ).each( function() {
          _wrapper = $( this );
          _wrapper.children(".bbvideotitle").hide();
          _wrapper.children(".bbvideocontent").show().html( '<iframe src="https://www.youtube-nocookie.com/embed/' + _wrapper.attr( 'data-source' ) + '?rel=0&controls=0&showinfo=0&autoplay=0" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>');
         });
      }
	}
	function hideAllYoutubeContainer() {
	  if( $( '.bbvideo' ).length > 0 ) {
        $( '.bbvideo' ).each( function() {
          _wrapper = $( this );
          _wrapper.children(".bbvideotitle").show();
          _wrapper.children(".bbvideocontent").hide().html("");
         });
      }	  
	}
</script>
Das ist für zwei Arten von BB-Code Video-Einbinden!
.videoCConsentContainer ist bei mir für die Video-Einbindung durch die den [bbvideo][/bbvideo]-Tag per "Advanced BBCode 3 Box (ABBC3)"
.bbvideo ist für den per ACP hinzugefügten BBCode [yt][/yt]

Das hat bei mir den Grund, das ältere Videos in Beiträge noch mit einem älteren BBCode und später dann Videos durch die BBCodeBox eingefügt wurden.

Und noch ein ganz wichtiger Punkt: Mein Forum basiert noch auf 3.0.14

Nächster Schritt wäre dann die Anpassung an den BBCodes, damit .videoCConsentContainer aus dem Javascript auch greift (man kann das natürlich auch anders Benennen).

Nehmen wir an im ACP wurde ein YouTube-BBCode angelegt, so bearbeiten wir diesen zu:

Code: Alles auswählen

<div class="videoCConsentContainer" data-source="{IDENTIFIER}">
		<div class="ccMessageContainer embed-responsive embed-responsive-16by9">
			<div class="msgMedienContent">
				<p>Sie müssen die Youtube-Einstellungen anpassen, damit das Video angezeigt wird.</p>
				<a class="btn btn-primary" onclick="return klaro.show();">Youtube-Einstellungen anpassen</a>
			</div>
		</div>
		<div class="videoLayer embed-responsive embed-responsive-16by9 vimvid"></div>
</div>
Wer eine BBCodeBox Erweiterung/Modifikation verwendet muss dort schauen, wo die HTML-Ersetzung für Videos ist und es entsprechend anpassen.

Zur Verdeutlichung noch ein Link zu einem Beitrag in meinem Forum mit Video.
Antworten

Zurück zu „Extension Bastelstube“