Here is my Delphi code :
i := 0;
With DMMain.MDMain do
begin
QLastPositionGPS.Close ;
QLastPositionGPS.Open ;
QLastPositionGPS.First ;
for i:=0 to QLastPositionGPS.RecordCount-1 do
begin
GPSLatitude := StringReplace(QLastPositionGPS.FieldByName('latitude').AsString, ',', '.', [rfreplaceall]) ;
GPSLongitude := StringReplace(QLastPositionGPS.FieldByName('longitude').AsString, ',', '.', [rfreplaceall]) ;
HeureDernierGPS := QLastPositionGPS.FieldByName('maj').AsString ;
MDMain.QGPSactifs.Close ;
MDMain.QGPSactifs.ParamByName('id_artisan').AsInteger := MDMain.QLastPositionGPS.FieldByName('id_artisan').AsInteger ;
MDMain.QGPSactifs.Open ;
if MDMain.QGPSactifs.FieldByName('etat').AsBoolean = True then
begin CdrCarto.Chromium1.Browser.MainFrame.ExecuteJavaScript('AjouterMarqueurCirculant('+ GPSLatitude + ', ' + GPSLongitude + ', ' + MDMain.QLastPositionGPS.FieldByName('id_artisan').AsString + ')', 'about:blank', 0) ;
end else if OptionDisplayGPSActif then
if (MDMain.QGPSactifs.FieldByName('etat').AsBoolean = False) and (MDMain.QGPSactifs.FieldByName('etat_serveur').AsBoolean = True) then
begin
CdrCarto.Chromium1.Browser.MainFrame.ExecuteJavaScript('AjouterMarqueurGPS('+ GPSLatitude + ', ' + GPSLongitude + ', ' + MDMain.QLastPositionGPS.FieldByName('id_artisan').AsString + ')', 'about:blank', 0);
end;
QLastPositionGPS.Next ;
MDMain.QGPSactifs.Close ;
end;
QLastPositionGPS.Close ;
end;
end;
and my Javascript code :
function AjouterMarqueurCirculant(Lat, Long, notaxi) {
var marker = new MarkerWithLabel({
position: new google.maps.LatLng(Lat, Long),
draggable: true,
map: map,
labelContent: "Taxi "+notaxi,
labelAnchor: new google.maps.Point(22, 0),
labelClass: "labelsactif", // the CSS class for the label
labelStyle: {opacity: 0.75},
labelVisible: true,
icon:"icones/taxi_circulant_ok.png"
});
var iw = new google.maps.InfoWindow({
content: "Nom Prenom"
});
google.maps.event.addListener(marker, "click", function (e) { iw.open(map, marker); });
markersCirculant.push(marker);
bounds.extend(new google.maps.LatLng(Lat, Long));
}