<noinclude>
Proto de développement de[[widget:CarteFablabs]]
|limit=500
}} : tous les fablabs qui ont une longitude...
tous les fablabs en format CSV :
{{#ask: [[Category:Fablabs]]
|?long # -
|?latt #
|?site
|?adresse
|?intitulé
|?structures
|format=csv
|limit=500
}}
cartographie tous les fablabs
|limit=500
}}
<script src="http://cdn.leafletjs.com/leaflet-0.4/leaflet.js"></script>
<div id="<!--{$nom|escape:'quotes'|default:'carte'}-->" style="width: <!--{$largeur|escape:'quotes'|default:'720700'}-->px; height: <!--{$hauteur|escape:'quotes'|default:'420'}-->px"></div><div id="nombreLabos">chargement...</div>
<script>
/*
//cloudmate stoppe en mai 2014
// L.tileLayer('http://{s}.tile.cloudmade.com/7ad1b23bf3f347f8b0ab2416f66737fc/997/256/{z}/{x}/{y}.png', {
// maxZoom: 18,
// attribution: 'Map data © <a href="http://openstreetmap.org">OpenStreetMap</a> contributors, <a href="http://creativecommons.org/licenses/by-sa/2.0/">CC-BY-SA</a>, Imagery © <a href="http://cloudmade.com">CloudMade</a>'
// }).addTo(cartofab);
*/
// add an OpenStreetMap tile layer
L.tileLayer('http://{s}.tile.osm.org/{z}/{x}/{y}.png', {
//appel de la liste des labs
//requetedocument.getElementById("nombreLabos").innerHTML = "Recherche des labs..."; numLabs=0; $.ajax({ url: 'Sp%C3%A9cial:Ask/-5B-5BCategory:Fablabs-5D-5D-20-5B-5Blong::!:-5D-5D/-3FLong-23-2D/-3FLatt-23label/-3FSite/-3FAdresse/-3FIntitul%C3%A9/-3FStructures/limit%3D500/searchlabel%3D/format%3Djson', data: { format: 'json' }, dataType: 'json', success: function(jsondata) { console.log(jsondata.results); $.each(jsondata.results, function(i,item){ numLabs++;console.log(numLabs); Intitulés=""; for(var j= 0; j < item.printouts.Intitulé.length; j++) { Intitulés=Intitulés+" "+item.printouts.Intitulé[j].fulltext; } structures=""; for(var k= 0; k < item.printouts.Structures.length; k++) { structures=structures+" "+item.printouts.Structures[k].fulltext; } L.marker([item.printouts.Latt[0],item.printouts.Long[0]]).addTo(cartofab).bindPopup("<b><a href="+item.printouts.Site[0]+" target=\"_blank\">"+i+"</a></b><br/>"+Intitulés+"<br/>"+structures);
$.getJSON("Sp%C3%A9cial:Ask/-5B-5BCategory:Fablabs-5D-5D-20-5B-5Blong::!:-5D-5D/-3FLong-23-2D/-3FLatt-23label/-3FSite/-3FAdresse/-3FIntitul%C3%A9/-3FStructures/limit%3D500/searchlabel%3D/format%3Djson", function(data) {
$.each(data.items, function(i,item){
L.marker([item.latt, item.long]).addTo(cartofab).bindPopup("<b><a href="+item.site+" target=\"_blank\">"+item.label+"</a></b><br/>"+item.intitulé+"<br/>"+item.structures);
});
document.getElementById("nombreLabos").innerHTML = "Il ya actuellement "+numLabs+" Labos renseignés sur cette page";
})
.done(function() {console.log( "second success" );}).fail(function() {console.log( "error" );}).always(function() {console.log( "complete" );
});
document.getElementById("nombreLabos").innerHTML = "Il ya actuellement "+data.items.length+" laboratoires renseignés sur cette page"; });
</script>
<noinclude>
àvoir requete json semantik mieux
=====documentation=====
http://semantic-mediawiki.org/wiki/Serialization_%28JSON%29
https://www.mediawiki.org/wiki/Category:Snippets_with_JavaScript
</noinclude>