Changes for page Homeopaths

Last modified by Jip-jan Alunkel on March 14, 20:13

From version 8.83
edited by Jip-jan Alunkel
on December 08, 16:38
Change comment: Renamed from xwiki:practices.WebHome
To version 8.72
edited by Jip-jan Alunkel
on December 08, 16:27
Change comment: Renamed from xwiki:practices.WebHome

Summary

Details

Page properties
Content
... ... @@ -11,6 +11,30 @@
11 11  All about homeopaths.
12 12  </p>
13 13  <div id="homeopaths_map"></div>
14 + #set($query = $services.query.xwql("from doc.object('homeopaths.Code.homeopathsClass') as homeopathObj"))
15 + #set($result = $query.execute())
16 + #set($map = {})
17 + #foreach($item in $result)
18 + #set($result_doc = $xwiki.getDocument("${item}"))
19 + #set($result_obj = $result_doc.getObject("homeopaths.Code.homeopathsClass"))
20 + #set($addressArray = $result_obj.getProperty("address").value.split(","))
21 + #set($address = "")
22 + #foreach($address_item in $addressArray)
23 + #if($foreach.hasNext)
24 + #set($linebreak = "<br />")
25 + #else
26 + #set($linebreak = "")
27 + #end
28 + #set($address = "${address}${address_item.trim()}${linebreak}")
29 + #end
30 + #set($info = "<h4>${stringtool.capitalize($result_doc.documentReference.getName())}</h4><address>${address}</address>")
31 + #set($discard = $map.put($info, $result_obj.getProperty("latlong").value))
32 + #end
33 + #if($objecttool.allNull($map))
34 + #set($mapJSON = {})
35 + #else
36 + #set($mapJSON = $jsontool.serialize(${map}))
37 + #end
14 14  
15 15  <h2>Add your practice to the map</h2>
16 16  #set($form_start = {
XWiki.JavaScriptExtension[0]
Code
... ... @@ -5,3 +5,42 @@
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 + #set($info = "<h4>${stringtool.capitalize($result_doc.documentReference.getName())}</h4><address>${address}</address>")
19 + #set($discard = $map.put($info, $result_obj.getProperty("latlong").value))
20 + #end
21 + #if($objecttool.allNull($map))
22 + #set($mapJSON = {})
23 + #else
24 + #set($mapJSON = $jsontool.serialize(${map}))
25 + #end
26 +
27 + var mapJSON = $jsontool.parse($mapJSON),
28 + markers = [];
29 + for(const property in mapJSON) {
30 + let latlong = mapJSON[property].split("/"),
31 + lat = latlong[0],
32 + long = latlong[1],
33 + latlongArray = [long, lat, property];
34 + markers.push(latlongArray)
35 + }
36 +
37 + for (var i=0; i<markers.length; i++) {
38 + let lon = markers[i][0],
39 + lat = markers[i][1],
40 + popupText = markers[i][2],
41 + markerLocation = new L.LatLng(lat, lon),
42 + marker = new L.Marker(markerLocation);
43 + map.addLayer(marker);
44 + marker.bindPopup(popupText);
45 + }
46 +
XWiki.StyleSheetExtension[0]
Caching policy
... ... @@ -1,1 +1,1 @@
1 -forbid
1 +long
Use this extension
... ... @@ -1,1 +1,0 @@
1 -currentPage