[phpBB Debug] PHP Warning: in file [ROOT]/ext/tas2580/seourls/event/listener.php on line 213: Undefined array key "FORUM_NAME"
REDAXO Forum • CookieConsent - Datenschutz-Link Seite wird ohne Styling dargestellt
Seite 1 von 1

CookieConsent - Datenschutz-Link Seite wird ohne Styling dargestellt

Verfasst: 13. Aug 2018, 21:53
von Ron
Hallo Forum,
wenn ich das AddOn "CookieConsent" installiert habe, kann ich damit automatisch einen Datenschutzlink (in meinem Fall intern) angeben.
Dieser wird auch im Cookie-Hinweis-Banner korrekt und Klickbar dargestellt.
Wenn ich dann darauf licke, erscheint mir die Datenschutz-Seite jedoch ohne Styling.
Wo und was muss ich da noch zuweisen, damit die Datenschutzseite ansehbar angezeigt wird?
Aus der Web-Seite selbst heraus angeklickt, wird die Datenschutzseite durch das zugeweisene Standard-Template korrekt mit Styling angezeigt.
Nur wenn man direkt im Cookie-Hinweis-Banner auf den Link klickt, wird die Datenschutzseite komplett ohne Styling dargestellt.
Kann mir da jemand kurz weiter helfen?

Vielen Dank schon mal dafür.
Ron

Re: CookieConsent - Datenschutz-Link Seite wird ohne Styling dargestellt

Verfasst: 14. Aug 2018, 09:16
von bloep
Hallo Ron,

das seltsame Verhalten ist sehr merkwürdig und ist auch bisher nicht bekannt.
Magst du mir (gerne auch als private Nachricht) einen Link zum Frontend bereitstellen, damit ich das nachvollziehen kann?


Gruß
Marcel

Re: CookieConsent - Datenschutz-Link Seite wird ohne Styling dargestellt

Verfasst: 14. Aug 2018, 19:27
von bloep
Hallo Ron,

ich habe deine pm erhalten und mir das Problem genauer angeschaut.
Auf deiner Seite werden die Links anhand der Attribute per Javascript "umgebogen".
Da der Datenschutz-Link im Banner diese nicht hat, wird dieser nicht "umgeschrieben".

Die Variante, dass der Datenschutzlink, solche Attribute erhalten kann, würde in deiner Situation vermutlich nicht weiterhelfen, da zum Zeitpunkt der Erstellung des Banners dein Javascript mit dem Setzten der Click-Event-Listener bereits durchgelaufen seien wird.

Per se wird der CookieConsent auch keine Hauslösung mitbringen können, da die Umsetzungen insbesondere auch von onepagern von Seite zu Seite unterschiedlich umgesetzt werden.

Als Abhilfe könntest du die Javascript-Callbacks über die benutzerdefinierten Optionen verwenden.

In dem angehängten Beispiel-Code wird nach/beim dem Laden/Anzeigen des Banners für den Link die gleiche Aktion ausgeführt, wie für die anderen Links. Eleganter wäre natürlich, die Aktion in eine Funktion in deinem Javscript-File auszulagern und hier sowie in deinem Skript auf die Funktion zu verweisen, sodass nur eine Stelle zum Pflegen von diesem Code existiert.

Ich hoffe ich konnte es verständlich rüber bringen :D.

Gruß
Marcel


Code: Alles auswählen

onPopupOpen: function() {
  $('.cc-link').on('click', function(e) {
    e.preventDefault();
    var conainter_id = 9; // Datenschutz Container Id

   // Kopiert aus demo.js
   
    if ($('div.hidden_content.toggled').length == 0) {
        $('div[data-container="' + conainter_id + '"]').fadeToggle(300, function() {
            $('html, body').animate({
                scrollTop: $('div[data-container="' + conainter_id + '"]').offset().top
            }, 300);
        }).toggleClass('toggled');
    } else if ($('div.hidden_content.toggled[data-container="' + conainter_id + '"]').length == 1) {
        $('div.hidden_content.toggled').fadeOut(300).toggleClass('toggled');
    } else {
        $('div.hidden_content.toggled').fadeOut(300, function() {
            $('div[data-container="' + conainter_id + '"]').fadeToggle(300, function() {
                $('html, body').animate({
                    scrollTop: $('div[data-container="' + conainter_id + '"]').offset().top
                }, 300);
            }).toggleClass('toggled');
        }).toggleClass('toggled');
    }
    
    // Ende der Kopie
    
  });
}