Beispiel #1
0
 /**
  * {@inheritdoc}
  */
 public function buildView(FormView $view, FormInterface $form, array $options)
 {
     $this->mapBuilder->setHtmlContainerId($view->vars['id'] . '_map_canvas');
     $this->mapBuilder->setAutoZoom(true);
     $this->mapBuilder->setMapOptions(['minZoom' => 3, 'maxZoom' => 18, 'disableDefaultUI' => true]);
     $this->mapBuilder->setStylesheetOptions(['width' => '100%', 'height' => '320px']);
     $map = $this->mapBuilder->build();
     $marker = new Marker();
     /** @var \Ivory\GoogleMap\Base\Coordinate $coordinate */
     if (null !== ($coordinate = $form->getData())) {
         if (null !== $coordinate->getLatitude() && null !== $coordinate->getLongitude()) {
             $marker->setPosition($coordinate);
         }
     }
     $map->addMarker($marker);
     $config = ['map_var' => $map->getJavascriptVariable(), 'marker_var' => $marker->getJavascriptVariable()];
     $view->vars['map'] = $map;
     $view->vars['config'] = $config;
 }
 /**
  * Crée un objet Market
  * @param $fiche, la fiche pour laquelle il faut créer un marker
  * @return Marker
  * @throws \Ivory\GoogleMap\Exception\OverlayException
  */
 public function createMarker($fiche)
 {
     $marker = new Marker();
     $marker->setPosition($fiche->getLatitude(), $fiche->getLongitude(), true);
     $marker->setAnimation(Animation::DROP);
     return $marker;
 }