Open operatorone opened 6 years ago
Auch in diesem Projekt habe ich wieder das Problem, dass das Opt-In nicht angezeigt wird :-(
Ich bin auch über dieses Problem gestolpert. Wenn ich mir den Code anschaue, dann liegt es am ce_dlh_googlemaps_default.html5 Template: https://github.com/delahaye/dlh_googlemaps/blob/master/templates/frontend/ce_dlh_googlemaps_default.html5#L161
In Zeile 161 bis Zeile 171 wird hier die Google-Map (zeitverzögert) geladen. Das darf aber nur passieren, wenn das Cookie gesetzt wurde oder die Karte nicht geschützt ist.
Du musst also eine zusätzliche PHP-Abfrage von oben mit einbauen:
<?php
if($_COOKIE['dlh_googlemaps'] || $this->map['protected']!='1'):
?>
if(window.addEvent) {
window.addEvent('domready', function() {
gmap<?= $this->map['id']; ?>_initialize();
});
} else if(typeof jQuery == "function") {
jQuery(document).ready(function(){
gmap<?= $this->map['id']; ?>_initialize();
});
} else {
window.setTimeout("gmap<?= $this->map['id']; ?>_initialize()", 500);
}
<?php
endif;
?>
Aus irgendeinem Grund funktioniert es bei einigen Projekten - und bei anderen nicht. Ich verstehe noch nicht genau, warum; aber so müsste es in meinen Augen programmiert sein.
Hat super funktioniert. Ganz lieben Dank für den Workaround. Vielleicht wandert das recht schnell in den Master. :-)
Hallo zusammen,
ich habe die Erweiterungen delahaye/dlh_geocode 1.1.4 und delahaye/dlh_googlemaps 2.4.1 installiert um in einem Contao 4.4.19 eine Karte mit Opt-In anzuzeigen. Zuvor hatte ich heimrichhannot/dlh_googlemaps installiert, aber für das Opt-In bin ich dann umgestiegen. Leider wird beim Aufruf der Seite nun trotz der Einstellung "Karte hat Datenschutz-Bestätigung" die Karte gleich angezeigt. Das Opt-In DIV wird auch nicht mehr geladen, so dass es nicht erscheinen kann.
Hier ein Link dazu https://kn2.entwicklungs-server.net/ Benutzer/PW 123/456
Ich würde mich auch für einen hilfreichen Tipp erkenntlich zeigen. Support muss ja nicht umsonst sein.
Vielen Dank für die Mühen im Voraus, operatorone
Hier ist der Anfang des Script-Bereichs der unter der Karte ausgegeben wird:
<script> function gmap3_allow() { document.cookie = 'dlh_googlemaps=ok; max-age=31536000 ; path=/'; var mapsSrc = document.createElement('script'); mapsSrc.type = 'text/javascript'; mapsSrc.src = 'https://maps.googleapis.com/maps/api/js?key=AIzaSyD0_DrB6bQuj3yOzUM_4h_Qq6t-ynaMJAI&language=de'; document.getElementsByTagName('head')[0].appendChild(mapsSrc); window.setTimeout("gmap3_initialize()", 500); }
Hier meine installierten Erweiterungen: