+span fermant
[lhc/web/spip_carte_de_sites.git] / contenu / page-carte_de_sites.html
old mode 100644 (file)
new mode 100755 (executable)
index 5875879..81f1c92
@@ -1,60 +1,89 @@
-<div id="map" style="width: 540px; height: 400px"></div>
+[(#REM)
+    Modele carte_de_site
+    
+    Parametres :
 
+    - legende = non : ne pas afficher la legende
+]
 
-<strong>Legende</strong><br/>
-       <BOUCLE_legende(MOTS){type = Ateliers}{par num titre}>
-               <p>#LOGO_MOT [(#TITRE|supprimer_numero)]</p>
-       </BOUCLE_legende>
+<!-- Carte -->
+<div id="map" style="width: 540px; height: 400px">
+<script src="[(#CHEMIN{lib/CloudMade-Leaflet-edb7d25/dist/leaflet.js}|url_absolue)]"></script>
 
-
-<script src="#CONFIG{adresse_site}/lib/CloudMade-Leaflet-404b097/dist/leaflet.js"></script>
 <script>
-       var map = new L.Map('map');
-       
-       var cloudmadeUrl = 'http://{s}.tile.cloudmade.com/BC9A493B41014CAABB98F0471D759707/997/256/{z}/{x}/{y}.png',
-               cloudmadeAttribution = 'Map data &copy; 2011 OpenStreetMap contributors, Imagery &copy; 2011 CloudMade',
-               cloudmade = new L.TileLayer(cloudmadeUrl, {maxZoom: 18, attribution: cloudmadeAttribution});
-       
-       map.setView(new L.LatLng(46.8, 2.52), 5).addLayer(cloudmade);
-  
-       var WorkshopIcon = L.Icon.extend({
-           iconUrl: '#CONFIG{adresse_site}/plugins/carte-de-sites/images/grey.png',
-           shadowUrl: '#CONFIG{adresse_site}/lib/CloudMade-Leaflet-404b097/dist/images/marker-shadow.png',
-           iconSize: new L.Point(25, 41),
-           shadowSize: new L.Point(41, 41),
-           iconAnchor: new L.Point(13, 41),
-           popupAnchor: new L.Point(0, -33)
-       });             
-       
-       var     greyIcon = new WorkshopIcon()
-                       redIcon = new WorkshopIcon('#CONFIG{adresse_site}/plugins/carte-de-sites/images/red.png'),
-                       yellowIcon = new WorkshopIcon('#CONFIG{adresse_site}/plugins/carte-de-sites/images/yellow.png'),
-                       blueIcon = new WorkshopIcon('#CONFIG{adresse_site}/plugins/carte-de-sites/images/blue.png'),
-                       greenIcon = new WorkshopIcon('#CONFIG{adresse_site}/plugins/carte-de-sites/images/green.png');
-       
+<BOUCLE_ateliers_types(MOTS){type = Ateliers}{par num titre}>
+               var group_#ID_MOT = new L.LayerGroup();
+               <BOUCLE_sites(SITES){id_mot}>
+                               <BOUCLE_coord(GIS){id_syndic}>
+                                               var WorkshopIcon = L.Icon.extend({
+                                                   iconUrl: '[(#LOGO_MOT||extraire_attribut{src}|url_absolue)]',
+                                                   shadowUrl: '[(#LOGO_MOT_SURVOL||extraire_attribut{src}|url_absolue)]',
+                                                   iconSize: new L.Point(17, 28),
+                                                   shadowSize: new L.Point(17, 17),
+                                                   iconAnchor: new L.Point(13, 17),
+                                                   popupAnchor: new L.Point(0, -33)
+                                               });
+                                               siteIcon = new WorkshopIcon()
+                                               var markerAtelier = new L.Marker(new L.LatLng(#LAT, #LON), {icon: siteIcon});
+                                               markerAtelier.bindPopup("<span style='float: left; width: 45px;'><img src='[(#LOGO_SYNDIC||extraire_attribut{src}|url_absolue)]' alt='' style='width: 45px;' width='45'></span><a href='[(#ID_SYNDIC|generer_url_entite{site})]'>#NOM_SITE</a><br/>#DESCRIPTIF<span class='spip_documents spip_documents_right' style='float: right; width: 100px;'><span style='float: left; width: 100px;'><img src='[(#LOGO_SYNDIC_SURVOL||extraire_attribut{src}|url_absolue)]' alt='' style='width: 100px;' width='100'></span>#ADRESSE<br/> #CODE_POSTAL #VILLE<br/><a href='[(#URL_SITE)]'>[(#URL_SITE)]</a><br/><br/><em>Statut: [(#_ateliers_types:TITRE|supprimer_numero)]</em>");
+                                               group_#ID_MOT.addLayer(markerAtelier)
+                               </BOUCLE_coord>
+               </BOUCLE_sites>
+</BOUCLE_ateliers_types>
+
+       var cloudmadeAttribution = 'Map data &copy; 2011 OpenStreetMap contributors, Imagery &copy; 2011 CloudMade',
+               cloudmadeOptions = {maxZoom: 18, attribution: cloudmadeAttribution},    
+               cloudmadeUrl = 'http://{s}.tile.cloudmade.com/BC9A493B41014CAABB98F0471D759707/{styleId}/256/{z}/{x}/{y}.png';
+               
+       var midnightCommander = new L.TileLayer(cloudmadeUrl, cloudmadeOptions, {styleId: 999}),
+               minimal = new L.TileLayer(cloudmadeUrl, cloudmadeOptions, {styleId: 14189});
+               
+
+<B_map>
+       var map = new L.Map('map', {center: new L.LatLng(46.8, 2.52), zoom: 5, layers: [<BOUCLE_map(MOTS){type = Ateliers}>     group_#ID_MOT,</BOUCLE_map>     midnightCommander, minimal]});
+</B_map>
+
+       var baseMaps = {
+                               "Vue de nuit ;-)": midnightCommander,                           
+                               "Vue de jour": minimal
+                       };
+
+<B_groups>
+       var overlayMaps = {     
+               <BOUCLE_groups(MOTS){type = Ateliers}{par num titre}>
+                       "[(#TITRE|supprimer_numero)]": group_#ID_MOT,</BOUCLE_groups>
+       };
+</B_groups>
+
+
+       layersControl = new L.Control.Layers(baseMaps, overlayMaps);
+        
+       map.addControl(layersControl);
 
-       <BOUCLE_ateliers_types(MOTS){type = Ateliers}{!par id_mot}>
-                       <BOUCLE_sites(SITES){id_mot}>
-                                       <BOUCLE_coord(GIS){id_syndic}>
-                                                       siteIcon = new WorkshopIcon('#CONFIG{adresse_site}/IMG/[(#LOGO_MOT|fichier)]')
-                                                       var markerGrenoble = new L.Marker(new L.LatLng(#LAT, #LON), {icon: siteIcon});
-                                                       map.addLayer(markerGrenoble);
-                                                       markerGrenoble.bindPopup("<a href='#URL_SITE'>#NOM_SITE</a><br/>#_sites:DESCRIPTIF<br/>#ADRESSE<br/> #CODE_POSTAL #VILLE<br/><br/><em>Statut: [(#_ateliers_types:TITRE|supprimer_numero)]</em>");
-                                       </BOUCLE_coord>
-                       </BOUCLE_sites>
-       </BOUCLE_ateliers_types>
-       
-                       
        map.on('click', onMapClick);
        
        var popup = new L.Popup();
 
-             function onMapClick(e) {
-                     var latlngStr = '(' + e.latlng.lat.toFixed(3) + ', ' + e.latlng.lng.toFixed(3) + ')';
+       function onMapClick(e) {
+               var latlngStr = '(' + e.latlng.lat.toFixed(5) + ', ' + e.latlng.lng.toFixed(5) + ')';
+               popup.setLatLng(e.latlng);
+               popup.setContent("Coordonnees de votre clic (Latitude, Longitude)" + latlngStr);
+               map.openPopup(popup);
+       }
 
-                     popup.setLatLng(e.latlng);
-                     popup.setContent("You clicked the map at " + latlngStr);
-                     map.openPopup(popup);
-       }                               
-       
 </script>
+</div>
+
+<!-- Legende -->
+
+<B_legende>
+    [(#ENV{legende}|!={non}|oui)
+        <h2 class='h2 spip'>Legende</h2>
+    ]
+<BOUCLE_legende(MOTS){type = Ateliers}{par num titre}>
+    [(#ENV{legende}|!={non}|oui)
+           <p>#LOGO_MOT_NORMAL [(#TITRE|supprimer_numero)]</p>
+       ]       
+</BOUCLE_legende>
+</B_legende>
+