





Widget lze jednoduše integrovat do webové stránky pouze vložením kódu. Následná konfigurace je možná přímo ve scriptu. Pro správné fungování a zobrazení na vašem webu je třeba:
Aktivace widgetu
PickMapp můžete do košíku svého webu implementovat kdykoliv. Aby se načetla výdejní místa, je potřeba aktivovat API klíč v uživatelském rozhraní PickMapp. Podrobněji je postup popsán na webu zde.
Testování widgetu
Pro testování widgetu lze využít zkušební období, které je zdarma do posledního dne v měsíci, v němž byla provedena aktivace vybraného tarifu. Více o tarifech najdete na webu.
<div id="pbhmap" style="width: 99%; height: 600px;"></div>
Parametr width je povinný. Jeho hodnota může být libovolná.
Do hlavičky svého webu vložte link na CSS. Pro správnou funkčnost využijte poslední dostupnou verzi CSS souboru:
poslední dostupná verze:
<link href="https://widget.postabezhranic.cz/template/assets/geowidget/v/1/4/styles.min.css" rel="stylesheet">
Vzhled widgetu je možno přizpůsobit e-shopu, v němž bude integrován těmito způsoby
První možnost:
Druhá možnost (doporučujeme)
Vložte poslední dostupnou verzi Javascriptu, script je nutné linkovat už před konfigurací.
<script src="https://widget.postabezhranic.cz/template/assets/geowidget/v/1/4/scripts.min.js"></script>
Ukázka konfiguračního scriptu, jednotlivé prvky popsány podrobně níže.
let pickMappCgf = { 'mapElementId': "pickMapp", 'api_key': zadejtePickMappAPIklíč, 'parcelshops': [{ 'number': 105, 'filterName': 'Cargus', 'filterColor': '#F68122', 'deliveryPrice': '29 Kč', 'active': 1, }, { 'number': 176, 'filterName': 'FAN Courier', 'filterColor': '#0F2346', 'deliveryPrice': '29 Kč', 'active': 1, }, { 'number': 177, 'filterName': 'Slovenská pošta', 'filterColor': '#003974', 'deliveryPrice': '29 Kč', 'active': 1, }, { 'number': 18, 'filterName': 'Paczkomaty', 'filterColor': '#FFCB04', 'deliveryPrice': '29 Kč', 'active': 0, }, ], 'translations': { "enter_location": "zadejte polohu", "monday": "pondělí:", "tuesday": "úterý:", "wednesday": "středa:", "thursday": "čtvrtek:", "friday": "pátek:", "saturday": "sobota:", "sunday": "neděle:", "navigate_to_location": "navigovat na místo", "pickup_here": "vyzvednu zde", "more_info": "více info", "type_of_delivery": "TYP VÝDEJNÍHO MÍSTA:", "type_of_delivery_parcelbox": "parcelbox", "type_of_delivery_parcelshop": "parcelshop", "type_of_delivery_post": "pošta", "payment_method": "PLATEBNÍ METODY:", "payment_method_cash": "hotovost", "payment_method_card": "platební karta", "payment_method_app": "aplikace", "opening_hours": "OTEVÍRACÍ DOBA:", "opening_hours_title": "Otevírací doba", "opening_hours_nonstop": "nonstop", "opening_hours_opening": "pevná", "parcelshop_not_found_heading": "V okolí nenalezeny žádné parcelshopy.", "parcelshop_not_found_info": "Změňte adresu nebo lokalitu v mapě" }, 'coutries': ['cz', 'sk', 'ro', 'pl'], 'googleApiKey': 'zadejtevlastníGoogleAPIklíč', 'defaultLlatitude': '50.0389467', 'defaultLlongitude': '14.4292317', 'afterParcelshopSelectCallback': function (parcelshopNumber, courierNumber, name, address, city, zip, pIdCourier){ console.log(parcelshopNumber); console.log(courierNumber); console.log(name); console.log(address); console.log(city); console.log(zip); console.log(pIdCourier); }, }; pickmappInit(pickMappCgf);
Ve widgetu PickMapp je možno zobrazit libovolné množství podporovaných přepravců. Uživatel může následně mezi jednotlivými přepravci filtrovat a zobrazit si pouze některé.
V rámci scriptu je třeba definovat u každého přepravce tyto parametry:
Příklad:
'parcelshops': [ { 'number': 105, 'filterName': 'CARGUS', 'filterColor': '#F68122', 'deliveryPrice': '29 Kč', 'active': 1, },
Sloučení přepravců:
Widget nabízí možnost sloučit více přepravců do jednoho. Tuto možnost doporučujeme využít pokud:
Chcete-li zobrazovat více přepravce ve filtru jako jednoho přepravce, upravte hodnotu Number. Čísla sloučených přepravců oddělujte pomlčkou.
Příklad:
'parcelshops': [ { 'number': '192-191', 'filterName': 'DHL', 'filterColor': '#D50611, 'deliveryPrice': 'Zdarma', 'active': 1, },
Seznam dostupných přepravců:
Aktuální seznam implementovaných přepravců najdete v XLSX tabulce zde
Aktivace Google API klíče
Pro správnou funkčnost vyhledávání v poli pro zadávání adresy je využívána služba Place Autocomplete, která vyžaduje Google API klíč.
Vygenerujte si vlastní API klíč, zkopírujte a vložte do kódu, návod na vygenerování API klíče: https://developers.google.com/maps/documentation/javascript/get-api-key
Výstupní hodnoty
Widget po zvolení výdejního místa vrátí v metodě 'afterParcelshopSelectCallback' tyto proměnné:
Zde na stránce ukládáme pro ukázku hodnoty proměnných do inputů pod mapou a jsou vyplněny pomocí callbacku nastaveném v konfiguraci:
<input name="parcelshop" id="parcelshop_id"> <input name="courier_number" id="courier_number">
Konfigurace eventu odpovídající nastavení inputů:
'afterParcelshopSelectCallback': function(parcelshopNumber, courierNumber) { document.getElementById('parcelshop_id').value = parcelshopNumber; document.getElementById('courier_number').value = courierNumber; },
Tento callback byste si měli definovat dle vašich potřeb. Například vyplnit si své skryté inputy v objednávkovém formuláři. V případě nemožnosti zásahu do html struktury eshopu, je možné pomocí callbacku plnit čísla do existujícího inputu, například ulice
(document.getElementById('street').value = parcelshopNumber + '-' + courierNumber;)
Zde záleží na možnostech e-shopu.
Na začátku inicializujeme základní konfigurační soubor pomocí volání
pickmappInit(pickMappCgf);
potom třeba změnu nastavení widgetu
např:
pickMappCgf.parcelshops = [{"number":18,"filterName":"PACZKOMAT","filterColor":"FFCB04"}] pickmappInit(pickMappCgf);
můžeme také provádět aktivace jen některých přepravců
to lze použitím syntaxe:
pickMappCgf.parcelshops[4].active = 1; pickMappCgf.parcelshops[3].active = 1; pickmappInit(pickMappCgf);