Mapa Google

  • komponent:
    N1ebieski\IDir\View\Components\Map\Dir\MapComponent
  • widok:
    /resources/views/vendor/idir/web/components/map/dir/map.blade.php


# Opis

Komponent wyświetla mapę Google wraz z zaznaczoną lokalizacją dla wpisu znajdującego się w grupie z odpowiednim przywilejem.

# Konfiguracja

Do działania wymagany jest aktywny klucz API Google, który należy wstawić w pliku .env w głównym folderze aplikacji:

GOOGLEMAP_API_KEY=

Klucz należy wygenerować w panelu Google Cloud Platform.

# Kod i ustawienia

<x-idir::map.dir.map-component
    :dir="$dir"
    container_class="bazowa-klasa"
    zoom="13"
    selector="map"
    :address_marker="['Chmielna 27/33, 80-748 Gdańsk']"
    :address_marker_pattern="[[4, 5]]"
    :coords_marker="[[45.45, 21.00]]"
    :coords="[52.15, 21.00]"
/>
@render('idir::map.dir.mapComponent', [
    'dir' => $dir,
    'container_class' => 'bazowa-klasa',
    'zoom' => 13,
    'selector' => 'map',
    'address_marker' => ['Chmielna 27/33, 80-748 Gdańsk'],
    'address_marker_pattern' => [[4, 5]],
    'coords_marker' => [[45.45, 21.00]],
    'coords' => [52.15, 21.00]
])
  • dir - wymagane; przekazanie modelu wpisu, którego dotyczy mapa z lokalizacją
  • container_class - opcjonalne; nazwa klasy w którą zostanie "opakowany" div z wyrenderowaną mapą
  • zoom - opcjonalne; wielkość zbliżenia mapy
  • selector - opcjonalne:
    • map, czyli mapa jest statyczna do wglądu
    • map-select, czyli jest możliwość zaznaczenia własnego markera na mapie
  • address_marker - opcjonalne; tablica zawierająca markery w formacie adresów pocztowych, które komponent naniesie na mapę
  • address_marker_pattern - opcjonalne; tablica zawierająca markery w formacie ID odpowiadającym polom formularza w których wprowadzono we wpisie informacje o ulicy, mieście i kodzie pocztowym
  • coords_marker - opcjonalne; tablica zawierająca długości i szerokości geograficzne lokalizacji, które mają zostać zaznaczone na mapie
  • coords - opcjonalne; startowa wycentrowana pozycja mapy w przypadku braku jakiegokolwiek markera

Pierwszeństwo w zaznaczeniu na mapie ma coords_marker. Tylko wówczas gdy jest pustą tablicą, komponent zaznaczy na mapie markery powiązane z adresem.