Changes for page Homeopaths
Last modified by Jip-jan Alunkel on March 14, 20:13
From version 8.80
edited by Jip-jan Alunkel
on December 08, 16:35
on December 08, 16:35
Change comment:
Renamed from xwiki:practices.WebHome
To version 8.69
edited by Jip-jan Alunkel
on December 08, 16:22
on December 08, 16:22
Change comment:
Renamed from xwiki:practices.WebHome
Summary
-
Page properties (1 modified, 0 added, 0 removed)
-
Objects (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -9,6 +9,7 @@ 9 9 {{html wiki="false" clean="false"}} 10 10 <p> 11 11 All about homeopaths. 12 +${stringtool.capitalize($doc.documentReference.parent.getName())} 12 12 </p> 13 13 <div id="homeopaths_map"></div> 14 14
- XWiki.JavaScriptExtension[0]
-
- Code
-
... ... @@ -5,3 +5,50 @@ 5 5 }).addTo(map); 6 6 map.attributionControl.setPrefix(''); 7 7 8 + #set($query = $services.query.xwql("from doc.object('homeopaths.Code.homeopathsClass') as homeopathObj")) 9 + #set($result = $query.execute()) 10 + #set($map = {}) 11 + #foreach($item in $result) 12 + #set($result_doc = $xwiki.getDocument("${item}")) 13 + #set($spaceReference = $services.model.resolveDocument('', 'default', $result_doc.documentReference.lastSpaceReference).parent) 14 + #set($spaceName = $spaceReference.getName()) 15 + #set($result_obj = $result_doc.getObject("homeopaths.Code.homeopathsClass")) 16 + #set($addressArray = $result_obj.getProperty("address").value.split(",")) 17 + #set($address = "") 18 + #foreach($address_item in $addressArray) 19 + #if($foreach.hasNext) 20 + #set($linebreak = "<br />") 21 + #else 22 + #set($linebreak = "") 23 + #end 24 + #set($address = "${address}${address_item.trim()}${linebreak}") 25 + #end 26 + #set($info = "<h4>${stringtool.capitalize($result_doc.documentReference.getName())}</h4><address>${address}</address>") 27 + #set($discard = $map.put($info, $result_obj.getProperty("latlong").value)) 28 + #end 29 + #if($objecttool.allNull($map)) 30 + #set($mapJSON = {}) 31 + #else 32 + #set($mapJSON = $jsontool.serialize(${map})) 33 + #end 34 + 35 + var mapJSON = $jsontool.parse($mapJSON), 36 + markers = []; 37 + for(const property in mapJSON) { 38 + let latlong = mapJSON[property].split("/"), 39 + lat = latlong[0], 40 + long = latlong[1], 41 + latlongArray = [long, lat, property]; 42 + markers.push(latlongArray) 43 + } 44 + 45 + for (var i=0; i<markers.length; i++) { 46 + let lon = markers[i][0], 47 + lat = markers[i][1], 48 + popupText = markers[i][2], 49 + markerLocation = new L.LatLng(lat, lon), 50 + marker = new L.Marker(markerLocation); 51 + map.addLayer(marker); 52 + marker.bindPopup(popupText); 53 + } 54 +