« Widget:CarteFablabs » : différence entre les versions
Aucun résumé des modifications |
Aucun résumé des modifications |
||
(39 versions intermédiaires par 2 utilisateurs non affichées) | |||
Ligne 1 : | Ligne 1 : | ||
<noinclude> | <noinclude> | ||
{{#widget: | usage : | ||
<nowiki> | |||
{{#widget:CarteFablabs | |||
|nom=(optionnel) | |nom=(optionnel) | ||
} | |longitude=51(optionnel) | ||
|latitude=3.56(optionnel) | |||
|zoom=1 a 18(optionnel) | |||
|largeur=(optionnel) | |||
|hauteur=(optionnel) | |||
}} | |||
</nowiki> | |||
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 | 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 | inspiration: http://www.mediawikiwidgets.org/w/index.php?title=Widget:Google_Maps&action=edit | ||
ne pas effacer ! ça sert ! | |||
{{#ask: [[Category:Fablabs]] | {{#ask: [[Category:Fablabs]] | ||
| ?long # - | |?long # - | ||
|?latt # | |?latt # | ||
|?site | |||
|format=csv | |||
}} | |||
cartographie tous les fablabs | |||
{{#ask: [[Category:Fablabs]] | |||
|?long # - | |||
|?latt # | |||
|?site | |||
}} | }} | ||
Ligne 28 : | Ligne 48 : | ||
</noinclude> | </noinclude> | ||
Ligne 37 : | Ligne 59 : | ||
<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:' | <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="nombreLabos"></div> | |||
<script> | <script> | ||
var map = L.map('<!--{$nom|escape:'quotes'|default:'carte'}-->').setView([<!--{$longitude|escape:'quotes'|default:' | ///fonction pour recuperer la liste des coords des labs | ||
function requete(url) { | |||
if (window.XMLHttpRequest) // Mozilla, Safari,... | |||
xhr = new XMLHttpRequest(); | |||
else if (window.ActiveXObject) | |||
xhr = new ActiveXObject("Microsoft.XMLHTTP"); | |||
if (!xhr) { | |||
alert("Abandon : Impossible de créer une instance Ajax"); | |||
return false; | |||
} | |||
xhr.onreadystatechange = reponse; | |||
xhr.open("GET", url, true); | |||
xhr.send(null); | |||
} | |||
function reponse() { | |||
if (xhr.readyState == 4) { | |||
if (xhr.status == 200) { | |||
//alert(xhr.responseText); | |||
//le fichier arrive en CSV (valeurs séparées par des virgules) | |||
var lignes=new RegExp("[\n]+", "g"); | |||
var tableau=xhr.responseText.split(lignes); | |||
var colones=new RegExp("[,]+", "g"); | |||
for(var i=1;i<tableau.length-1;i++) | |||
{ | |||
var coords=tableau[i].split(colones); | |||
// alert(coords[0]); | |||
L.marker([coords[2], coords[1]]).addTo(map).bindPopup("<b><a href="+coords[3]+" target=\"_blank\">"+coords[0]+"</a></b>"); | |||
} | |||
document.getElementById("nombreLabos").innerHTML = "Il ya actuellement "+tableau.length+" laboratoires renseignés sur cette page"; | |||
} | |||
else { | |||
alert("La requête AJAX a rencontré un problème .."); | |||
} | |||
} | |||
} | |||
///////////fin javaload | |||
var map = L.map('<!--{$nom|escape:'quotes'|default:'carte'}-->').setView([<!--{$longitude|escape:'quotes'|default:'47'}-->, <!--{$latitude|escape:'quotes'|default:'1.7'}-->], <!--{$zoom|escape:'quotes'|default:'5'}-->); | |||
L.tileLayer('http://{s}.tile.cloudmade.com/7ad1b23bf3f347f8b0ab2416f66737fc/997/256/{z}/{x}/{y}.png', { | L.tileLayer('http://{s}.tile.cloudmade.com/7ad1b23bf3f347f8b0ab2416f66737fc/997/256/{z}/{x}/{y}.png', { | ||
Ligne 48 : | Ligne 120 : | ||
//appel de la liste des labs | |||
requete("Sp%C3%A9cial:Ask/-5B-5BCategory:Fablabs-5D-5D/-3FLong-23-2D/-3FLatt-23-2D/-3FSite/limit%3D150/format%3Dcsv/sep%3D,/headers%3Dshow"); | |||
</script> | </script> |
Dernière version du 6 novembre 2012 à 12:36
usage : {{#widget:CarteFablabs |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
ne pas effacer ! ça sert !
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>
<script>
///fonction pour recuperer la liste des coords des labs function requete(url) { if (window.XMLHttpRequest) // Mozilla, Safari,...
xhr = new XMLHttpRequest();
else if (window.ActiveXObject)
xhr = new ActiveXObject("Microsoft.XMLHTTP");
if (!xhr) {
alert("Abandon : Impossible de créer une instance Ajax"); return false;
} xhr.onreadystatechange = reponse; xhr.open("GET", url, true); xhr.send(null); }
function reponse() { if (xhr.readyState == 4) {
if (xhr.status == 200) {
//alert(xhr.responseText);
//le fichier arrive en CSV (valeurs séparées par des virgules)
var lignes=new RegExp("[\n]+", "g");
var tableau=xhr.responseText.split(lignes);
var colones=new RegExp("[,]+", "g");
for(var i=1;i<tableau.length-1;i++)
{ var coords=tableau[i].split(colones); // alert(coords[0]); L.marker([coords[2], coords[1]]).addTo(map).bindPopup("<a href="+coords[3]+" target=\"_blank\">"+coords[0]+"</a>"); } document.getElementById("nombreLabos").innerHTML = "Il ya actuellement "+tableau.length+" laboratoires renseignés sur cette page";
} else { alert("La requête AJAX a rencontré un problème .."); } }
}
///////////fin javaload
var map = L.map().setView([, ], );
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(map);
//appel de la liste des labs
requete("Sp%C3%A9cial:Ask/-5B-5BCategory:Fablabs-5D-5D/-3FLong-23-2D/-3FLatt-23-2D/-3FSite/limit%3D150/format%3Dcsv/sep%3D,/headers%3Dshow");
</script>