PHP code example of heimrichhannot / contao-google-maps-bundle
1. Go to this page and download the library: Download heimrichhannot/contao-google-maps-bundle library. Choose the download type require. 2. Extract the ZIP file and open the index.php. 3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
heimrichhannot / contao-google-maps-bundle example snippets
class GoogleMapsSubscriber implements EventSubscriberInterface {
public static function getSubscribedEvents() {
return [GoogleMapsPrepareExternalItemEvent::class => 'onGoogleMapsPrepareExternalItemEvent',];
}
public function onGoogleMapsPrepareExternalItemEvent(GoogleMapsPrepareExternalItemEvent $event): void
{
if (!$event->getConfigModel() instanceof ListConfigModel) {
return;
}
$item = (object)$event->getItemData();
$overlay = new OverlayModel();
$overlay->title = $item->headline;
$overlay->type = Overlay::TYPE_MARKER;
if ($item->coordX && $item->coordX) {
$overlay->positioningMode = Overlay::POSITIONING_MODE_COORDINATE;
$overlay->positioningLat = trim($item->coordX);
$overlay->positioningLng = trim($item->coordX);
} elseif (!empty($item->address)) {
$overlay->positioningMode = Overlay::POSITIONING_MODE_STATIC_ADDRESS;
$overlay->positioningAddress = $item->address;
} else {
$event->setOverlayModel(null);
return;
}
$overlay->markerType = Overlay::MARKER_TYPE_SIMPLE;
$overlay->clickEvent = Overlay::CLICK_EVENT_INFO_WINDOW;
$overlay->infoWindowText = '<p><b>'.$item->headline.'</b></p>';
$overlay->published='1';
$event->setOverlayModel($overlay);
}
}