Alors voilà, quand mon forum était en version 3.0 mon co-admin avait développé un script pour ajouter des coordonnées exactes sur google maps.
Ce que je souhaiterais faire avec la version actuelle...
Il avait d'abord créé un BBcode comme suit :
Utilisation:
Code : Tout sélectionner
[Map]{SIMPLETEXT1}[/Map]
Code : Tout sélectionner
<iframe src ="map.php?addr={SIMPLETEXT1}" width="640" height="480" scrolling="no"></iframe>
Code : Tout sélectionner
[Map]Entrer une adresse où les coordonnées (lat,long)[/Map]
Nouveaux fichiers à placer à la racine du site: (racine du site et non racine du forum)
localisation.html
Code : Tout sélectionner
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Google Maps - phpBB 3</title>
<meta http-equiv="content-type" content="text/html; charset=utf-8"/>
<style></style>
<!-- localhost -->
<!--<script src="http://maps.google.com/maps?file=api&v=2&key= ABQIAAAA6D5_O3drUBfeyXb9fbffURTRQ1q-9n7AiJmM4VDOgkekAD9aLBTCOK7bfexY7HEOHSdoJbQ5s6ocvg" type="text/javascript"></script>-->
<!-- .fr -->
<!--<script src="http://maps.google.com/maps?file=api&v=2&key= ABQIAAAA6D5_O3drUBfeyXb9fbffURTRQ1q-9n7AiJmM4VDOgkekAD9aLBTCOK7bfexY7HEOHSdoJbQ5s6ocvg" type="text/javascript"></script>-->
<!-- .eu -->
<script src="http://maps.google.com/maps?file=api&v=2&key= ABQIAAAA6D5_O3drUBfeyXb9fbffURTRQ1q-9n7AiJmM4VDOgkekAD9aLBTCOK7bfexY7HEOHSdoJbQ5s6ocvg" type="text/javascript"></script>
<script src="google_maps.js" type="text/javascript"></script>
<script type="text/javascript">
// the variable of Google Maps
var map = null;
function init()
{
map = new phpBB3_googleMaps();
map.initSelect();
}
function searchCity()
{
if (map == null) {
alert('Erreur : La carte n\'est pas chargé!');
return false;
}
return map.searchCity('city');
}
</script>
</head>
<body onload="init()" onunload="GUnload()">
<div id="google_maps" style="width: 622px; height: 373px;"></div>
<p>Pour trouver les coordonnées d'un lieu, naviguez dans la carte à l'aide du zoom et des flèches, au besoin affichez la vue satellite, quand vous êtes à l'endroit dont vous voulez relever les coordonnées, cliquez sur cet endroit précis et une popup s'ouvrira avec les coordonnées ainsi que les balises. Il suffit à présent de sélectionner cette ligne et de la copier afin de pouvoir la coller dans la zone d'édition de votre message.</p>
</body>
</html>
Code : Tout sélectionner
function phpBB3_googleMaps()
{
// initialisation des variables
this.map = null;
this.geoCoder = null;
this.defaultLat = 46.11;
this.defaultLng = 1.99;
this.defaultZoom = 9;
this.xmlFile = 'markers.xml';
this.forumUrl = 'http://forum.framasoft.org/';
// vérifie que le navigateur est compatible avec Google Maps
if (!GBrowserIsCompatible()) {
alert("Votre navigateur n'est pas compatible avec Google Maps!");
}
// crée une carte avec un contrôle du zoom
this.map = new GMap2(document.getElementById("google_maps"));
this.map.addControl(new GLargeMapControl());
this.map.addControl(new GMapTypeControl());
// fontion permettant d'initialiser les variables
this.init = function(lat, lng, zoom, forumUrl)
{
this.defaultLat = lat;
this.defaultLng = lng;
this.defaultZoom = zoom;
this.forumUrl = forumUrl;
}
// fonction permettant d'initialiser la carte
this.initView = function()
{
var position;
position = new GLatLng(this.defaultLat, this.defaultLng);
this.map.setCenter(position, this.defaultZoom);
}
// fonction permettant d'initialiser la carte permettant de sélectionner sa localisation
this.initSelect = function()
{
var position;
position = new GLatLng(this.defaultLat, this.defaultLng);
this.map.setCenter(position, this.defaultZoom);
// variable permettant la recherche d'une localisation
this.geoCoder = new GClientGeocoder();
// création d'un évenement permettant de récupérer la localisation de l'utilisateur
GEvent.addListener(this.map, 'click', function(overlay, latlng) {
if (overlay) {
return;
}
alert ('[map]' + latlng.lat() + ' , ' + latlng.lng()+ '[/map]');
}
);
}
// fonction permettant d'avoir des variables non null
this.blankIfNull = function(obj)
{
if (obj == null) {
obj = "";
}
return obj;
}
}
Ouvrir styles/automne/template/posting_buttons.html
Chercher:
Code : Tout sélectionner
</div>
<!-- ENDIF -->
Code : Tout sélectionner
<input type="button" class="button2" name="Map" value="Map" style="width: 40px" onClick=window.open("https://encreuse.net/map/localisation.html","YaCast","top=50,left=50,screenx=50,screeny=50,scrollbars=no,width=640,height=480") title="Pour integrer une carte Google Maps" />
Je vous mets les fichiers en question ici
Voilà les éléments que j'ai et ça serait pour ajouter un BBcode ou un bouton pour insérer un point d’intérêt ou une position pour un rassemblement par exemple...
Merci d'avance de votre aide.