Instrukcja zamieszczenia mapy DHL na stronie
'W celu osadzenia mapy, należy załączyć ją jako iframe na stronie:
<iframe src="https://parcelshop.dhl.pl/mapa"></iframe>
W celu osadzenia mapy kraju z zagranicznymi punktami parcelShop lub packStation, należy załączyć ją jako iframe na stronie:
<iframe src="https://parcelshop.dhl.pl/mapa?country=DE&ptype=packStation"></iframe>
gdzie:
country = country symbol, e.g. DE, BE, AT...
ptype = parcelshop or packstation (default parcelshop)
Aby przechwycić wybór odpowiedniego punktu serwisowego z mapy, należy dodatkowo obsłużyć na stronie wywołanie funkcji window.postMessage. Poniżej znajduje się przykładowy kod JavaScript do obsługi takiego zdarzenia:
<script type="text/javascript" nonce="JWgjfWE1WR77rRUmDp3DO7Kz"> /*<![CDATA[*/ function listenMessage(msg) { if(jQuery.type(msg.data)=='object'){ var point = msg.data; }else{ var point = JSON.parse(msg.data); } alert(point.sap); } if (window.addEventListener) { window.addEventListener("message", listenMessage, false); } else { window.attachEvent("onmessage", listenMessage); } /*]]>*/ </script>
W powyższym kodzie należy zmienić treść funkcji listenMessage, tak aby na stronie odpowiednio obsłużyć wybór punktu serwisowego. Dane na temat punktu serwisowego są przekazywane w zmiennej msg.data. Jest to napis w formacie JSON, który po przechwyceniu należy przekonwertować na obiekt (w przykładzie została użyta metoda JSON.parse). Wynikowy obiekt posiada następujące parametry:
- sap – nr sap,
- name – nazwa punktu,
- zip – kod pocztowy,
- city – miejscowość,
- street – ulica,
- streetNo – numer ulicy,
- houseNo – numer domu.
Mechanizm ten wspierany jest przez następujące przeglądarki: IE8+, FF3.0+, CHROME 1.0+, OPERA 9.5+