« Widget:CartoFab » : différence entre les versions

De fablabo
Aller à :navigation, rechercher
Cedric (discussion | contributions)
Aucun résumé des modifications
Aucun résumé des modifications
 
(52 versions intermédiaires par un autre utilisateur non affichées)
Ligne 1 : Ligne 1 :
<noinclude>
<noinclude>
Proto de développement de[[widget:CarteFablabs]]
Proto de développement de [[widget:CarteFablabs]]




Ligne 52 : Ligne 52 :
|limit=500
|limit=500
}} : tous les fablabs qui ont une longitude...
}} : 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
cartographie tous les fablabs
Ligne 63 : Ligne 80 :
|limit=500
|limit=500
}}
}}




Ligne 81 : Ligne 100 :
<script src="http://cdn.leafletjs.com/leaflet-0.4/leaflet.js"></script>
<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:'720'}-->px; height: <!--{$hauteur|escape:'quotes'|default:'420'}-->px"></div>
<div id="<!--{$nom|escape:'quotes'|default:'carte'}-->" style="width: <!--{$largeur|escape:'quotes'|default:'700'}-->px; height: <!--{$hauteur|escape:'quotes'|default:'420'}-->px"></div>
<div id="nombreLabos">chargement...</div>
<div id="nombreLabos">chargement...</div>
<script>
<script>
Ligne 105 : Ligne 124 :
//appel de la liste des labs
//appel de la liste des labs
document.getElementById("nombreLabos").innerHTML = "Recherche des labs...";
document.getElementById("nombreLabos").innerHTML = "Recherche des labs...";
numLabs=0;


$.ajax({
$.ajax({
Ligne 111 : Ligne 132 :
         format: 'json'
         format: 'json'
     },
     },
     dataType: 'jsonp',
     dataType: 'json',
     success: function(data) {  
     success: function(jsondata) {  
          $.each(data.items, function(i,item){
 
     
console.log(jsondata.results);
          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);
 
   




    });
          $.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")
.done(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);
    })
.fail(function( jqxhr, textStatus, error ) {
var err = textStatus + ", " + error;
console.log( "Request Failed: " + err );
})


;


*/
    });
document.getElementById("nombreLabos").innerHTML = "Il ya actuellement "+data.items.length+" laboratoires renseignés sur cette page";
    document.getElementById("nombreLabos").innerHTML = "Il ya actuellement "+numLabs+" Labos renseignés sur cette page";
  });


</script>


<noinclude>
}


$.getJSON( "test.js", { name: "John", time: "2pm" } )
.done(function( json ) {
console.log( "JSON Data: " + json.users[ 3 ].name );
})
.fail(function( jqxhr, textStatus, error ) {
var err = textStatus + ", " + error;
console.log( "Request Failed: " + err );
});
});


Ligne 164 : Ligne 174 :




ancien================================================
$.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){
</script>
     
 
      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);
<noinclude>
   


àvoir requete json semantik mieux


    });




=====documentation=====
=====documentation=====
http://semantic-mediawiki.org/wiki/Serialization_%28JSON%29
https://www.mediawiki.org/wiki/Category:Snippets_with_JavaScript
https://www.mediawiki.org/wiki/Category:Snippets_with_JavaScript
</noinclude>
</noinclude>

Dernière version du 21 février 2017 à 13:05

Proto de développement de widget:CarteFablabs


usage : {{#widget:CartoFab |nom=(optionnel) |longitude=51(optionnel) |latitude=3.56(optionnel) |zoom=1 a 18(optionnel) |largeur=(optionnel) |hauteur=(optionnel) }}

trouver les coordonnées : http://universimmedia.pagesperso-orange.fr/geo/nievre.htm

on peut utiliser un droplet présent sur cette page pour connaitre les coords d'un objet :http://www.mediawikiwidgets.org/Google_Maps


inspiration: http://www.mediawikiwidgets.org/w/index.php?title=Widget:Google_Maps&action=edit

item nom artlab

adresse 11ème Parislabel site http://www.digitalarti.com/fr/blog/artlab_blog long 2.3 latt 48.8 intitulé fablab structures sarl


ne pas effacer ! ça sert ! JSON : tous les fablabs qui ont une longitude...


tous les fablabs en format CSV : CSV



cartographie tous les fablabs




L.marker([51.5, -0.09]).addTo(map) .bindPopup("Hello world!
I am a popup.").openPopup();




<link rel="stylesheet" href="http://cdn.leafletjs.com/leaflet-0.4.4/leaflet.css" />

<script src="http://cdn.leafletjs.com/leaflet-0.4/leaflet.js"></script>

chargement...

<script>


///////////fin javaload


var cartofab = L.map().setView([, ], );


// add an OpenStreetMap tile layer L.tileLayer('http://{s}.tile.osm.org/{z}/{x}/{y}.png', {

   attribution: '© <a href="http://osm.org/copyright">OpenStreetMap</a> contributors'

}).addTo(cartofab);



//appel de la liste des labs document.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("<a href="+item.printouts.Site[0]+" target=\"_blank\">"+i+"</a>
"+Intitulés+"
"+structures);




    });
   document.getElementById("nombreLabos").innerHTML = "Il ya actuellement "+numLabs+" Labos renseignés sur cette page";


}

});



</script>


àvoir requete json semantik mieux


documentation

http://semantic-mediawiki.org/wiki/Serialization_%28JSON%29

https://www.mediawiki.org/wiki/Category:Snippets_with_JavaScript