GIS 2 / GIS 3

Présentation et nouveautés

GIS2 est une mise à jour majeure du plugin GIS Escoitar. Le plugin permet d’attacher des points géolocalisés aux objets de SPIP afin de les afficher sur des cartes dans les pages de votre site.

GIS2 utilise une librairie javascript qui permet de jouer avec les cartes de plusieurs APIs et de basculer d’un fournisseur à un autre sans avoir à modifier le code des cartes. Cette librairie d’abstraction s’appelle Mapstraction. Elle est distribuée sous licence BSD sur github.

Grâce à Mapstraction, GIS2 permet d’afficher les cartes de Google Maps API v2 et v3, Openlayers, Yahoo Maps, Microsoft Bing, etc.

Un autre avantage de Mapstraction est qu’elle permet aussi aux développeurs de coder leurs cartes persos avec le code natif de chaque API quand c’est nécessaire (pour jouer avec un système de cluster de marqueurs par exemple).

Le plugin a été totalement recodé, voici quelques unes des modifications les plus importantes :

  • les points sont maintenant des objets autonomes qui peuvent être liés à n’importe quel type d’objet SPIP (article, rubrique, auteur, etc) ;
  • chaque point dispose d’un titre, d’un descriptif et d’un logo personnalisé ;
  • un point peut être lié à plusieurs objets et un objet peut être lié à plusieurs points ;
  • la balise #LONX a été renommée en #LON ;
  • les cartes utilisent du JSON pour charger les marqueurs ;
  • le plugin prend en charge la migration des données depuis GIS v1 ;
  • un nouveau critère distance permet de filtrer les points d’une boucle (voir plus bas).

Certaines APIs permettent d’utiliser des fonctions de géocodage et de gécodage inversé. Le géocodage (ou geocoding) consiste à récupérer les coordonnées géographiques d’une adresse. Le géocodage inverse (ou reverse geocoding) consiste à récupérer l’adresse de coordonnées géographiques.

Fonctions disponibles dans les différentes APIs

Les APIs marquées par une * nécessitent une clé pour être utilisées.

API Cartes et marqueurs Logo des marqueurs KML Geocoder
Cloudmade * oui oui non non
Google Maps V2 * oui oui oui oui
Google Maps V3 oui oui oui oui
OpenLayers oui oui oui oui
Ovi Nokia oui oui non non
Yandex * oui oui non oui

Installation et configuration

Ce plugin nécessite la librairie externe Mapstraction. Lors de son activation, SPIP vous proposera de récupérer la librairie automatiquement dans le dossier /lib situé à la racine de votre site (pensez à créer ce dossier s’il n’existe pas sur votre installation).

Ce plugin nécessite aussi les plugins suivants :

  • Saisies
  • Spip Bonux
  • Afficher Objets
  • CFG

GIS2 n’est pas compatible avec le plugin Google Maps API. Il faut donc désactiver ce dernier avant d’activer GIS2.

Une fois installé, le plugin est configurable depuis la page ecrire/?exec=cfg&cfg=gis :

Cette page permet de définir les options suivantes :

  • Coordonnées et zoom par défaut à utiliser dans les cartes ;
  • API de cartographie à utiliser ;
  • Utiliser les fonctions du geocoder ;
  • Afficher les champs d’adresse dans les formulaires d’édition des points ;
  • Centrer la carte sur l’emplacement de l’utilisateur lors de la création d’un point (API de géolocalisation HTML5).

Utilisation dans l’espace privé

Le plugin ajoute un bloc sur les pages des éléments de SPIP dans l’espace privé. Ce bloc se déplie au survol de la souris. Les liens situés en tête du bloc déplié permettent de basculer d’un panneau à une autre :

  • Points liés affiche la liste des points liés à l’objet en cours avec la possibilité de détacher ou supprimer chaque point ;
  • Rechercher un point affiche un formulaire pour rechercher un point existant et le lier à l’objet en cours ;
  • Lier un nouveau point affiche le formulaire d’édition de point pour en créer un nouveau et l’attacher à l’objet en cours .

Une page de gestion des points du site est accessible depuis le menu Édition > Points géolocalisés.

Depuis cette page, vous pouvez accéder à la fiche d’édition de chaque point afin d’en modifier les coordonnées, les champs d’adresse ou le logo.

Utilisation du modèle pour insérer des cartes dans vos pages

Pour insérer une carte dans un squelette, utilisez le modèle fourni par le plugin en insérant le code suivant à l’endroit où vous souhaitez afficher la carte :

[(#MODELE{carte_gis, zoom=X, type=xxx, control_zoom=xxx})]

Vous pouvez aussi utiliser le modèle fourni par le plugin pour afficher une carte depuis le contenu d’un article. Pour cela, il suffit d’ajouter ce code dans le texte de votre article :

<carte_gis1|zoom=X|type=xxx|control_zoom=XXX>

Lire la documentation à propos des modèles sur spip.net.

Paramètres du modèle

paramètre valeurs
id_carte_gis id unique de la carte (à définir si plusieurs cartes sont affichées sur une même page)
lat = 48.3 latitude du centre de la carte
lon = -4.7 longitude du centre de la carte
zoom = 5 zoom de la carte
width = 100% largeur de la carte, 100% par défaut
height = 400px hauteur de la carte, 400px par défaut
style = non ne pas styler la carte
zoom_molette = non désactiver le zoom avec la molette de la souris, actif par defaut
type = carte type de la carte : carte, satellite, relief ou hybride
control_zoom = large type des contrôles pour le zoom : large, small
control_pan = non ne pas afficher les contrôles de déplacement dans la carte
control_type = non ne pas afficher les contrôles de changement de type
no_control = oui ne pas afficher les contrôles de la carte
overview = oui afficher une mini carte de situation
scale = oui afficher l’échelle de la carte
limit = 500 nombre max de marqueurs à afficher, 500 par défaut
objets = gis type d’objets à afficher (fichier json/gis_xx qui génère la source de données)
autocenterandzoom = oui centrer et zoomer la carte automatiquement pour afficher tous les marqueurs
autofocus_marker = oui permet de forcer l’affichage d’une seule infobulle à la fois
id_a_ouvrir id_gis de l’infobulle à afficher au chargement (marqueur uniquement)
kml = 12 kml à superposer à la carte (id_document ou url)
localiser_visiteur = oui centrer la carte sur la position du visiteur (API géolocalisation HTML5)
point = non si elle vaut « non » cette option n’affichera pas de points du tout (utile pour n’afficher qu’un kml par exemple)

Le paramètre objets

Ce paramètre vous permet de spécifier quel type d’objet vous souhaitez afficher sur la carte. Il peut prendre les valeurs suivantes : gis (valeur par défaut), articles, auteurs, mots.

Si le paramètre « objets » vaut « articles », vous pouvez utiliser en paramètre du modèle tous les critères utilisables sur une boucle ARTICLES.

D’un point de vue technique, le paramètre objets permet de définir quel fond sera utilisé pour générer les données JSON qui alimenteront la carte. Lorsque le paramètre « objets » vaut « auteurs », c’est le squelette plugins/gis/json/auteurs.html qui est utilisé.

Quelques exemples de cartes

Afficher les articles de la rubrique n°2 et superposer le KML correspondant au document n°2 :

[(#INCLURE{fond=modeles/carte_gis,
	objets=articles,
	id_rubrique=2,
	zoom=7,
	lat=48.214378965824345,
	lon=-4.543704986572266,
	kml=2})]

Afficher le ou les points liés à l’article n°2 et centrer la carte automatiquement pour afficher tous les points :

[(#INCLURE{fond=modeles/carte_gis,
	autocenterandzoom=oui,
	id_article=2})]

Afficher les points liés aux articles de l’auteur n°1 :

[(#INCLURE{fond=modeles/carte_gis,
	objets=articles,
	id_auteur=1,
	zoom=5})]

Afficher les auteurs du site :

[(#INCLURE{fond=modeles/carte_gis,
	objets=auteurs,
	zoom=5})]

Boucles et balises

Voici la liste des balises disponibles dans une boucle GIS : #ID_GIS, #TITRE, #DESCRIPTIF, #LAT, #LON, #ZOOM.

Et si vous avez activé le geocoder ou que vous avez rempli les champs d’adresse à la main : #ADRESSE, #PAYS, #CODE_PAYS, #REGION, #VILLE, #CODE_POSTAL.

Critère gis

Depuis la version 2.2.0, le critère {gis} permet de forcer une jointure sur la table GIS dans les boucles des autres objets. Ainsi, une boucle ARTICLES qui comporte le critère {gis}, affichera uniquement les articles attachés à un point.

Les informations de ce point pourront être affichées avec les balises suivantes : #TITRE_GIS et #DESCRIPTIF_GIS, #ADRESSE_GIS, #PAYS_GIS, #CODE_PAYS_GIS, #REGION_GIS, #VILLE_GIS, #CODE_POSTAL_GIS.

Remarque : les balises sont suffixées afin d’éviter tout problème de champ homonyme avec un autre plugin.

<BOUCLE_gis(ARTICLES){gis}{id_rubrique ?}>
#ID_GIS - #LAT - #LON - #ZOOM <br/>
Titre de l'article : #TITRE <br />
Descriptif de l'article : #DESCRIPTIF <br />
Titre du point : #TITRE_GIS <br />
Descriptif du point : #DESCRIPTIF_GIS <br />
</BOUCLE_gis>

Critère distance

Le critère {gis distance<XX} permet de filtrer les résultats d’une boucle GIS en fonction de la distance (en kilomètres) par rapport au point présent dans l’environnement.

Par exemple, pour lister les points situés à moins de 50 kilomètres du point numéro 1 :

<BOUCLE_m(GIS){id_gis=1}>
<p>#TITRE / #LAT / #LON</p>
<BOUCLE_b(GIS){gis distance<50}>
<p>#ID_GIS / #TITRE / #DISTANCE km</p>
</BOUCLE_b>

Formulaire d’édition de point

Le formulaire #FORMULAIRE_EDITER_GIS permet de créer ou modifier un point. Vous pouvez l’utiliser dans vos squelettes en respectant la syntaxe suivante :

#FORMULAIRE_EDITER_GIS{id_gis, objet, id_objet, retour, ajaxload}

Définition des paramètres du formulaire :

  • id_gis : identifiant numérique du point ou vide pour créer un nouveau point
  • objet : le type d’objet auquel est attaché le point
  • id_objet : id_objet de l’objet auquel est attaché le point
  • retour : url de retour vers laquelle le formulaire redirigera après validation
  • ajaxload : initialiser la carte à chaque onAjaxLoad()

Par exemple, voici un extrait de code qui permet de modifier le point attaché à un article ou d’en créer un nouveau s’il n’y en a pas déjà un attaché à l’article.

<BOUCLE_unpoint(GIS){id_article}{0,1}>
#SET{id_gis,#ID_GIS}
</BOUCLE_unpoint>
#SET{id_gis,nouveau}
<//B_unpoint>
#FORMULAIRE_EDITER_GIS{#GET{id_gis},'article',#ID_ARTICLE,#URL_ARTICLE}

Personnalisation

Icône par défaut des marqueurs

Il est possible de définir une icône par défaut pour les marqueurs des cartes. Pour cela, il suffit de déposer l’image de votre icône personnalisée dans votre dossier squelettes :

squelettes/images/marker_defaut.png

L’icône utilisée par défaut dans GIS est une image de 24x32 pixels.

Important : si vous souhaitez qu’on puisse vous aider lorsque vous postez dans le forum de cet article, pensez à fournir un lien vers le site en question sans quoi il nous sera impossible de vous dépanner.

Discussion

128 discussions

  • 2
    Arnaud Dupin

    Bonjour

    Je ne comprends vraiment pas comment intégrer une carte dans mon article. Les coordonnées sont entrées dans les champs de GIS (2.4) et j’ai essayé toutes les possibilités et je ne trouve pas. Et je ne comprends pas bien les explications ci-dessus.

    Peut-on m’aider, s’il vous plaît ?

    MErci

    Arnaud

    • Salut, oulah, ça faisait longtemps qu’on ne m’avait pas parlé de cette vieille version ^^

      Tu utilises encore SPIP 2.1 ? Je te conseille grandement de mettre à jour ton site et de passer à GIS 4.

    • Oui, je sais qu’il faudrait mais je ne peux pas parce que cela me pose d’autres problèmes :(

      Je vais essayer de continuer mes recherches seul...

      Merci pour la réponse rapide, en tout cas

      Arnaud

    Répondre à ce message

  • 3

    Bonjour,
    J’ai dupliqué un site en spip 2.1 dans lequel le plugin GIS2.4 fonctionne parfaitement bien. Au passage : merci pour ce plugin !
    Mon soucis est que sur la version dupliquée aucune carte ne s’affiche et j’ai l’erreur : MissingKeyMapError

    Url qui fonctionne : www.cc-bassin-annonay.fr/Acces,2.html
    Url avec pb : www.annonayrhoneagglo.fr/Acces,2.html

    J’ai beau chercher, je ne trouve pas où est le problème ? Quelqu’un peut-il m’aider ?
    D’avance merci.

    • Même si cette version de GIS n’est plus supportée, as-tu lu le message d’erreur complet et le contenu de la page liée ?

      « Google Maps API error : MissingKeyMapError https://developers.google.com/maps/documentation/javascript/error-messages#missing-key-map-error »

      En résumé, il faut une clé pour utiliser l’API google.

    • Merci b_b pour ta réponse. Nous allons bientôt refondre le site et passer à SPIP 3 et GIS 4 :-)
      Mais en attendant il me faut résoudre ce problème.
      J’ai bien compris qu’il fallait une clé pour l’API mais ce qui est étonnant c’est que sur le site d’origine, dans un contexte identique, elle n’est pas demandée. D’ailleurs GIS ne la demande que pour la version V2 de l’API GoogleMaps et là j’utilise la version V3 pour laquelle aucune clé n’est demandée dans le plugin GIS.

      Pour ce qui est du message d’erreur, c’est ce que je vois à la console :
      « Google Maps API error : MissingKeyMapError https://developers.google.com/maps/documentation/javascript/error-messages#missing-key-map-error »

      Comment faire pour transmettre cette clé via le plugin GIS en version V3 de l’API Google ?

    • J’ai trouvé : il faut modifier gis_pipelines.php qui ne transmet pas la clé google dans le cas de la version googleV3. Le test est à la ligne 26, à remplacer par

      if ($config['api'] == 'googlev3')
      		$flux .="\n".'<script type="text/javascript" src="https://maps.google.com/maps/api/js?sensor=false&amp;key='.$config['api_key_google'].'&amp;language='.$GLOBALS['spip_lang'].'"></script>'."\n";

    Répondre à ce message

  • Bonjour à tous

    Je reviens encore une fois - désolé - sur la possibilité d’enregistrer la carte affichée par Gis.

    En regardant - sans y connaître grand chose - avec Firebug ce qui est généré par l’appel de carte, à savoir :

    [(#INCLURE{fond=modeles/carte_gis,
    objets=articlesrubrique,
    id_rubrique=#ID_RUBRIQUE,
    id_article=#ID_ARTICLE,
    lang=#ENV{lang},
    type=hybride,
    autocenterandzoom=oui,
    no_control=oui})]

    et qui génère ceci, par exemple :

    http://www.guidemanche.com/spip.php?rubrique80&lang=fr

    je me disais qu’il devrait être possible d’ « intercepter » la sortie générée par le js au moment de l’affichage.

    Mais, bien évidemment, je ne saurai pas comment faire...

    Comme je l’ai déjà expliqué plus tôt, en utilisant html2canvas, j’obtiens bien un fichier image mais qui est vide.

    Et je sèche...

    µµMerci pour votre aide.
    ADB

    Répondre à ce message

  • 3

    Le pointeur ne s’affiche plus sur la version pour SPIP 2.1 (c’est déjà arrivé précedement)

    J’ai tenté de spécifier un marqueur personnalité comme indiqué à la fin de cette doc, sans résultat.

    • Difficile de t’aider sans plus di’nfos et un lien vers la page qui pose problème...

    • Version 2.4.11, le pointeur par défaut ne s’affiche plus.

      J’ai donc utilisé

      squelettes/images/marker_defaut.png

      qui est bien pris en compte (une fois le cache vidé).

      Par contre il m’a fallut choisir une image en 32x32 et non 24x32 comme indiqué ci-dessus pour éviter dese bandes blanches de part et d’autre du pointeur.

    • Problème de droits ? Vent contraire ? Je devrais pouvoir t’en dire plus avec l’adresse du site :p

    Répondre à ce message

  • 3

    Bonjour
    Plugin magnifique et bien utile. Merci
    Il demeure un « petit » problème que j’aimerais bien résoudre...

    Lors de l’aspiration de mon site, pour faire un CD, la partie Carte de Gis ne s’affiche pas et laisse un grand blanc.
    Comment serait-il possible de contourner ce pb et d’obtenir l’affichage de la carte et des points associés ?

    Merci

    • Salut, pour faire court, c’est mal barré :p Les cartes utilisent ce qu’on appelle des tuiles :

      http://www.neogeo-online.net/blog/archives/1727/

      Du coup, si tu veux faire une version CD de ton site, il vaudrait mieux masquer les cartes ou en faire une version statique d’une seule image, car pour avoir des carte dynamiques sur ton CD il te faudrait télécharger toutes les tuiles utilisées par ta carte et les coller sur le CD en question (et comme la planète représente un paquet de tuiles, il te faudrait un sacré gros CD ^^).

    • OK, merci.
      Je vais chercher du côté de la création d’une image statique.

    • Bonjour
      Je me repenche sur cette histoire de transformation de la carte en image statique.
      Si j’arrive à le faire avec une carte maps.google avec coordonnées,

      <?php
      ini_set('user_agent', 'Mozilla/5.0');
      $url="http://maps.google.com/maps/api/staticmap?center=[(#LATITUDE|scannav)],[(#LONGITUDE|scannav)]&zoom=15&size=450x400&maptype=hybrid&format=jpg&markers=color:blue|label:W|[(#LATITUDE|scannav)],[(#LONGITUDE|scannav)]&sensor=false";
      $contenu = file_get_contents($url);
      if (empty($contenu)){}
      else {
      file_put_contents('googleimg/#ID_ARTICLE.jpg',file_get_contents($url));
      }
      ?>

      je me heurte au pb de l’inclure de toute la fonction de création de la carte :

      [(#INCLURE{fond=modeles/carte_gis,objets=articlesrubrique,id_rubrique=#ID_RUBRIQUE,id_article=#ID_ARTICLE,lang=#ENV{lang},limit=1000, type=hybride,autocenterandzoom=oui, no_control=oui})] 

      J’ai essayé avec html2canvas, avec pour résultat un fichier = 0, mais je ne suis pas assez calé pour savoir ce qui cloche dans le code.

      Auriez-vous une piste ?
      Merci

    Répondre à ce message

  • 4

    Bonjour,

    Je rencontre un problème curieux avec ce plugin (avec SPIP 2.1.26 et GIS 2.4.11).

    Dans les squelettes affichant les mots-clés, j’ai inséré une carte reprenant tous les points (tous les articles) liés à ce mot-clé. Ce que je fais avec le code suivant :

    <BOUCLE_carte(GIS){id_mot}>
    [(#INCLURE{fond=modeles/carte_gis,
    		objets=articles,
    		autocenterandzoom=oui,
    		id_mot=#ID_MOT,
    		scale=oui,
    		limit=100,
    		ombre=0
    		})]
    </BOUCLE_carte>

    (avec le modèle standard fourni avec le plugin)

    Ça marche très bien... mais uniquement pour les mots-clés de certains groupes. Pour les mots-clés des autres groupes, ça n’affiche rien du tout (avec le même squelette, donc).

    Auriez-vous une idée de ce dont il s’agit ? Merci.

    • Salut,

      Auriez-vous une idée de ce dont il s’agit ?

      Sans lien vers les pages qui affichent le problème, non.

    • Ok, d’après ce que je vois, ton squelette affiche la carte uniquement si un point est lié au mot en cours d’affichage, cf ce code :

            <BOUCLE_carte(GIS){id_mot}>
            [<div id="carte" style="margin-bottom: 1em;">(#INCLURE{fond=modeles/carte_gis,
      		objets=articles,
      		autocenterandzoom=oui,
      		id_mot=#ID_MOT,
      		scale=oui,
      		limit=100,
      		ombre=0
      		})
            </div>]blabla</BOUCLE_carte>

      Du coup, tu n’as peut-être pas de carte qui s’affiche car il n’y a aucun point lié au mot en cours. À vérifier. Sinon, le plus simple est de virer la boucle carte qui encadre l’appel du modèle.

      ++

    • Problème résolu en supprimant la boucle. Merci beaucoup.

    Répondre à ce message

  • 1

    Bonjour,

    La dernière version de FireFox (sous Windows 7) casse la recherche d’un point par son adresse.
    SPIP 2.1.26 SVN + GIS2 SVN aussi.
    Donc, avec FF, il n’est plus possible de rajouter un point en le cherchant à partir de son adresse.

    Ça marche encore avec Chrome, Opera et IE.

    • Fausse alerte. Le bug n’est plus présent sous FireFox.

      C’est ça d’attendre avant de rapporter un bug : des fois, il est corrigé dans l’intervalle.

    Répondre à ce message

  • 1

    Bonjour,

    Depius quelques jours, le géocodage ne semble plus forctionner (GIS2). Pouvez-vous me dire si ce problème est susceptible d’être résolu prochainement.

    Répondre à ce message

  • 2

    Bonjour
    Je ne parviens pas à faire prendre en compte quelques pâramètres du modèle, comme no_control, etc., alors que autocenterandzoom=oui fonctionne.
    Mon appel est le suivant :

    [(#INCLURE{fond=modeles/carte_gis,objets=articlesrubrique,id_rubrique=#ID_RUBRIQUE,id_article=#ID_ARTICLE,lang=#ENV{lang},type=hybride,autocenterandzoom=oui,no_control=oui})]

    Merci de m’éclairer

    • Bonsoir

      Essaie ainsi

      [(#INCLURE{fond=modeles/carte_gis,
      objets=articlesrubrique,
      id_rubrique=#ID_RUBRIQUE,
      id_article=#ID_ARTICLE,
      lang=#ENV{lang},
      type=hybride,
      autocenterandzoom=oui,
      no_control=oui})]

      Je sais que j’ai du faire comme cela pour que tout soit pris en compte.

    • Merci, mais ça ne change rien pour moi. Pour l’instant, en tout cas.

    Répondre à ce message

  • 3

    Bonjour
    (désolé pour le post précédent mal placé)
    Je bute sur un problème d’affichage que je ne comprends pas. Dans les 2 exemples ci-dessous, le squelette, l’appel de Gis, etc., sont les mêmes. Et pourtant,
    http://www.guidemanche.com/spip.php?rubrique4&lang=fr m’affiche bien la carte.
    alors que
    http://www.guidemanche.com/spip.php?rubrique5&lang=fr ne me l’affiche pas.
    Je ne vois pas ce qui cloche.
    Aucune des deux rubriques n’a de point référencé, les 2 sont semblables ?
    Une idée ?

    PS : C’est quand même pas mal, ce GIS. Avec un bon suivi des questions. Bravo.

    Répondre à ce message

  • 3

    Bonjour
    J’ai réussi à placer un lien cliquable vers un article, mais du coup la balise title s’affiche 2 fois lors de l’ouverture du marker.

    <BOUCLE_art1(ARTICLES){id_article ?}{branche ?}{id_secteur ?}{id_mot ?}{0, #ENV{limit}}{par titre}{","}>
    {"type": "Feature",
    "geometry": {"type": "Point", "coordinates": [[(#LONGITUDE|scannav)], [(#LATITUDE|scannav)]]},
    "id":"#ID_ARTICLE",[(#SET{titre,#TITRE* [- (#CHAPO)]})]"title":[(#GET{titre}|json_encode)],
    [(#SET{titre2,<a href="#URL_ARTICLE">#TITRE* [- (#CHAPO)]</a>})]"description":[(#GET{titre2}|json_encode)]
    }
    </BOUCLE_art1>

    Je ne vois pas comment éviter cela.

    Par ailleurs, j’aimerais afficher une image visible à « l’ouverture » du marker.
    J’ai essayé en ajoutant ces lignes, mais rien...

    [(#SET{port,#URL_SITE_SPIP/googleimg/#ID_ARTICLE.jpg|image_passe_partout{50,50}|image_recadre{50,50}})]
    "icon": (#GET{port}|extraire_attribut{src}|json_encode)

    Comment faire ?

    Merci

    Répondre à ce message

  • Bonjour ;)
    Je suis allé voir le site www.geodiversite.net/spip.php?page=carte#. Carte superbe.
    J’aimerais bien savoir, si ce n’est pas trop compliqué,
    -  comment avoir la carte Bing comme fond de carte (je ne l’ai pas dans
    les choix Gis 2/3)
    -  comment faire pour que le marker s’agrandisse avec photo
    Merci

    Répondre à ce message

  • 10

    Bonjour à tous,

    merci pour ce plug-in. Cependant j’ai quelques soucis pour son utilisation, et aurais besoin de votre aide sur les points suivants (pour info, j’utilise la version 2.1.12 de spip, en utilisant l’API v3 de googleMaps intégrée à GIS2) :

    1.géocodage / base de données :
    j’aimerais avoir un point géolocalisé à partir d’une adresse inscrite en base de données, et donc utiliser les fonctions de géocodage de GIS2 afin d’affecter automatiquement des coordonnées à mon point. Une idée des fichiers que je dois modifier ?

    2.modification de l’info-bulle :
    j’ai modifié le fichier json/gis_articles.html afin d’afficher un descriptif différent, grâce à cette ligne :

    « description » :(#TEXTE[(#SETlogo_doc,’’)]

    Maintenant, j’aimerais faire en sorte que mon titre soit un lien vers mon article. J’arrive à afficher l’url de l’article correspondant, mais je n’arrive pas à le transformer en lien du style titre_de_mon_article

    Quelqu’un aurait-il une solution à pour m’aider ? Cela fait plusieurs jours que je bute devant ces petits problèmes, m’emp$êchant d’avancer dans le développement de mon site Web.
    Merci d’avance à la communauté !

    • Salut,

      1) Tu peux faire ça en te bidouillant un script basé sur l’exemple fourni dans la doc de l’api :

      https://developers.google.com/maps/articles/phpsqlgeocode

      2) Je ne comprends pas très bien le problème pour ce point. Le problème de coller un lien sur le titre de la bulle, est que le code source du lien sera affiché dans l’infobulle affichée au survol du marker, résultat pas très classe.

      Je te conseille d’attendre que je termine la doc de la prochaine version de GIS, qui simplifiera tout ça ;)

      ++

    • Pierre-Philippe Fady

      Bonjour,

      j’ai eu la même problématique que mhf concernant le geocodage à partir de la base.
      Résolue en suivant le lien de b_b. merci !
      Il serait peut-être interréssant d’intégrer cette fonctionnalité en tâche cron dans le plugin gis ?

    • Salut, c’est une bonne idée, mais je pense que cette fonctionnalité pourrait être distribué dans un plugin complémentaire à GIS au lieu de l’intégrer directement. Si tu es motivé pour le faire n’hésite pas, cela serait une fonctionnalité intéressante pour certaines personnes.

      ++

    • le lien est à présent

      https://developers.google.com/maps/documentation/geocoding/index

      et l’exemple est

      http://maps.googleapis.com/maps/api/geocode/json?address=1600+Amphitheatre+Parkway,+Mountain+View,+CA&sensor=true

      googggle restreint les accès à son serveur pour rechercher des adresses (environ 2000 par jour par IP)

      Et pour b_b il faudrait tester le geocoder de mapquest, bien d’accord !

    • Et l’adresse de l’API de mapquest pour geocoder est http://open.mapquestapi.com/geocoding/
      (je note : utiliser open même license que osm > Open Street Map)

    • Bonjour

      Je cherche a savoir si ce projet à vu le jour ? un projet de plugins a été commencer ou pas finalement ?

    • Pierre-Philippe

      pour ma part, j’ai réglé le problème en faisant une page PHP que j’appelle de temps en temps pour mettre à jour.

      <?php
      //ce serait mieux de faire ça avec un cron...
      // se connecter à la BDD
      $connection = mysql_connect("localhost", "login", "motdepasse");
      if (!$connection) {
        die("Not connected : $connection " . mysql_error());
      }
      
      // choisir la base
      $db_selected = mysql_select_db("mabase", $connection);
      if (!$db_selected) {
        die("Can\'t use db : " . mysql_error());
      }
      
      // on cherche les enregistrements sans coordonnees
      $query = "SELECT * FROM spip_gis WHERE lat is NULL";
      $result = mysql_query($query);
      if (!$result) {
        die("Invalid query: " . mysql_error());
      }
      
      // initialisation de la vitesse de geolocalisation
      $delay = 0;
      
      // geocodage des adresses
      while ($row = @mysql_fetch_assoc($result)) {
        $geocode_pending = true;
      
        while ($geocode_pending) {
          $address = $row["addresse"]." ".$row["code_postal"]." ".$row["ville"];
          $id = $row["id_gis"];
              
          $crds = getXmlCoordsFromAdress($address);
          
          if (strcmp($crds['status'], "OK") == 0) {
            // successful geocode
            $geocode_pending = false;
            $lat = $crds['lat'];
            $lng = $crds['lon'];
      
            $query = sprintf("UPDATE spip_gis " .
                   " SET lat = '%s', lon = '%s' " .
                   " WHERE id_gis = %s LIMIT 1;",
                   mysql_real_escape_string($lat),
                   mysql_real_escape_string($lng),
                   mysql_real_escape_string($id));
            $update_result = mysql_query($query);
      
            if (!$update_result) {
              die("Invalid query: " . mysql_error());
            }
          } else if (strcmp($crds['status'], "OVER_QUERY_LIMIT") == 0) {
            // sent geocodes too fast
            $delay += 100000;
          } else {
            // failure to geocode
            $geocode_pending = false;
            echo "Address " . $address . " failed to geocoded. ";
            echo "Received status " . $crds['status'] . "<br />";
          }
          usleep($delay);
        }
      }
      
      function getXmlCoordsFromAdress($address){
          $coords=array();
          $base_url="http://maps.googleapis.com/maps/api/geocode/xml?";
          
          // ajouter &region=FR si ambiguité 
          $request_url = $base_url . "address=" . urlencode($address).'&sensor=false&region=FR';
          
          $xml = simplexml_load_file($request_url) or die("url not loading");
          //print_r($xml);
          $coords['lat']=$coords['lon']='';
          $coords['status'] = $xml->status ;
          if($coords['status']=='OK'){
               $coords['lat'] = $xml->result->geometry->location->lat ;
               $coords['lon'] = $xml->result->geometry->location->lng ;
          }
          return $coords;
      }
      
      ?>
    • Bonjour

      Merci pour ton retour, mais tu upgrade gis qui logiquement à les points à jours ...
      Je vais regarder pour le porter sur mets objets perso.

    • Bonjour
      J’appelle la carte ainsi :

      [(#INCLURE{fond=modeles/carte_gis,objets=articlesrubrique,id_rubrique=#ID_RUBRIQUE,id_article=#ID_ARTICLE,autocenterandzoom=oui})]

      ce qui envoie vers :

      <BOUCLE_art1(ARTICLES){id_article ?}{branche ?}{id_mot ?}{0, #ENV{limit}}{par titre}{","}>
      {"type": "satellite",
      "geometry": {"type": "Point", "coordinates": [[(#LONGITUDE|scannav)], [(#LATITUDE|scannav)]]},
      "id":"#ID_ARTICLE",
      "title":[(#TITRE*|supprimer_numero|json_encode)],
      "description":[(#DESCRIPTIF|json_encode)][(#SET{logo_doc,''})]
      [(#LOGO_ARTICLE|oui)
      [(#SET{logo_doc,#LOGO_ARTICLE|image_passe_partout{32,32}|image_recadre{32,32}})]]
      [(#GET{logo_doc}|oui)
      #SET{icon_w,#GET{logo_doc}|extraire_attribut{src}|largeur}
      #SET{icon_h,#GET{logo_doc}|extraire_attribut{src}|hauteur}
      #SET{icon_anchorPoint,''}
      [,"icon": (#GET{logo_doc}|extraire_attribut{src}|url_absolue|json_encode)],
      "icon_size": [(#VAL{91}|chr)]#GET{icon_w},#GET{icon_h}[(#VAL{93}|chr)],
      "icon_anchor": [(#VAL{91}|chr)][(#GET{icon_w}|div{2})],[(#GET{icon_h})][(#VAL{93}|chr)]
      ]}
      </BOUCLE_art1>

      J’obtiens une carte en mode Carte.
      Je voudrais :
      -  passer en mode hybride
      -  que le TITRE affiché dans le marker soit cliquable pour renvoyer sur l’article
      -  enfin, modifier le marker en fonction d’un mot clé

      Et je nage....
      Merci

    • Salut, tu aurais pu ouvrir un fil spécifique à ton problème ;)

      1) le type de carte est à passer en paramètre de l’inclure, donc type=hybride
      2) pour le lien sur le titre, le sujet a déjà été abordé plusieurs fois dans ce forum, cela se passe du côté de l’attribut title de ton json
      3) pour la modification du marker en fonction d’un mot clé, le sujet a je crois aussi été abordé dans ce forum, sinon regarde par ici http://contrib.spip.net/Astuces-GIS

      ++

    Répondre à ce message

  • spipheure

    Bonjour

    J’utilise GIS en version 2.4.10 pour SPIP 2.1

    J’aimerai savoir comment modifier la taille des info-bulles apparaissant au clic sur les marqueurs.

    Merci

    Répondre à ce message

  • 5
    Christian Julia

    Bonjour,

    Je voudrais mettre plusieurs cartes dans un article avec à chaque fois un point différent. Je voudrais remplacer dans mon article http://www.christianjuliablog.fr/spip.php?article35 les intégrations de cartes Google Maps par des cartes Gis2 plus maîtrisées. Cette question a été abordée plusieurs fois dans le forum, mais je n’ai pas trouvé la solution. Par exemple, si j’écris ceci :

    <carte_gis|zoom=7|id_article=5|objets=articles|autocenterandzoom=oui|width=100%|height=400px>
    <carte_gis10|id_carte_gis=3|zoom=7|autocenterandzoom=oui|width=100%|height=400px>

    cela me donne deux fois la même carte avec tous les points liés à l’article. L’identification d’un point ne semble pas être prise en compte. Peut-être l’ai-je mal écrite ?

    D’avance, merci pour votre aide.

    Christian Julia.

    • Christian Julia

      Je me réponds à moi-même : le point doit être identifié par id_gis et non par id_carte_gis comme indiqué dans le tableau des paramètres.

    • Pourtant la doc indique bien :

      id unique de la carte (à définir si plusieurs cartes sont affichées sur une même page)

      Peut-être que tu as une idée pour une autre formulation si celle-ci est trompeuse ?

    • Christian Julia

      Bonjour,

      Merci de ta réponse. Non, la formulation n’est pas trompeuse, mais il y a écrit en face à gauche « id_carte_gis » et non « id_gis ». Peut-être donner un exemple. En tout cas bravo pour ce plugin.

      Et bonnes fêtes des mères (vous êtes des mères pour nous).

      Cordialement,

      Christian Julia.

    • Pour clarifier, id_carte_gis est un paramètre à passer au modèle pour différencier deux cartes quand on les insère dans la même page. Ce paramètre (technique) n’est pas là pour spécifier ce qu’on souhaite afficher.

      Et bonnes fêtes des mères (vous êtes des mères pour nous).

      Je ne suis ni maman, ni papa, mais ça me touche quand même :)

    • Christian Julia

      Moi non plus je ne suis ni maman ni papa, mais je suis une mère pour beaucoup de gens (c’est eux qui le disent !).

      En tout cas, si, dans un article l’on écrit cela :
      <carte_gis3|id_gis=2|width=100%|height=400px>
      On affiche bien le point n°2 - et seulement celui-là - sur la carte n°3.

      Voir ici :
      http://www.puissantmarc.com/spip.php?article5

      Merci encore.

    Répondre à ce message

  • 1

    bonjour,
    et merci pour ce plugin dont j’aurai du mal à me passer.

    J’ai le problème suivant :
    Lors du téléversement d’une image dans un article, il faut actualiser la page pour que la vignette de l’image apparaisse (avec la fenêtre de mise à jour du document). Il y a des posts qui relatent des symptômes similaires dont la cause était le script « prive/javascript/async_upload.js » mais ici ce n’est pas le cas (le script en question est à jour), j’ai fini par trouver la cause : c’est le plugin GIS 2.4.9. Dès que celui-ci est désactivé tout rentre dans l’ordre... Une idée ?
    Cela se produit sur différents sites qui sont sur des machines différentes.
    En revanche, le même site installé sur mon Mac Os X (PHP Version 5.2.13 - MySql 5.1.44 ) ne présente pas ce problème

    Merci de votre aide...

    config : SPIP 2.1.26
    plugins : Acces Restreint 3.0.2 , Afficher Objets 1.2.3 , Agenda 2.1.8, Autorité 0.9.7, cfg 1.15.2, Crayons 1.9.1, GIS 2.4.9, Google analytics 0.3.1, Le Couteau Suisse 1.8.26.00, Lecteur vidéo flv 1.1, Saisies pour formulaires 1.38.3, SPIP Bonux 2.3.0, Thickbox v2 0.3
    Serveur Linux : PHP Version 5.2.9 - MySql 5.0.88

    • Pb résolu dans les versions GIS.2.4.10 et GIS.3.4.4 du plugin.
      Merci b_b

    Répondre à ce message

  • 9

    hello,un petit bug à signaler sur GIS 3.4.3 et SPIP 3.0.13
    L’activation du plugin GIS semble pertuber le plugin-dis Medias au niveau de la vignette personnalisée. Lorsqu’on édite un document pour modifier ou ajouter une vignette, l’upload de vignette échoue (formulaire illustrer_document).

    Je cherche l’erreur ...

    • l’erreur vient gis_pipelines.php, function gis_post_edition($flux){
      si on supprime le bloc qui gere l’ajout de document tout rentre dans l’ordre

      if (($flux['args']['operation'] == 'ajouter_document') 
      		AND ($document = sql_fetsel("*","spip_documents","id_document=".intval($flux['args']['id_objet'])))
      	) {
          
             /* ici un soucis  */
         
      }
    • Salut erational, quelle est l’erreur rencontrée ? Cela provient peut-être de l’absence des fonctions exifs dans la version de PHP utilisée, pourtant on teste bien leur présence avant de les utiliser, cf :

      http://zone.spip.org/trac/spip-zone/browser/_plugins_/gis/branches/v3/gis_pipelines.php#L93

      ++

    • Bonjour,
      Ce pb concerne également spip 2.1.26 et GIS 2.4.9 sur un serveur où les fonctions exif ne sont effectivement pas installées.
      Ce serait donc le test de présence qui ne fonctionne pas ?

      PS : Au delà du plugin Media, cela affecte le chargement des vignettes dans la mise à jour d’article et cela fait planter l’upload d’un dossier d’images zippé

    • Il me faut l’erreur générée par php pour corriger le bug. Voici la marche à suivre pour afficher les erreurs php :

      http://www.spip.net/fr_article4453.html?var_recherche=debuggage#infos_plus

      ++

    • Il n’y a pas d’erreur php, voilà ce que j’ai dans prive_spip.log après la manip :

      May 12 17:21:20 46.18.229.113 (pid 29494) spip_register_globals(1)
      May 12 17:21:20 46.18.229.113 (pid 29494) ajoute session ../tmp/sessions/1_ca0785c3ab7947b1c26db91aa165c5f2.php cookie 864000
      May 12 17:21:20 46.18.229.113 (pid 29494) ajout du document /tmp/phpXytU3P IMG_0041.jpg (M ’document’ T ’article’ L ’1348’ D ’4626’)

    • Quelle version de PHP utilises-tu ?

      Peux-tu tester en modifiant la ligne 93 de gis_pipelines, remplacer :

      if ($exifs =  @exif_read_data($fichier,'GPS')) {

      par :

      if (function_exists('exif_read_data') AND $exifs =  @exif_read_data($fichier,'GPS')) {

      ++

    • Version PHP utilisée 5.2.9
      Avec la modif suggérée ça marche :-)
      merci bcp.

    • Ps : C’était la ligne 123 de gis_pipelines.php et non 93 ....

    • Arf, en fait ce bug est corrigé dans la version dans GIS 4 depuis 9 mois, voici qui reporte le correctif dans les branches 2 et 3 :

      http://zone.spip.org/trac/spip-zone/changeset/82329

      ++

    Répondre à ce message

  • 4

    bonjour,

    désolé si la question a déja été traitée, mais je n’ai pas trouvé sur les premières pages du forum...

    j’utilise gis depuis qq années, et auparavant, l’infobulle contenait l’intro de l ’article lié... ce qu’elle ne fait plus, elle contient le titre du point GIS s’il existe, et rien sinon...

    est-ce que j’ai raté qqchose ?

    merci d’avance
    pam
    http://pam.venissieux.org

    • Salut,

      Le contenu des infobulles est généré par les squelettes situées dans le répertoires json/ du plugin. Exemple pour les articles :

      http://zone.spip.org/trac/spip-zone/browser/_plugins_/gis/branches/v3/json/gis_articles.html

      Tu peux personnaliser ces squelettes en les copiant dans squelettes/jon.

      Quelle version de GIS et SPIP utilises-tu ? Si tu es sous SPIP 3, je te conseille d’utiliser GIS4 et la lecture de ce tuto :

      http://contrib.spip.net/Gis-4-Surcharger-les-infobulles

      ++

    • merci de la réponse

      je suis sur SPIP 2.1.19 et gis 2.4.5
      j’ai bien les squelettes dans json/gis_... non modifié, rien dans squelettes/json...
      mais je ne vois toujours que les titres des objets s’ils existent...

      j’ai essayé d’ajouter dans l’appel de la carte un paramètre « objets » de cette manière

      <carte_gis1|zoom=15|lat=45.698342|lon=4.885041
      |type=hybride|control_zoom=small|overview=oui|objets=articles> 

      mais ca ne change rien...

      je suppose que l’appel du squelette est automatique selon le contexte objet ?

      donc, je ne vois pas pourquoi ca ne donne rien de plus...

      merci d’avance d’une piste
      pam

    • Vu que tu souhaites personnaliser le contenu des infobulles pour les articles, il faut que tu copies le squelette suivant dans squelettes/json :

      http://zone.spip.org/trac/spip-zone/browser/_plugins_/gis/branches/v2/json/gis_articles.html

      Ensuite il faut modifier ton squelette perso pour changer le titre affiché (par exemple), remplacer :

      "title":[(#TITRE_GIS*|sinon{#TITRE*}|supprimer_numero|json_encode)],

      par :

      "title":[(#TITRE*|supprimer_numero|json_encode)],

      Affichera le titre de l’article au lieu du titre du point.

      ++

    • merci

      ce que je ne comprends pas, c’est qu’avant, j’avais une infobulle avec le lien vers l’article...?

    Répondre à ce message

  • 1

    bonjour à tous,

    Tout d’abord, merci pour ce plugin très intéressant.
    J’ai rajouté la possibilité de créer des points à partir d’un tableau fourni à l’inclure.
    Tout marche bien du moment qu’il n’y a pas plus de 14 points par carte. Malheureusement pour moi, j’en ai beaucoup plus parfois.

    Quelqu’un a-il une idée sur la cause de ce problème ?

    Cordialement,

    aro.

    • bonjour à tous,

      je répond à mon post. Le problème venait d’une restriction du module suhosin de php.
      Pb résolu.

      Cdt,

      aro.

    Répondre à ce message

  • 2

    Bonjour,

    J’utilise SPIP 3.0.5 et GIS 3.3.11.
    Avec GIS, J’aimerais savoir s’il est possible de faire passer un paramètre dans un inclure pour faire la chose suivante :

    [(#INCLURE{fond=modeles/carte_gis, id_rubrique=18, objets=articles{age < 300}, autocenterandzoom=oui, autofocus_marker=oui})]

    Bien évidemment, ce « hack » ne fonctionne pas.
    Je voudrais sélectionner uniquement les articles dont l’âge est inférieur à 300 jours. Est-ce possible ?
    Si non, existe-t-il une solution avec GIS qui éviterait d’effacer tous ces vieux articles ?

    Merci de votre réponse ! :)

    • Pour cela il suffit de te faire un fichier squelettes/json/gis_articles_age.html dans lequel ton critère age sera présent sur la boucle. Ensuite tu pourras utiliser ce squelette json en passant le paramètre objets=articles_age à ton appel du modèle.

      Et voilà :)

    • Bonjour,

      Peux-tu donner un exemple de contenu de ce fichier gis_articles_age.html ? Cela m’aiderait, car pour le moment cela efface tous mes points de la carte ;-)

      Merci !

    Répondre à ce message

  • 1

    Bonjour, une simple question, est ce normal que ce plugin génère 2 javascript qui ne sont pas pris en compte dans le compactage proposé par spip ?

    Dans mon head j’ai :

    <script type='text/javascript' src='local/cache-js/bc35c01506ee5d1654c111d1700d3780.js'></script>
    <!-- insert_head -->
    
    <script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false&amp;language=fr"></script>
    
    <script id="mxn_script" type="text/javascript" src="http://www.monsite.com/lib/mxn-gis-2.2.2/mxn.js?(googlev3,[geocoder])"></script>
    • oui c’est normal car il s’agit de scripts externes à spip : google map (sur leur serveur) et la mapabstraction (en tant que librairie externe)

    Répondre à ce message

  • spipheure

    Bonjour

    Je souhaite implanter GIS sur un SPIP 2.1.
    Au niveau fonctionnel je dois afficher une trentaine de points et l’idée serait de proposer au visiteur de taper via un champ sa ville de recherche puis d’afficher les points les plus proches de sa ville.
    Je ne vois pas du tout comment faire, merci pour votre aide.

    Répondre à ce message

  • Bonjour,

    J’ai installé votre plugin sur deux SPIP.
    L’un est un SPIP 3.0.4 et GIS 3.3.11, l’autre un SPIP 3.0.5 et GIS 3.3.11
    Le deuxième est un clone du premier. Ils sont donc identiques mis à part pour quelques articles.
    J’ai remarqué que pour le deuxième SPIP (sous 3.0.5), il semble y avoir un problème avec le paramètre « autocenterandzoom=oui » qui semble ne pas être correctement pris en compte. En effet, un zoom au maximum est appliqué, et ce en dépit du paramètre « zoom=4 ».

    D’où cela peut-il venir ?

    Merci de votre réponse.

    Répondre à ce message

  • 1

    Bonjour, petit souci avec le plugin ! En effet, il y a du html dans les bulles d’aides des marqueurs :/ Comment régler cela ?? URL : http://www.perigueux-habitat.fr/-Les-antennes-de-quartier-.html
    En vous remerciant.

    • Salut,

      Comme je le disais dans un message précédent :

      Le problème de coller un lien sur le titre de la bulle, est que le code source du lien sera affiché dans l’infobulle affichée au survol du marker, résultat pas très classe.

      http://contrib.spip.net/GIS-2-GIS-3?debut_comments-list=-1#forum459967

      À ce jour, il n’y a pas de solution à ce problème avec GIS 2 ou 3, par contre GIS 4 ne comporte plus ce bug. J’avais proposé un patch pour corriger la librairie Mapstraction sur ce point, mais la nouvelle version tarde à devenir publique (wait and see de ce côté). Perso je focalise mon temps sur la v4 de GIS qui utilise maintenant la librairie Leaflet et ne fonctionne que sous SPIP 3.x.

      ++

    Répondre à ce message

  • 7
    sebbesac

    Hello !

    Depuis quelques jours, mes contrôles de déplacement sur la carte ont disparu !! En effet, sur le Front comme sur le Backoffice, il n’y a plus l’affichage du pan (haut, bas, gauche et droite) et de la slidebar (+ -), j’utilise l’API 3 de GoogleMap pour l’affichage de mes cartes.
    Je suis en SPIP 2.1.23, GIS 2.4.7.

    Est-ce que quelques choses n’aurait pas changé au niveau de l’API qui n’est plus lisible sur GIS ?

    Quelqu’un aurait- il constaté la même chose sur son site ?
    Merci à vous ;)

    PS : Je précise que mon code n’a pas changé et que la mise à jour de SPIP et de GIS n’y est probablement pour rien car j’ai constaté ceci également en 2.1.19 et GIS 2.4.5 avant de faire la mise à jour

    Répondre à ce message

  • 8

    Bonjour,
    J’utilise ce plugin mais il a le malheur de faire apparaître une carte dans toutes mes pages, ce que je ne lui demande pas ! Et je en vois pas comment dévalider cela.
    Merci d’avance !

    • Salut,

      il a le malheur de faire apparaître une carte dans toutes mes pages

      Toutes les pages de l’espace public ou de l’espace privé ?

    • Merci pour le lien, c’est bien pratique pour aider :)

      Alors, ton squelette fait exactement ce que tu lui demande de faire avec ce code :

      [(#REM) Cartographie]
      [(#MODELE{carte_gis, zoom=15, type=satellite, control_zoom=large})]

      http://2013.uea-assomption.cef.fr/sites/2013.uea-assomption.cef.fr/squelettes/article.html

      Il faudrait tout simplement conditionner cet inclure en fonction de la présence d’un point attaché à l’article avec le code suivant :

      <BOUCLE_unpoint(GIS){id_article}{0,1}>
      Ici le code de la carte
      </BOUCLE_unpoint>

      ++

    • Oups ! Ca m’avait échappé ! Ca a du être introduit par GIS2 (le traître ;-) )
      Y a-t-il une option que ne ferait apparaître la carte que si il y a un point attaché ? (Je vais quand même tester le code que tu m’as donné).
      Merci !
      (à suivre...)

    • Ça marche ! Merci (bis) !

    • Pas de chance ! Avec le même code (sauf erreur de ma part) ça ne marche pas sur un autre site :
      http://fonds-saintyves.fr/Paroisses-Saint-Yves
      Théoriquement on devrait là afficher une carte centrée sur la cathédrale de Tréguier... :-(

    • Ta page comporte une erreur javascript, donc pas de carte affichée. L’erreur en question pointe sur ce code :

      map1.setCenterAndZoom(new mxn.LatLonPoint(,),15);

      Tu as tout simplement oublié de configuré les coordonnées par défaut dans la page de config du plugin...

    • Aïe aïe... Oui, merci beaucoup !

    Répondre à ce message

  • 1
    JérômeD

    Bonjour,

    J’utilise ce pplugin très bien fini sur plusieurs site. Aujourd’hui j’ai besoin de connaître si le plugin permet ou permettrait de mettre en place des clusters de marckers (des regroupements de marqueurs).
    Autrement dit, je vais avoir une carte avec de très nombreux points et je souhaiterais que dans le cas de l’affichage de la carte avec zoom en plan large, je puisse voir par un marqueur portant (par exemple) un nombre indiquant combien de marqueur il y a derrière si on zoom.

    Pour imager ce que je veux dire, voilà un site qui l’explique : http://www.touraineverte.com/gmap3/exemples/regroupement-marqueurs-cluster.html
    Mais est ce que le plugin GIS3 permet de le faire.

    Merci pour vos réponses

    • Salut, oui le clustering de markers est possible, mais uniquement avec la version 4 de GIS pour SPIP 3. Tu peux aussi le faire avec GIS 3 sous SPIP 2, mais pour cela il faut mettre les main dans le code...

      Exemple sur Géodiversité qui tourne encore sous SPIP 2 avec GIS 2 (utilisant l’API google) :

      http://www.geodiversite.net/spip.php?page=carte

      Dans cette page la carte utilise bien les scripts de GIS, mais tout le code qui génère la carte est fait « à la main ».

      ++

    Répondre à ce message

  • 1

    Salut Brunot,

    J’obtiens un curieux bug en local d’un SPIP 2.1.19 [16796] avec un GIS 2.4.5 et une lib/
    mxn-gis-2.2.2. Les cartes quel-qu’elles soient, s’affichent correctement dans l’exec config. Pourtant si je vais sur l’exec article, je n’ai qu’une page blanche avec trois liens :

    Points liés | Rechercher un point | Lier un nouveau point

    Tout les formulaires ont disparu. Pas moyen d’éditer l’article. J’ai purgé, nettoyé les bases, désinstallé et réinstallé... Une idée de ce que c’est ?

    Merci de tes lumières.

    • Salut StephanD (<= moi aussi je peut rajouter des lettres à la fin des prénoms ^^)

      Jamais observé ce bug, et en ce moment j’ai plutôt tendance à recommander l’usage de GIS4 pour SPIP 3 :p

      Tu devrais activer l’affichage des erreurs PHP depuis ton fichier d’options pour avoir un peu plus d’info à me filer => http://www.spip.net/fr_article4453.html

      error_reporting(E_ALL^E_NOTICE);
      ini_set ("display_errors", "On");

      Sinon, passe en causer sur IRC la semaine prochaine...

    Répondre à ce message

  • François Bernier

    Bonjour,

    Est-ce possible de faire avec ce plugin un moteur de recherche public pour donner comme résultat une carte présentant les X marqueurs à proximité de l’adresse saisie ?

    Merci de m’orienter dans mes recherches !

    (Désolé de cette question de néophyte... je ne suis pas développeur et je n’ai rien trouvé comme solution/indice à mon besoin sur cette page ou les différents forums.)

    Répondre à ce message

  • 1

    Hello !

    Je vois que sur le plugin on trouve dans le dossier /images, un sous-dossier /openlayers contenant une thème de boutons « dark ».
    Est-il possible de l’activer pour l’utiliser avec le fond de carte OpenLayers ?

    Merci pour votre aide
    sebbesac

    • Hello !

      En relisant l’article du plugin, j’ai compris qu’il fallait bidouillé sur la librairie Mapstraction. J’ai donc été sur le fichier « lib/mxn-gis-2.2.2/mxn.openlayers.core.js » et j’ai inséré vers la ligne 33

      OpenLayers.ImgPath = "./plugins/gis2/images/openlayers/dark/";

      Eh hop le tour est joué, mes boutons sont maintenant noir !
      Je vais en profiter pour faire 2-3 adaptations notamment au niveau de l’infobulle qui se trouve autour de la ligne 460 (new OpenLayers.Popup)

      A bientôt
      sebbesac

    Répondre à ce message

  • 2
    Julien VILLALARD

    Bonjour,

    BRAVO pour ce plugin que j’utilise très souvent.

    Je viens de découvrir une nouvelle fonction, le formulaire pour l’espace publique pour changer le point : #FORMULAIRE_EDITER_GIS

    Mais peut-on cliquer sur la carte directement pour modifier le point ? Cela ne semble pas être le cas. Je ne peux pas donner une URL car c’est en extranet.

    Une astuce pour offrir une carte cliquable pour sélectionner un point et le lier à l’article ?

    Merci de votre aide !
    Julien

    • Julien VILLALARD

      Je complète :

      -  si l’article a déjà un point lié, alors on peut changer les coordonnées GPS. Mais si l’article n’est lié à aucun point, alors cela ne marche pas, aucun nouveau point n’est créé. Le script est celui de l’exemple

      BOUCLE_unpoint(GIS)id_article=#ENVid_article0,1>
      #SETid_gis,#ID_GIS
      /BOUCLE_unpoint>
      #SETid_gis,nouveau
      //B_unpoint>
      #FORMULAIRE_EDITER_GIS#GETid_gis,’article’,#ENVid_article,spip.php ?page=gis_reponse&id_article=#ENVid_article

      -  de plus le lien RECHERCHE (une adresse ne marche pas dans ce formulaire.

      -  enfin, pour avoir la fonction de création du point au clique sur la carte, est-ce que cela est du au type de carte (CloudMade Web) ? Cela serait-il la même chose avec Google Map ? serait-il possible d’ajouter un script en plus de la noisette ?

      Merci de votre aide

    • Julien VILLALARD

      Complément :

      -  tout marche bien avec la carto google, mais pas avec CloudMade Web.

      -  autre problème : avec #FORMULAIRE_EDITER_GIS, si l’article n’a pas déjà un point, il me semble qu’aucun point n’est alors ajouté.

    Répondre à ce message

  • J’utilise le formulaire de localisation d’un événement de la sorte :

    [(#INCLURE{fond=prive/inclure/gis_objet_formulaires, objet=evenement, id_objet=#ID_EVENEMENT, bloc_gis=rechercher,ajax})]

    l’idée du paramètre bloc_gis=rechercher est d’inciter à chercher dans les points existant plutot que d’en créer un nouveau.

    Quand un point est choisi, le formulaire est raffraichi, mais reste sur le mode rechercher, alors qu’il faudrait qu’il soit cette fois en mode bloc_gis=lies.
    Comment faire varier le bloc qui s’affiche en fonction de la présence ou non d’un point lié ?

    Répondre à ce message

  • 1

    J’utilise GIS2 pour afficher un plan dans une Popup.

    La bulle qui s’affiche en cliquant sur la marqueur a des caractères bien trop grand.

    Comment spécifier une taille de caractère inférieure ?

    • l’extension firefug m’a permis de connaitre la classe CSS.

      J’ai créé une minifeuille de style ad-hoc appeleé depuis les squelette de ma popup.

    Répondre à ce message

  • 1

    Bonjour,
    dans des versions antérieures, il y avait des logos qu’on pouvait affecter aux articles par un mot-clé du groupe « marker_icon ».
    Aujourd’hui, on peut ajouter un logo aux points, mais l’’affichage de logo par mot-clé n’est plus fonctionnel, n’est-ce pas ? Ou bien n’ai-je pas bien suivi... ?
    MErci,
    Sylvain

    • Salut, oui cette utilisation du plugin n’est plus disponible par défaut car on peut maintenant lier les points à plusieurs objets et chaque point peut avoir un logo spécifique.

      Néanmoins, pour les nostalgiques, j’ai rédigé un début d’article orienté « astuces » qui ouvre la série en répondant à ta question :

      http://contrib.spip.net/Astuces-GIS#1

      À terme je publierai l’article en question dans la même rubrique que les articles de doc de GIS.

    Répondre à ce message

  • 1

    Bonjour,
    est-ce qu’il est possible de désactiver les formulaires gis associés aux rubriques et aux mots clés dans le back-office ?
    Merci pour votre réponse.

    • Salut, oui cela est réglable depuis la page de configuration du plugin pour GIS 3.

    Répondre à ce message

  • 1

    Hello,

    Je trouve que ce plugin est un des plus aboutis de la communauté SPIP, bravo pour sa réalisation et sa maintenance.

    Voici ma question . J’uilise le paramètre gis dans une boucle ARTICLES afin de pouvoir récupérer quelques infos liés à la localisation (le nom du lieu). Mais à ma grande surprise, je constate que s’il ya plusieurs articles liés au même lieu, il n’y a qu’un seul de ces articles qui est affiché. Quel est le problème dans ma boucle ? Dois-je ajouter des critères ?

    La boucle :

    <BOUCLE_artG(ARTICLES){gis}{id_rubrique}{par date}{pagination}>

    Merci d’avance pour votre aide

    • Salut, merci pour le message, ça fait plaisir ;)

      Pour faire ce que tu souhaites il faut prendre le « problème » dans l’autre sens, c’est à dire boucler d’abord sur les objets gis puis sur les articles. Tu devrais y arriver avec une jointure dans une boucle de ce type :

      <BOUCLE_gis(ARTICLES gis_liens gis) ></BOUCLE_gis>

      J’ai rédigé un article à ce sujet lors de la période où je développais le critère gis, cela devrait t’être utile :

      http://www.weblog.eliaz.fr/article117.html

      ++

    Répondre à ce message

  • 1

    it’s me or is not possible to read forum’s messages ?

    even when I’m connected to the site I can’t read anyone...

    Répondre à ce message

  • 6

    Bonjour,

    J’ai des sites qui utilisent GIS1. Sur la carte je fais apparaître différents marqueurs selon le mot clef attaché à l’article.

    Je fais des tests pour passer à GIS2 mais mes marqueurs n’apparaissent pas sur les fonds de carte dans l’espace public.

    A cause des mots clefs ?

    merci

    dd

    • Salut,

      GIS 1 affichait par défaut les articles sur les cartes. Mais comme GIS 2 permet d’attacher des points à tous les types d’objets, il faut maintenant préciser quel type d’objet tu veux afficher sur tes cartes. Par exemple, si avec GIS 1 tu affichais les articles de la rubrique 1 comme ceci :

      <carte_gis1|id_rubrique=1>

      Il faut ajouter compléter ton appel du modèle comme ça :

      <carte_gis1|id_rubrique=1|objets=articles>

      ++

    • merci,

      Maintenant j’ai bien un marqueur pour les cartes dans mes articles (par contre pour ça je dois aller revalider le positionnement GIS de chacun des articles) mais le marqueur est celui par défaut et pas celui du logo du mot clé.

      Et dans la bulle sur la carte il n’y a pas de lien vers l’article.

      merci
      dd

    • Graine de Jardins

      Bonjour,
      le contrôle des infos qui apparaissent dans l’info-bulle se fait dans les fichiers gis_xxx.html qui sont dans le dossier json du plugin. Il est possible de les modifier en les copiant dans un dossier /squelettes/json.

      Pour avoir un lien dans l’info-bulle je fais comme ça :

      <BOUCLE_gis(GIS){id_gis ?}{id_rubrique ?}{id_article ?}{id_breve ?}{id_document ?}{id_mot ?}{id_auteur ?}{id_syndic ?}{recherche ?}{0, #ENV{limit}}{","}>
      		{"type": "Feature",
      		"geometry": {"type": "Point", "coordinates": [#LON, #LAT]},
      		"id":"#ID_GIS",#SET{lien_art,<a href="#URL_ARTICLE">#TITRE</a>}
      		"title":[(#GET{lien_art}|json_encode)],

      Et ça marche !

    • Graine de Jardins

      Avec les accolades, c’est encore mieux

      {"type": "Feature",
      "geometry": {"type": "Point", "coordinates": [#LON, #LAT]},
      "id":"#ID_GIS",#SET{lien_art,<a href="#URL_ARTICLE">#TITRE</a>}
      "title":[(#GET{lien_art}|json_encode)],
    • Merci pour le coup de main.

      J’ai un site avec plus de 500 cartes donc je galère un peu.

      En revalidant à la main le positionnement GIS de chaque article j’arrive maintenant à voir le marqueur sur la carte mais ce n’est pas celui qui est défini comme logo du mot clé attaché à l’article (c’est celui par défaut qui s’affiche).

      Comment faire ?

      Merci
      dd

    • Bonjour,

      Graine de Jardins, j’essaie de faire la même chose que toi, mais en GIS4. Je n’y arive pas (cf forum460729).

      Peux-tu nous (re)préciser ton squelette json_articles stp ?
      Dans les échanges ci-dessus, je ne vois pas la différence entre avec et sans accolades dans les extraits que tu fournis.

      Es-tu passé en GIS4 ?

      D’avance merci.

    Répondre à ce message

  • Salut,

    J’aimerais utiliser le paramètre {gis distance...} par rapport au point du visiteur ou par rapport à une adresse donnée (renseignée directement par le visiteur par ex.)

    Est-ce possible ?

    Merci,
    Vincent

    Répondre à ce message

  • 5
    Christophe

    Bonjour,

    Merci pour ce plugin. Je cherche à afficher des événements sur une carte. J’arrive bien à tous les afficher ou n’en afficher qu’un seul pour un événement précis, mais je n’arrive pas à afficher uniquement les événements qui ne sont pas encore passés. Je ne peux pas mettre de lien car mon site est en local pour l’instant.
    Pourrais-je avoir un peu d’aide ? Merci par avance.

    Christophe

    • Salut, pour cela il faut :

      1) te faire un squelette json perso, squelettes/json/gis_mesevents.html par exemple, en y copiant le contenu du squelette fourni par gis/json/gis_evenements.html.
      2) passer le paramètre objets=mesevents à ta carte pour qu’elle utilise ton json perso
      3) puis dans ton json perso, ajouter les paramètres d’agenda nécessaires pour filtrer les résultats renvoyés par la boucle

      Reste un problème, la personne qui a ajouté la gestion des événements dans gis n’a pas ajouté la possibilité de passer des paramètres de date au modèle de la carte. Il faudrait qu’on définisse quelle liste de paramètres il manque dans ce modèle, en attendant tu peux surcharger le modèle de la carte en le copiant/modifiant dans ton dossier squelettes.

      ++

    • Christophe

      Et j’ai oublié de préciser que pour compliquer l’histoire, j’ai des événements qui se répètent...
      Merci

    • Christophe

      Merci b_b. Ca confirme ce que je craignais, j’avais rentré le paramètre age<0 dans la boucle (GIS) et ça me renvoyait une erreur.
      Merci pour l’astuce du squelette json, j’avais attaqué directement gis_evenements, au risque de voir tout effacé lors d’une mise à jour du plugin.
      ++

    • Yo b_b

      J’ajoute un modèle pour les membres d’asso (plugin associaspip) à jour de leur cotisation. J’ajoute cette boucle pour tester si ’lid auteur est « ok ».

      		<BOUCLE_auteurs(AUTEURS){gis}{id_article ?}{id_auteur ?}{recherche ?}{0, #ENV{limit}}{","}>
      				<BOUCLE_membres_asso(ASSO_MEMBRES){id_auteur ?}{statut_interne==ok}>

      Pourtant la carte ne me retourne rien. S’il te faut un lien je peux la mettre en ligne.
      @+

    • Re

      J’essaie aussi

      <BOUCLE_membres_asso(ASSO_MEMBRES){gis}{statut_interne==ok}{0, #ENV{limit}}{","}>

      Mais rien ne passe que ce soit en une seule boucle ou en deux. Une idée ? Merci.

    Répondre à ce message

  • 2

    Bonjour,

    Après avoir posté mon problème sur le forum spip, puis continuer de chercher, je crois que le problème vient du modèle carte_gis. Alors je passe sur ce fil !

    Pour les infos :

    Pour résumer : dans un squelette de rubrique, une boucle affiche la liste des articles qui y sont contenu. Le visiteur peut filtrer les articles affiché par mots-clés.
    La mise à jour de la liste après sélection du filtre se fait par ajax.
    Au dessus de la liste d’articles, une carte GIS2 qui affiche les points liées aux articles listés.

    Le problème : Les points ne sont pas filtrés par mots-clés après l’appel ajax.

    Le squelette de la rubrique contient un INCLURE pour ajax :
    <INCLURE{fond=liste_liens_articles}{ajax}{env} />

    Et dans « liste_liens_articles », un inclure pour la carte (actuellement, il est comme cela, mais j’ai essayé plusieurs façons, toujours le même résultat :-( ) :
    <INCLURE{fond=modeles/carte_gis, ajaxload0non, objets=articles, type=carte, localiser_visiteur = oui, zoom=7, control_zoom=small,env, id_mot}

    Et le lien ajax sur les mots-clés :
    <a class="ajax" href="[(#SELF|parametre_url{id_mot,#ID_MOT}|parametre_url{id_groupe,''})]" rel="tag" >#TITRE</a>

    Les points affichés sont toujours les mêmes. Par contre, après avoir sélectionné un mot, si l’on actualise la page du navigateur, les points sont filtrés.

    Pour vérifier que les paramètres soient bien passé dans l’inclure de la carte, j’en ai fait un deuxième sur un squelette bidon avec une boucle avec un critère gis et id_mot ? :

        <BOUCLE_gis(ARTICLES){gis}{id_mot ?}>
        #ID_GIS - #LAT - #LON - #ZOOM <br/>
        Titre de l'article : #TITRE <br />
        Descriptif de l'article : #DESCRIPTIF <br />
        Titre du point : #TITRE_GIS <br />
        Descriptif du point : #DESCRIPTIF_GIS <br />
        </BOUCLE_gis>

    La boucle est bien actualisée en fonction du mot-clé.
    J’en déduit qu’il y a un truc dans le modéle carte_gis, peut-être dans la partie qui fait appel par JSON au squelette par objet. Mais là, j’avoue que cela me dépasse !

    J’ai essayé par ajaxReload pour relancer le calcul de la div de la carte, mais nada.
    J’ai essayé le paramètre ajaxload=oui du modèle carte_gis, pas de différence.

    Il me reste votre aide !

    Merci.

    • Salut, ton problème semble venir du fait que le « trigger » sur l’événement ajax de SPIP est chargé plusieurs fois lors du rechargement d’un bloc ajax. Du coup, je vois bien 3 requêtes ajax pour charger les markers de la carte (et non une seule) lors du rechargement du bloc. Le problème est qu’une de ces trois requêtes ne comporte pas de paramètre id_mot, et donc ta carte affiche la complète.

      GET http://spip.grainedelotus.ch/spip.php?page=gis_json&objets=articles&id_rubrique=4&id_mot=6&limit=500
      GET http://spip.grainedelotus.ch/spip.php?page=gis_json&objets=articles&id_rubrique=4&limit=500
      GET http://spip.grainedelotus.ch/spip.php?page=gis_json&objets=articles&id_rubrique=4&id_mot=6&limit=500

      Il faut que tu trouves pourquoi une de ces requêtes ne comporte pas de paramètre id_mot et tout devrait rentrer dans l’ordre.

      ++

    • Salut,

      Le problème est résolu en passant le paramètre « ajaxload=non » dans l’inclure :
      <INCLURE{fond=modeles/carte_gis, objets=articles, type=carte, localiser_visiteur = oui, zoom=7, control_zoom=small, id_mot}{ajaxload=non} />

      Je pensais l’avoir fait, mais certainement pas correctement !

      Merci pour ton aide.

    Répondre à ce message

  • 2
    Christian Julia

    Bonjour,
    Je viens de découvrir ce plugin qui est vraiment intéressant. Je voudrais l’utiliser pour localiser les établissements d’un réseau. Je l’ai testé sur un site personnel de photos de voyages. Il fonctionne parfaitement : http://julia.christian.free.fr/spip.php?rubrique45.
    J’ai parcouru la documentation et ce forum et je ne trouve nulle part la manière d’afficher l’article en cliquant sur la « punaise » de son lieu. Je m’en tire en mettant un lien dans le champ descriptif de l’article, mais ce n’est pas terrible (exemple « Big Bangkok »).
    Je ne suis pas parvenu non plus à savoir quel squelette intervient pour l’affichage de la grande bulle blanche. J’ai changé DESCRIPTIF en CHAPO dans les modèles, dans les html de json, j’ai mis un gis_article.html dans un dossier json dans squelettes pour voir ce qui se passait. Rien n’a changé.
    Merci de m’éclairer et encore bravo pour ce plugin impressionnant.

    • Salut, pour faire ce que tu souhaites il faut mettre les mains dans le code et déclencher une redirection en javascript lors du clic sur un des markers de la carte. La doc de l’APi Mapstraction devrait t’être utile :

      http://mapstraction.com/mxn/build/2.0.18/docs/

      ++

    • Christian Julia

      Bonjour. Merci pour ta réponse. Je vais plonger dans les eaux profondes de Mapstraction. En attendant, je mets un lien vers l’article dans le descriptif du lieu, ce qui peut être utile si un même lieu concerne des articles différents.

    Répondre à ce message

  • Bernard

    Bonjour,

    Deux petits problèmes :

    1. La carte ne se centre pas sur le marker côté public.

    2. Je n’arrive plus à mettre de mp3 dans l’infobulle.

    C’est sans doute une mauvaise utilisation de ma part, mais si quelqu’un avait la gentillesse de m’expliquer ?

    Répondre à ce message

  • 1

    Bonjour, je travaille également sur la géolocalisation d’objets et pensais faire un plugin pour SPIP... avant de tomber sur votre contrib.

    Voici un exemple de géolocalisation : http://www.citizensforeurope.eu/rubrique57_fr.html?carte=oui
    L’idée principale est de permettre le regroupement d’objets. Si vous en voyez l’utilité, nous pouvons peut-être voir comment intégrer cela au plugin ?

    • Salut, merci pour ta proposition, j’ai déjà souvent utilisé des systèmes de clustering de markers avec GIS. Je pense que j’en intégrerai un par défaut (activable en option) dans la prochaine version de GIS basée sur Leaflet.

      ++

    Répondre à ce message

  • MINICIRCUL

    A PROPOS DE GIS2/SPIP3

    Bonjour,

    Déjà intervenu ci-dessous sur l’intégration des documents kml joints à un article impossible sur une carte, j’ai trouvé une « bidouille » en récupérant le squelette qui permet la prévisualisation dans l’espace privé, là ça marche.

    Cependant deux remarques :

    1. j’utilise des marqueurs personnalisés (32x37) téléversés via l’espace privé et j’ai remarqué un décalage sur le positionnement (decalage vers le bas/droite)

    2. l’api Google Maps v3 permet l’ajout d’un layer traffic, mais après plusieurs tests je n’ai pas réussi à inserer le code suivant :

    var map = new google.maps.Map(document.getElementById(’map_canvas’), mapOptions) ;
    var trafficLayer = new google.maps.TrafficLayer() ;
    trafficLayer.setMap(map) ;

    j’ai testé plusieurs endroits, une intégration partielle, rien à faire.

    Pour info : exemple d’utilisation
    http://www.previtrafic.com/spip.php?page=_popupcarto&id_article=12051

    Merci par avance pour vos éclairages.

    Répondre à ce message

  • 4

    Bonjour en essayant d’installer ce plugin pour spip 3.0, je vois qu’il faut aussi le plugin Afficher Objets. Cependant je ne le trouve nulle part pour la version 3.0, au mieux je trouve la version 3.0... Quelqu’un aurait un lien vers ce plugin ?

    Merci d’avance

    • Salut, comme indiqué sur cette page et sur plugins.spip.net, c’est la version 3.3.9 de GIS qu’il faut utiliser avec SPIP 3. Cette version ne nécessite plus afficher_objets, car celui-ci est fourni par SPIP 3.

      http://plugins.spip.net/gis.html

      ++

    • Ah ok c’est bien ce que je pensais. Du coup j’ai récupéré le plugin gis2. J’arrive bien à le configurer mais je n’arrive pas à ajouter un nouveau point sur la carte, le plugin me donne une erreur sur le select de la base de données dans la table gis. J’ai l’impression que la table n’a pas été créée et je pensais que ça pouvais donc venir du fait que je n’ai pas installé afficher_objets. Visiblement ça ne provient pas de là. J’ai par ailleurs changer le port de phpmyadmin (80 par défaut il me semble) en 8080. Est-ce que ça pourrait venir de là ?

    • Salut,

      Du coup j’ai récupéré le plugin gis2

      Je te disais pourtant :

      c’est la version 3.3.9 de GIS qu’il faut utiliser avec SPIP 3

      Est-ce bien la version que tu as installé ? Si le problème persiste, tu peux relancer la création des tables du plugin en le désinstallant puis en le reinstallant.

      ++

    • C’est bon, une réinstalle a résolu le problème. La première installation avait échoué parce que le téléchargement de la libraire ne s’était pas bien passé. Du coup en installant la librairie à la main puis en désinstallant et en réinstallant le plugin ça marche.

      Merci beaucoup !

    Répondre à ce message

  • 4

    Encore des questions :
    est-il possible d’affecter des mots-clés à un point ? En modifiant le plugin « mots objets » ?
    est-il possible d’ajouter des champs aux points ? Avec champs extra ?
    est-il possible d’ajouter une saisie de points dans formidable (ou forms et tables) ?
    Merci,
    Sylvain

    • Salut, encore des réponses :p

      est-il possible d’affecter des mots-clés à un point ? En modifiant le plugin « mots objets » ?

      On peut attacher des points à des mots clés, mais dans l’autre sens non. Cela risquerait de complexifier le plugin, il vaut mieux regarder du côté de mots objets.

      est-il possible d’ajouter des champs aux points ? Avec champs extra ?

      Oui ça doit être possible avec la version 3 comme l’indique la doc :

      Ainsi, il est possible à l’aide de EXTRA3 d’ajouter des champs à tous les objets éditoriaux (et éditables) déclarés par SPIP3 ou par des plugins.

      http://www.spip-contrib.net/Champs-Extras-3

      est-il possible d’ajouter une saisie de points dans formidable (ou forms et tables) ?

      La saisie pour les objets de gis est déjà utilisée dans le plugin et elle visible ici :

      http://zone.spip.org/trac/spip-zone/browser/_plugins_/gis/branches/v3/saisies/carte.html

      ++

    • Bonjour,
      et tout d’abord vraiment merci pour tes réponses et ta réactivité, c’est impressionnant et tellement utile !

      J’ai creusé de mon côté :
      -  mots-clés affectés à un point,
      — > avec spip2, ça semble possible si on modifie gis en fonction du formalisme du plugin « mots-objets »... qu’en penses-tu ?
      — > avec spip3, ça fonctionne bien, et je finis par réussir à afficher une carte avec les points ayant le mot-clé souhaité.

      -  ajouter des champs aux points, avec champs extra
      — > spip3, ok ça fonctionne. Juste un truc : pas réussi à afficher le « label » des champs « cases à cocher », sans modifier les valeurs desdits champs.

      -  formidable :
      là, je n’ai pas franchement compris. J’aimerais ajouter un « type de champ » point gis dans un formidable ; en effet j’ai plusieurs types de points différents, et l’option champs extra ne me suffit pas... Et puis j’aimerais utiliser les fonctionnalités de formidable (gestion de mails, stockage)
      Le fichier saisies/carte.html que tu m’as indiqué est-il à ajouter au plugin formidable ?

      -  encore un truc, l’import/export csv de points, ce serait possible ???

      MErci,
      Sylvain

    • Salut,

      - mots-clés affectés à un point,
      — > avec spip2, ça semble possible si on modifie gis en fonction du formalisme du plugin « mots-objets »... qu’en penses-tu ?

      Perso je suis pas très chaud, je préfère qu’on laisse la branche 2 du plugin « finir sa vie tranquillement » sans y ajouter de fonctionnalités, juste des corrections de bugs. Tout ça afin de me faciliter le support qui me demande déjà beaucoup de temps.

      — > avec spip3, ça fonctionne bien, et je finis par réussir à afficher une carte avec les points ayant le mot-clé souhaité.

      Cool.

      Le fichier saisies/carte.html que tu m’as indiqué est-il à ajouter au plugin formidable ?

      Non, il est fourni par GIS, cf le lien que je t’ai filé.

      Pour tes questions à propos de champs extras et formidable, je t’invite à les poser dans les forums de ces plugins ;)

      ++

    • ok, merci, je vais essayer de voir du côté de formidable.
      A+
      Sylvain

    Répondre à ce message

  • 7

    Bonjour à tous et merci pour ce plugin, je viens vous faire part de quelques bugs sous spip 3.03 avec la dernière version de gis3

    Origine : file :///home/svn/repository/spip-zone/_plugins_/gis/branches/v3
    Revision : 63218
    Dernier commit : 2012-07-03 13:00:05 +0200

    ecrire/ ?exec=gis_tous
    -  Lorsque que je clique sur le bouton « afficher » sur un des points rien ne se passe.
    -  Lorsque je clique sur « modifier ce point », la carte ne s’affiche pas dans le formulaire
    -  Lorsque je clique sur la rubrique auquelle un point est lié, la carte ne s’affiche pas non plus.
    -  Le champ de recherche « Rechercher un point » ne renvoi jamais rien
    -  le lien « Lier un nouveau point » fonctionne, mais sur les autres pages la carte ne s’affiche pas.

    Voila, bonne continuation.

    • Salut, le plugin fonctionne très bien sur pas mal de sites en SPIP 3. Ton problème semble venir d’une erreur javascript, peut être un conflit avec un autre script d’un plugin ? As-tu des erreurs javascript affichées (dans firebug ou autre) ? Quels sont les plugins actifs sur le site ? As-tu essayé en désactivant les autres plugin un par un afin de trouver celui qui pourrait générer cette erreur ? Et dernière question, comme d’habitude, quelle est l’url du site qui pose problème ?

      ++
      b_b

    • Bonjour, alors en ce qui concerne l’url du site je ne l’ai pas mise volontairement car le site est en développement et pas encore en ligne.

      Pour la liste des plugins j’utilise cela :

      CFG 3.0.0 - stable
      Corbeille 3.0.1 - stable
      Facteur 2.1.6 - stable
      GIS 3.3.8 - stable
      Le Couteau Suisse 1.8.72 - stable
      Memoization 1.2.0 - stable
      Orientation 0.2.0 - stable
      Saisies pour formulaires 1.25.13 - test
      sauvegarde automatique 0.8.1 - stable
      Simples Logs 0.4.3 - stable
      SPIP Bonux 3.0.2 - stable
      SPIP Mentions Légales 1.70.0 - stable

      Au début j’avais une erreur du type la fonction json_decode n’est pas présente un truc comme ça et je n’ai plus cette erreur depuis que j’ai mis spip bonux.

      Je vais tester de désactiver un par un dès que j’ai le temps dans la journée, je reviens vers vous.

    • Bonjour, après test du plugin gis3 en désactivant tout les autres plugins j’ai toujours les problèmes cité plus haut, les cartes ne s’affichent pas partout.

      Je n’ai pas d’erreur javascript particulière, par contre j’avais une erreur au tout début lorsque j’ai activé GIS, json_encode undefinded quelque chose comme ça, mais cette erreur ne s’affiche plus donc je peux pas vous dire exactement l’erreur,

    • Salut, ton problème semble être le même que celui de Sylvain, je t’invite à continuer la discussion dans son de discussion ;)

    • Super merci effectivement en rajoutant la ligne de code
      include_spip(’inc/json’) ;
      dans gis_fonctions.php cela fonctionne, tu peux balancer le correctif :)
      Par contre pour ceux pour qui ça ne marche pas immédiatement, il faut désactiver le plugin et le réactiver pour que la modification de gis_fonctions.php soit prise en compte.

      Merci de votre aide à tous.

    • Et hop, voilà qui devrait régler le problème pour toutes les versions de GIS :

      http://zone.spip.org/trac/spip-zone/changeset/63583

      Comme je le dis dans le log de commit, il serait temps que les hébergeurs activent PHP 5 par défaut...

      ++

    • merci bien.

      Chez moi, c’était bien php5, mais 5.1, et json n’était pas activé, pour cause de quotes mal taillées dans le /etc/php.d/json.ini : il y avait des « guillemets » bien génants, pas compris pourquoi (centos).

    Répondre à ce message

  • 2

    Bonjour,

    Juste pour signaler une petite farce qui empêche l’affichage des cartes.

    Si SPIP est installé dans un dossier avec des espaces (exemple : my portable files dans easyphp), les GET sur les fichiers js pour afficher les cartes se font sur le dossier mais sans espaces (sur myportablefiles/lib/mxn-gis-2.2.2/mxn.core.js) avec des erreurs 404 au chargement.

    • Salut, as-tu vérifié que l’url du site est la bonne dans la page de configuration de l’espace privé ?

    • Vérifié, oui, il y avait de beaux %20. Ça aurait dû être des espaces ?

      Concrètement j’ai modifié le nom du dossier pour ne plus avoir d’espaces
      (Comme solution de contournement, ça peut être utile à d’autres)

    Répondre à ce message

  • 6
    Minicircul

    PASSAGE GIS à GIS 3.3.8 : PLUS RIEN !

    Bonjour,

    Alors que la précédente version fonctionnait parfaitement bien, le passage à SPIP 3 et donc au plugin adapté donne du ... vide !

    En effet tout est là sur l’espace privé (d’ailleurs dommage que on ne puisse plus repositionner le marqueur)

    Mais sur l’espace public, même en remodifiant l’appel de la carte, absolument rien !

    Quelqu’un a une piste (sachant que j’ai viré en plugin l’ancien GIS et le GoogleMaps API (je suis passé au V3).

    Pour info : une des pages : http://www.previtrafic.com/spip.php?page=_popupcarto&id_article=819

    • Minicircul

      OUI oubli réparé mais ça fonctionne,

      Cependant un élément supplémentaire, autant avant quand j’ajoutais un fichier kml, celui-ci était repris automatiquement dans la carto Google Maps autant aujourd’hui j’ai :
      -  La présence du tracé du kml dans l’espace privé.
      -  L’absence du kml dans l’espace public

      http://www.previtrafic.com/spip.php?page=_popupcarto&id_article=2910

    • Salut, un lien vers le squelette qui génère ta page serait bien utile pour t’aider à débuguer ton problème de kml.

    • j’ai mis le squelette dans un dossier temporaire : http://www.minicircul.com/test/_popupcarto.html

    • Oui ça ne risque pas de fonctionner si tu ne demandes pas au modèle d’afficher les kmls...

      [(#MODELE{carte_gis}{id_article}{latit}{lonxit}{zoom=12}{type=carte}{control=large}{width=100%}{height=100%})]

      Il faut passer en paramètre l’id du document kml à afficher en superposition, cf la doc :

      kml = 12 kml à superposer à la carte (id_document ou url)

      ++

    • MINICIRCUL

      J’ai testé plusieurs solutions mais rien n’y fait !

      Le problème c’est que je peux pas appeler un kml en dur dans le code, vu que ce kml est un document joint dans un article. Que donc celui-ci est différent au sein de chaque article, et que un article peut voir son kml changer.

      Par ailleurs tous les articles avec une géoloc n’ont pas de kml !

      D’où un blocage dans ma réflexion !

    Répondre à ce message

  • 7

    un article avec 2 points liés, la carte s’affiche, pas les points ni les outils de zoom.
    <carte_gis1|autocenterandzoom=oui|type=carte|control_zoom=large>
    De plus, à chaque recalcul, le message « Filtre json_encode non défini plugins/gis2/modeles/carte_gis.html »
    (idem openlayers ou googmaps)
    Que faire ?
    Le site ne contient qu’un article, pas d’autres plugins que les suivants...

    spip 2.1.16

    Afficher Objets 1.2.2
    CFG 1.16.0
    GIS 2.4.1
    Saisies 1.26.1
    SPIP Bonux 2.3.0 -

    php 5.1.6-39

    • bonjour,
      j’ajoute l’url (temporaire) :
      http://www.ubiquando.com/geo/spip.p...

      je ne pige pas...
      Merci,
      Sylvain

    • test fonctionnel en local.
      Y a-t-il besoin d’une version de php >5.1 ?

      sur la version en ligne, en partie privée les cartes n’affichent pas les contrôles. Pas possible non plus de visualier la carte en modification de point.

    • Vu ici :
      http://forums.ouvaton.org/viewtopic.php?pid=2233#p2233

      en ajoutant ce code dans squelettes/mes_fonctions.php, les contrôles des cartes apparaissent.
      J’ai dû l’ajouter également à la racine pour avoir les contrôles dans la partie privée.

      Et pour faire apparaître mes points, j’ai dû ajouter |id_article=1 dans mon appel de la carte.

      Est-ce que ce code est nécessaire pour php < 5.2 ?
      Je ne l’ai pas vu clairement indiqué ?
      Merci,
      Sylvain

    • Salut,

      Non, cette fonction est fournie par SPIP si elle n’est pas disponible nativement à cause d’une version de PHP trop basse :

      https://github.com/spip/SPIP/blob/spip-2.1/ecrire/inc/json.php#L65

      Ton hébergement dispose bien des fonctions json ? Tu peux le vérifier sur un php info en accédant à la page ecrire/ ?exec=info dans l’espace privé.

      ++

    • Peux-tu tester en ajoutant uniquement ce code dans gis_fonctions.php :

      include_spip('inc/json');

      Cela devrait corriger le problème pour les hébergements qui ne disposent pas d’une version de php fournissant json_encode. Si cela règle le problème, j’envoie le correctif dans gis d’ici demain.

      ++

    • non, toujours pas, mais le fichier est dans /ecrire, donc pas le bon chemin ?

    • en fait, ça va mieux en changeant les quotes... de l’include_spip (le mail reçu en html avait mis des backquotes)

      Donc cette fois c’est bon, super, merci !

    Répondre à ce message

  • Bonjour

    Cette fois j’essaie de modifier le formulaire d’édition de point : je souhaiterais rajouter des champs.

    D’apres ce que j’ai compris, cela se passe dans le fichier /plugins/GIS2/formulaires/editer_gis.html Jusque là, tout va bien, mon nouveau champ est créé. Par contre, il n’est pas enregistré. Je pense que cela doit venir de la fonction « formulaires_editer_gis_traiter_dist » (comme c’est un formulaire CVT ?), qui se trouve dans /plugins/GIS2/formulaires/editer_gis.php
    Comment faire pour qu’elle prenne en compte des nouveaux champs ?

    Merci !

    Répondre à ce message

  • 6

    Bonjour !

    Ce plugin à l’air très intéressant, mais je suis novice en Spip, et j’ai un petit souci : je n’arrive pas à afficher un fichier kml sur une carte.

    J’appelle la carte dans un article avec

    (chevron) carte_gis|type=relief|autocenterandzoom=oui|kml=doc1 (chevron)

    et j’ai auparavant joint le fichier kml à mon l’article. La carte s’affiche correctement, elle se centre en fonction des points géolocalisés liés à mon article, mais pas de trace du kml.
    Déjà, est-ce la bonne syntaxe pour appeler le kml ? Et comment faut il faire pour qu’il s’affiche ?

    J’utilise la version 2.1.12 de spip et la version 2.4.1 de GIS. Je suis en local.

    Merci beaucoup !

    • Salut, tu n’est pas loin du but :p

      kml = 12 kml à superposer à la carte (id_document ou url)

      Donc :

      <carte_gis|type=relief|autocenterandzoom=oui|kml=1>

      (sans le *doc* dans l’id du document)

      ++
      b_b

    • Merci pour cette réponse rapide !
      Malheureusement, je crois que cela ne marche toujours pas...

      En fait j’ai essayé plusieurs choses :
      Lorsque le kml décrit une ligne (par exemple un itinéraire), il n’apparait pas du tout sur la carte.
      Lorsque qu’il décrit un polygone, il est remplacé par un marqueur punaise (comme si c’était un simple point)

      Cela me semble tres bizarre !

    • File moi l’url des kmls en question que je les teste pour voir s’ils sont valides.

      ++

    • j’ai utilisé le lien donné sur la page de gis3 :

      http://www.gitesdegaule.fr/KaraMeLi...

      Cela donne accès à des kml qui décrivent les département français, et j’ai utilisé 38.kml

    • Je viens de tester le kml en question et il fonctionne sans problème sur un SPIP 2.1.16 avec GIS 2.4.1, je ne peux pas t’aider plus sans l’url de la page de ton site où je pourrais observer le problème.

      ++

    • Merci, j’essaie de mettre le site en ligne et je vois si le problème persiste. Je posterais le lien si c’est toujours le cas.

    Répondre à ce message

  • 4
    Françoise

    Bonjour

    Quels sont les fichiers qu’il faut modifier pour utiliser son propre script OpenLayers, c’est à dire faire appel « http://monsite.org/.../OpenLayers.js » plutôt que « http://openlayers.org/api/OpenLayers.js »
    En effet lorsque le site openlayers.org rame ou est en time out comme en ce moment ça rend monsite.org impraticable.

    (J’ai un peu cherché dans le plugin mais..)

    Merci de votre réponse. Et merci pour le plugin et pour y avoir mis OSM ;-)

    Françoise

    • Salut, c’est dans le fihcier gis_pipelines.php que ça se passe, ici :

      http://zone.spip.org/trac/spip-zone/browser/_plugins_/gis/branches/v2/gis_pipelines.php#L31

      Mais attention, il y a un bug introduit dans OpenLayers 2.12, je te conseille grandement de rester sur la version 2.11 de l’api tant que ce bug ne sera pas réglé par les devs d’OpenLayers :

      https://github.com/openlayers/openlayers/issues/559

      ++

    • Françoise

      Merci, ç’est OK. Ça tombe bien, j’avais un vieux dossier OL avec la version 2.11 sous la main. (Un nœud à mon mouchoir pour penser à changer l’adresse en cas de changement de serveur...)

      Une suggestion si je peux me permettre : ça me semble important de mettre sur le fond de carte OpenSteetMap son « copyleft ».
      En attendant est-ce que je peux coller quelque part la ligne « map.addControl(new OpenLayers.Control.Attribution()) ; » ?

      Françoise

    • Hmmm c’’est une bonne idée, mais la librairie Mapstraction ne le permet pas. Mais cela sera présent dans la version 4 de GIS que je devrais rendre public d’ici une ou deux semaines ;)

    • Françoise

      Super j’attends cette nouvelle version avec impatience.
      (Et en prime en lisant ce forum j’ai compris pourquoi mes modèles marchaient pas, MDR)
      Françoise

    Répondre à ce message

  • 2

    Bonjour,
    tout d’abord merci, c’est vraiment super :), ce plugin ouvre des possibilités assez énorme sur la façon de visualiser les informations

    quelques questions et remarques (sur version de SPIP 2.1.15 SVN [19588])
    -  pour cette carte "<carte_gis1|id_rubrique=2|objets=articles|zoom=8|autofocus_marker = oui>" : et pourtant on peut ouvrir plusieurs infobulles (alors que j’ai cru comprendre que cela forçait l’affichage d’une seule en fermant la précédente) : j’ai bien vu que quelqu’un à rencontrer un problème « similaire » mais je ne sais pas débugger comme lui : conflit entre un plugin multimédia et GIS2
    -  en back, dans un article, la fonction rechercher ne fonctionne plus, pourtant dans la configuration du plugin geocoder est bien activé
    -  en back, dans édition des points, quand je veux ajouter un nouveau point, j’ai trois cartes les unes sous les autres et je ne comprends pas comment faire
    -  et je n’ai pas trouvé si il est possible de faire l’affichage des points des articles publiés entre 2 dates données ?

    Merci encore

    PS : je ne suis pas informaticien et je n’ai accès qu’à la partie rédaction d’article et administration du site, donc je ne peux pas modifier les squelettes par exemple

    • Salut Vincent,

      j’ai bien vu que quelqu’un à rencontrer un problème « similaire » mais je ne sais pas débugger comme lui : conflit entre un plugin multimédia et GIS2

      Corrigé par http://zone.spip.org/trac/spip-zone/changeset/60861/

      en back, dans un article, la fonction rechercher ne fonctionne plus, pourtant dans la configuration du plugin geocoder est bien activé

      Oui, j’ai corrigé ce bug vendredi, cela vient d’un bug introduit dans la version 2.12 d’OpenLayers (je sais que c’est cette api que tu utilises :p) . J’ai corrigé en forçant l’utilisation d’OpenLayers 2.11 dans GIS en attendant que le bug soit corrigé dans OL.

      http://zone.spip.org/trac/spip-zone/changeset/63100

      en back, dans édition des points, quand je veux ajouter un nouveau point, j’ai trois cartes les unes sous les autres et je ne comprends pas comment faire

      Ce bug est corrigé aussi.

      et je n’ai pas trouvé si il est possible de faire l’affichage des points des articles publiés entre 2 dates données ?

      Pour ça il faut bidouiller et se faire un squelette perso inspiré de ceux présents dans le répertoires /json du plugin, mais comme tu n’as pas accès aux squelettes sur ton site cela ne te sera pas possible.

      ++

    • Merci, trop fort et rapide :)

      j’ai bien vu que quelqu’un à rencontrer un problème « similaire » mais je ne sais pas débugger comme lui : conflit entre un plugin multimédia et GIS2
      -  Corrigé par http://zone.spip.org/trac/spip-zone/changeset/60861/

      euh ben comment dire, en ayant ceci dans un article (<carte_gis1|id_rubrique=2|objets=articles|zoom=8|autofocus_marker = oui>) qui donnent ceci http://www.lespetitsdebrouillardsaquitaine.org/spip.php?article285&var_mode=recalcul et donc j’ai recalculé la page, j’ai toujours plusieurs infobulles qui s’affichent en même temps ?

      Sinon pour tous le reste, c’est super :)

      les 2 trucs en plus de folie (je ne peux pas aller dans le squelette et de toutes les façons je ne saurais pas quoi y faire :) :

      -  changer facilement le marqueur, je ne supporte plus le jaune :)

      -  faire que dans le titre d’un point, la balise (je ne sais pas si c’est le terme) plus d’infos fonctionne : toujours en sachant que je n’ai pas accès au squelette

      Encore merci

    Répondre à ce message

  • 7

    Bonjour,
    j’ai 2 sous rubriques avec chacune un point GIS attaché. Comment les faire apparaître dans une carte de la rubrique parent (insérée en modèle) ?
    http://spip.cnp.testenligne.net/defib/spip.php?rubrique10

    • Salut, comme ta rubrique 10 est un secteur (rubrique à la racine), tu peux le faire comme ça :

      <carte_gis|objets=rubriques|id_secteur=10>

      ++

    • Bonjour, merci de la réponse. Cela ne fonctionne pas. Une autre idée ?

    • Ha oui, tu viens de tomber sur un bug introduit par le changement de comportement des modèles dans SPIP 3. Il va falloir qu’on pense à régler ça dans SPIP, ou alors que je trouve une parade pour GIS. En attendant le correctif, tu peux effectuer l’appel de la carte depuis un squelette et cela fonctionnera sans souci.

      ++

    • squelette : je touche mes limites. vive le modèle ! Merci

    • j’ai créé un rubrique=10.html (dans un dossier squelettes) j’y ai inséré
      [(#INCLUREfond=modeles/carte_gis,
      objets=rubriques,
      id_secteur=10,
      zoom=7,
      lat=48.214378965824345,
      lon=-4.543704986572266
      )]
      et nada ...

    • Ok, c’est un bon début ;) Pour que ton squelette soit pris en compte il faut aussi déposer une copie de squelettes-dist/rubrique.html dans ton dossier squelettes/. Et puis je te conseille grandement de désactiver la compression du html dans la conf de ton spip, ce truc apporte pas mal d’ennuis (la compression css et javascript tu peux garder, ça ça fonctionne bien).

      ++

    • Bonjour
      toujours pas d’affichage de carte.
      mon spip n’est pas installé à la racine ;
      il est dans un répertoire defib/
      est ce que cela a des conséquences sur la prise en compte du squelette ?

    Répondre à ce message

  • 1
    nicolas

    Bonsoir,

    J’ai un souci sur un site, rien n’apparait ni au niveau squelette ni au niveau des articles.

    http://www.gite-jasseneuve.com/spip

    Répondre à ce message

  • 25

    Bonjour,

    Je suis en train de tester le plugin GIS2 (version 2.3.3 [58732]) sur une version de SPIP 2.1.12 [18732].

    J’ai créé pour cela 5 points géolocalisés : ils comportent chacun un titre et un descriptif. Dans les champs « descriptif », j’ai utilisé des raccourcis typographiques SPIP pour mettre en forme ce qui est affiché dans les bulles d’information des points géolocalisés dans les cartes Google.

    J’ai ensuite attaché ces 5 points chacun à une sous-rubrique enfant d’une de mes rubriques (id_parent=214) ainsi qu’à un même article (id_article=1179).

    Mon problème est le suivant : lorsque j’appelle dans un article le modèle sans le paramètre « objets »

    <carte_gis12
    |id_article=1179
    |autocenterandzoom=oui
    |type=carte
    |control_zoom=small>

    , les raccourcis typographiques placés dans les descriptifs des points géolocalisés sont correctement interprétés, mais lorsque j’utilise le modèle avec le paramètre « objets »

    <carte_gis7
    |objets=rubriques
    |id_parent=214
    |autocenterandzoom=oui
    |type=carte
    |control_zoom=small>

    les raccourcis typographiques placés dans les descriptifs ne sont plus interprétés. Cependant, en utilisant l’un ou l’autre des modèles, les points géolocalisés apparaissent correctement.

    Pour résoudre ce problème, j’ai tenté de personnaliser le modèle gis_rubriques.html (j’ai installé cette version modifiée dans /squelettes/modeles/) mais sans succès.

    Est-ce bien ce squelette qui contrôle cet affichage ? Si non, pouvez-vous m’indiquer quels fichiers gèrent l’affichage des bulles d’information ?

    Je vous remercie par avance.

    PS : pour avoir une idée du problème, vous pouvez le voir sur cette page. où les deux modèles sont appelés.

    • Salut, ok je vois le problème, les traitements typo ne sont pas appliqués aux pseudos balises ajoutées depuis l’introduction du critère gis dans les boucles des fichiers json du plugin. En attendant la prochaine version qui corrigera ce problème (elle devrait être dispo dans la journée) tu peux ajouter ça à ton fichier d’options pour corriger le problème :

      $table_des_traitements['DESCRIPTIF_GIS'][]= 'propre(%s)';

      ++

    • Et voilà le correctif est en place dans la version 2.3.4 du plugin :

      http://zone.spip.org/trac/spip-zone/changeset/59567

      Le zip sera à jour d’ici une heure environ ++

    • Merci beaucoup pour ta réactivité et ta clairvoyance.

      En effet, tes corrections apportées dans la version 2.3.4 du plugin solutionnent ce problème.

      En poursuivant mes tests, je viens de me rendre compte que je n’arrive pas non plus à utiliser le paramètre |autofocus_marker=oui dans le modèle. J’ai bien une seule info-bulle qui s’affiche dans l’aperçu de l’article, dans l’espace privé. Mais quand j’affiche la page en ligne, aucune bulle d’information ne s’affiche.

      Pour tester en ligne, j’ai placé le code suivant de 3 cartes dans l’article :

      <carte_gis1|objets=rubriques|id_parent=214|autocenterandzoom=oui|autofocus_marker=oui|type=carte|control_zoom=small>
      
      <carte_gis2|objets=rubriques|id_parent=214|autocenterandzoom=oui|type=carte|control_zoom=small>
      
      <carte_gis3
      |objets=rubriques
      |id_parent=214
      |autocenterandzoom=oui
      |type=carte
      |control_zoom=small
      >

      Voici la page en ligne que j’obtiens. La première carte ne prend pas en compte le paramètre |autofocus_marker=oui alors qu’il est mentionné et la dernière n’apparaît pas du tout car les paramètres du modèle s’étendent sur plusieurs lignes (la syntaxe étendue des modèles ne semble pas être prise en compte). Sais-tu d’où peuvent provenir ces petits bugs ?

      Merci encore d’avance pour les solutions que tu pourras nous apporter.

    • Oui je vois le bug, ta page génère une erreur js et à partir de là plus rien ne fonctionne comme prévu :p

      C’est l’appel du modèle avec les sauts de lignes qui génère ça. En attendant que je trouve une solution pour corriger le bug, reforme ton appel du modèle en le mettant sur une ligne et tout devrait rentrer dans l’ordre.

      ++

    • Bonjour. Merci encore pour ton analyse.

      En effet, en reformant le modèle en mettant tous les paramètres sur la même ligne, la carte s’affiche correctement avec les différents points géolocalisés. Cependant le paramètre |autofocus_marker=oui ne semble toujours pas être pris en compte.

      Penses-tu que cela soit lié au problème d’affichage du modèle avec les sauts de ligne ?

    • Et voilà, la version 2.3.5 corrige le bug généré par des appels du modèle gavés de sauts de ligne comme ceci :

      <carte_gis2
      |objets=articles
      |id_auteur=4
      |autocenterandzoom=oui
      |type=carte
      |control_zoom=small
      >

      http://zone.spip.org/trac/spip-zone/changeset/59648

      ++

    • Bonjour,

      A nouveau, un grand merci pour ta rapide correction de ce bug. L’affichage du modèle avec un saut de ligne pour chaque paramètre fonctionne maintenant parfaitement.

      Le seul problème qui persiste encore concerne le paramètre |autofocus_marker=oui (qui permet de n’afficher qu’une seule bulle d’information à la fois) que je n’arrive pas à faire fonctionner dans les pages de l’espace public (voir cet exemple).

      J’ai essayé les deux syntaxes de modèles possibles et, dans les deux cas, le paramètre n’est pas pris en compte lorsque la carte s’affiche dans l’espace public :

      <carte_gis1|objets=rubriques|id_parent=214|autocenterandzoom=oui|autofocus_marker=oui|type=carte|control_zoom=small>
      
      <carte_gis1
      |objets=rubriques
      |id_parent=214
      |autocenterandzoom=oui
      |autofocus_marker=oui
      |type=carte
      |control_zoom=small
      >

      Cependant, dans l’espace privé de SPIP, le paramètre est correctement interprété dans les aperçus des articles et, dans ce cas là, la fonctionnalité est active.

      Je ne comprends donc pas pourquoi cela fonctionne dans l’espace privé et pas dans l’espace public ??

      Aurais-tu des pistes pour résoudre ce problème ?

    • Ta page génère toujours une erreur javascript quand on clique sur un des marqueurs de la carte. Cela peut provenir d’un conflit avec un autre script présent dans la page, ou un problème de chargement d’un des scripts de gis, etc. Je ne vais pas me lancer dans une session débug complète de ton site, mais il me semble que le script gis.js s’exécute avant que les scripts de mapstraction soient chargés, du coup cela génère ces erreurs dans tes pages.

      Pour info la fonction autofocus_marker fonctionne très bien sur d’autres sites.

    • OK, merci encore pour tes indications.

      Je voulais en effet savoir si la fonction autofocus_marker fonctionnait correctement. Comme c’est le cas sur d’autres sites, je vais regarder du côté de mes scripts et de l’erreur javascript que tu m’indiques.

      Merci encore pour cet excellent plugin.

    • Bonjour,

      Sur tes dernières indications, j’ai effectué plusieurs tests pour voir d’où pouvait provenir l’erreur du script gis.js. En vérifiant s’il n’y avait pas des interférences avec d’autres plugins déjà installés sur mon site, je crois avoir découvert que le problème provient d’un conflit avec le plugin Lecteur multimedia.

      Quand je désactive ce plugin « Lecteur multimedia »,, les cartes de GIS s’affichent parfaitement y compris avec l’option |autofocus_marker, mais quand je le réactive, le problème se reproduit à nouveau. Dans ce cas là, en effet, une erreur javascript a lieu au chargement de la carte (« mxn.markers[i].openInfoBubble is undefined ») puis une autre à chaque clic sur un point géolocalisé (« map.markers[i].closeBubble() is not a function »).

      J’ai tenté une mise à jour du plugin « Lecteur multimedia », que je n’ai pas réussie à réaliser pour l’instant (voir mon commentaire dans la rubrique de ce plugin).

      Afin de savoir si je suis sur la bonne piste, est-ce que quelqu’un d’autre que moi a déjà constaté cette interférence entre les plugins GIS et Lecteur multimedia ?

      Je vous remercie par avance pour vos réponses.

    • Bonjour b_b,

      J’ai poursuivi mes recherches concernant un conflit supposé entre GIS2 et le plugin Lecteur multimedia (voir à ce sujet mon dernier commentaire dans la rubrique du plugin Lecteur multimedia).

      Voici ce que je constate : juste avant d’obtenir l’erreur mxn.markers[i].openInfoBubble is undefined, la valeur de i vaut "contains" au lieu d’être une valeur entière numérique !

      Pour tenter de contourner ce problème, j’ai fait un test en réécrivant la fonction gis_autofocus_marker(map) du script gis.js de la façon suivante :

      function gis_autofocus_marker(map) {
      	var mxn = eval('map'+ map);
      	for (var i = 0; i < mxn.markers.length; i++) {
      		mxn.markers[i].openInfoBubble.addHandler(function(name, source, args) {
      			gis_close_infowindows(map);
      		});
      	}
      }

      Cette modification corrige le problème rencontré [1], mais comme je ne suis pas expert en javascript, est-ce que cette correction est acceptable ? Y’a-t-il une différence avec l’utilisation de la syntaxe for ... in  ?

      Concernant le script player_enclosure.js, j’ai fait une recherche sur la chaîne de caractères «contains» et j’ai trouvé ce morceau de code suivant :

      // Nouvelle methode pour les tableaux
      // Retourne la premiere occurence correspondant, sinon false
      Array.prototype.contains = function (ele) {
      	for (var i = 0; i < this.length; i++) {
      		if (this[i] == ele) {
      			return true;
      		}
      	}
      	return false;
      };

      Je suspecte que ce soit cette fonction qui fasse que i prend la valeur «contains» lors de l’appel par le script javascript/gis.js mais là encore sans certitudes !!

      Que pensez-vous de tout ceci et des corrections proposées ?

    • Salut, content que tu aies trouvé la cause de cette incompatibilité :) Cela semble être un problème de variable i définie de façon globale par le lecteur multimédia.

      Ton message me fait remarquer que tu sembles utiliser une ancienne version du lecteur multimédia. Ce plugin a été mis à jour dernièrement, peux tu tester avec cette version et me dire si ton problème persiste ?

      http://zone.spip.org/trac/spip-zone/browser/_plugins_/player/branches/lm_v2/

      Si le problème est toujours là avec cette version, j’apporterai la correction à GIS pour ne plus avoir d’ennui avec le lecteur multimédia.

      ++

    • Merci,

      J’ai fait mes tests sur un spip 2.1.12 [18732] avec le plugin lecteur_multimedia en version 0.77.0 [54747]. Est-ce que la version du lecteur multimedia dont tu parles est plus récente que celle que j’utilise ?

      Si oui, puis-je la télécharger à partir du site Plugins SPIP (http://plugins.spip.net/player.html) ?

    • Bonjour b_b,

      Concernant la mise à jour récente du plugin Lecteur multimedia, j’ai regardé de plus près et je crois que le lien que tu me proposes permet d’accéder à la dernière version du Lecteur multimedia, compatible uniquement avec SPIP 3. Or, j’utilise encore SPIP 2.

      Cependant, grâce à ta remarque, j’ai fait plusieurs tests pour voir si le problème rencontré se produisait uniquement avec SPIP 2.

      Voici ce que je constate (j’ai pris soin de récupérer les dernières versions des plugins Lecteur multimedia et GIS compatibles avec SPIP 2.1 et SPIP 3) :

      • lorsque j’utilise SPIP 2.1.12 [18732] ou SPIP 2.1.13 [12292] avec les plugins Lecteur multimedia 0.77.0 [54747] et GIS 2.3.5 [59810], le conflit se produit.
      • lorsque j’utilise SPIP 3.0.0 RC [19216] et les plugins Lecteur multimedia 2.1.0 SVN [60544] et GIS 3.2.3 SVN [60059], le conflit ne se produit pas.

      Dans ce dernier cas, je ne retrouve pas trace du chargement du script player_enclosure.js dans le

      des pages publiques du site. C’est peut-être pour cela qu’il n’y a pas de conflit avec SPIP 3 ?

      Pour ceux, qui comme moi, ont encore leur site sous SPIP 2.1.x, est-il possible que tu apportes les corrections à GIS 2.3.5 pour ne plus avoir de conflit avec le lecteur multimédia 0.77.0 ? A moins qu’il soit préférable de faire la correction du côté du Lecteur multimedia 0.77.0 (javascript/player_enclosure.js) ??

    • Le version du lecteur multimédia que je pointais est bien compatible avec SPIP 2 mais celle-ci n’a jamais été diffusée par ses auteurs (on ne peut la récupérer que par svn). Elle fonctionne très bien sur un paquet de sites ;)

      J’apporte la correction nécessaire à GIS cet après midi (en plus d’une autre que j’ai sous le coude) et une nouvelle version sera dispo dans la foulée.

      ++

    • Ah OK, je ne savais pas que la version dont tu parlais ne se récupérait que par SVN. Je ne suis pas familier avec cet outil, je vais essayer de comprendre comment ça marche et comment je peux récupérer cette version et la tester.

      Merci beaucoup pour les corrections que tu vas faire sur GIS.

    • Si tu le souhaites, tu peux récupérer un zip depuis la zone sans passer par svn :

      http://lapsuske.brubel.net/Recuperer-un-zip-depuis-le-site-de-la-zone-SPIP

      ++

    • Et voilà, la version 2.3.6 de GIS sera dispo d’ici une heure au max :

      http://zone.spip.org/trac/spip-zone/changeset/60861

      ++

    • Merci beaucoup, à la fois pour la mise à jour de GIS2 et pour l’astuce permettant de récupérer un zip sur la zone sans SVN (je ne connaissais pas du tout !).

      Je vais tester avec cette version du lecteur multimedia et je te tiens au courant.

    • Bonjour b_b,

      Merci pour cette nouvelle version de GIS2. Seulement, en la testant j’ai à nouveau un petit souci : l’option |autofocus_marker=oui n’est plus prise en compte !! Dans gis.js, j’ai l’impression qu’il manque la méthode .length après mxn.markers dans les boucles for que tu as corrigées et que cela empêche l’entrée dans les boucles for.

      Concernant le test avec le lecteur multimedia v2 que tu m’avais indiqué, j’ai pu l’effectuer et je n’ai pas observé de conflit avec GIS2. J’ai cherché un peu dans le code de cette version 2 du lecteur multimedia et je n’ai pas trouvé, ni le script player_enclosure.js, ni la méthode Array.prototype.contains = function (ele) {   (...)   } suspectée d’être à l’origine du conflit. C’est peut-être pour cela qu’il n’y a pas de conflit ? Penses-tu qu’il faille indiquer sur le forum du plugin de lecteur multimedia que cette méthode Array.prototype.contains = function (ele) {   (...)   } peut être potentiellement à l’origine de conflit avec d’autres scripts ?

    • Oups, voilà qui corrige ma boulette :

      http://zone.spip.org/trac/spip-zone/changeset/60879

      Le zip sera à jour d’ici une heure.

      ++

    • Il n’y a pas de mal. Ça marche maintenant parfaitement. Merci beaucoup pour ton précieux travail.

    • nicodusud

      Bonsoir à tous, j’ai le meme probeme que certains quand je mets dans un squelette ou un article, rien n’apparait...

      http://gite-jasseneuve.com/spip/spip.php?article3
      J’ai bien un API google, par contre pour ceux qu’il l’utilise, il faut une API key browser apps ou server apps ?
      _

    • Salut, tu aurais pu ouvrir un nouveau fil de discussion, mais bon...

      Ton site génère une erreur javascript à cause de ce code :

      map1.setCenterAndZoom(new mxn.LatLonPoint(03&#039; 48&#039; 07&#039; E,43&#039; 55&#039; 33&#039; N),12);

      Quelles sont les coordonnées que tu as entré dans la configuration du plugin ? Elles ne semblent pas vraiment correctes et génèrent cette erreur.

      Concernant la clé, elle n’est pas nécessaire avec l’api v3 de google.

      ++

    • nicolas

      merci pour cette précision.

      j’avais mal rentré les coordonnées gps.

      Merci infiniement :D

    Répondre à ce message

  • 4

    Géocodage à partir de données FORM&TABLE

    Bonjour, j’ai réalisé un petit annuaire d’entreprise grâce à Form&Table.
    Une fiche « Entreprise » contient toutes les infos pour le géocodage notamment la ville.

    Je voudrais réaliser un modèle affichant toutes les entreprises de l’annuaire sur une carte.
    Boucler sur les données de Form&Table, je sais faire.
    Afficher une carte, cela n’a pas l’air compliqué.

    Par contre, je ne sais pas si il est possible de récupérer long. et lat. de chaque entreprise à partir de la ville ? puis de l’injecter dans la carte.

    Ce plugin permet-il de le faire ?

    MERCI

    • Salut, ce que tu souhaites faire ressemble beaucoup à ce qui est expliqué dans la doc de google maps api ici : https://developers.google.com/maps/articles/phpsqlgeocode

      ++

    • Merci b_b pour cette réponse ultra-rapide.

      Dans le lien que tu m’as donné, un script PHP met à jour une BDD avec les coord. géocodées.

      Je n’ai pas prévu de faire un script PHP. Il faudrait que je lance une recherche de géocodage au moment de l’enregistrement d’une fiche Entreprise. Mais l’enregistrement est gérée par FORM&TABLE et je ne crois pas qu’il soit possible d’ajouter un traitement spécifique ?

      Je souhaite donc tout faire avec un modèle (html + js) qui lit la BDD FORM&TABLE et construit la carte.

      Entre temps, j’ai vu que le géocodage peut être fait en JS en mode client : http://www.weboblog.fr/geocoder-adr...
      C’est peut-être vers cela que je dois m’orienter ?

      Peut-être même que je n’ai pas besoin du plugin GIS 2 ?

      Si j’ai bien compris l’exemple présenté dans le lien ci-dessus, les API de google map (classe JS) permettent de tout faire ?

    • Je me demande si je parts de zéro et je fais un modèle en collant le code javascript directement dedans ?

      Ou puis-je me exploiter le plugin GIS2 en partie ?

    • Bonjour

      Finalement, GIS2 ne correspondant à mon besoin, j’ai créer un nouveau plugin, qui permet de localiser sur une carte des enregistrements provenant de FORM&TABLE. C’est simplement un modèle dont les paramètres sont le n° de formulaire et le nom du champs contenant la ville, entre autres.
      Je vais porter le modèle pour FORMIDABLE aussi.

      Si j’ai des demandes, je mettrai le plugin sur la zone.

    Répondre à ce message

  • 4
    spipheure

    Bonjour
    J’essaye d’associer dans cette boucle contenu dans gis.html qui sert pour l’affichage de l’infobulle l’adresse et la description.
    Quelqu’un peut il m’aider
    « 
    "type" : "Feature",
    "geometry" : "type" : "Point", "coordinates" : [#LON, #LAT],
    "id" :"#ID_GIS",
    "title" :[(#TITRE*|supprimer_numero|json_encode)],
    "description" :(#ADRESSE[(#SETlogo_doc,’’)]
    [(#LOGO_GIS|oui)
    [(#SETlogo_doc,#LOGO_GIS|image_passe_partout32,32|image_recadre32,32)]]
    [(#LOGO_GIS|non)
    [(#CHEMINimages/marker_defaut.png|oui)[
    (#SETlogo_doc,#CHEMINimages/marker_defaut.png|image_passe_partout32,32|image_recadre32,32)]
    ]]
    [(#GETlogo_doc|oui)
    #SETicon_w,#GETlogo_doc|extraire_attributsrc|largeur
    #SETicon_h,#GETlogo_doc|extraire_attributsrc|hauteur
    [,"icon" : (#GETlogo_doc|extraire_attributsrc|url_absolue|json_encode)],
    "icon_size" : (#VAL91#GETicon_w,#GETicon_h(#VAL93,
    "icon_anchor" : (#VAL91[(#GETicon_w|div2)],[(#GETicon_h)](#VAL93
    ]
     »

    • Salut, c’est quoi la question ?

      ps : utilisez les raccourcis de code pour encadrer vos extraits de code, sinon c’est illisible.

    • spipheure

      Merci de répondre,

      La question est : j’essaye de modifier le fichier gis.html situé dans gis2/json afin de faire afficher dans mon infobulle au niveau de la description la balise #DESCRIPTIF et une autre balise par exmemple #ADRESSE mais je n’y arrive pas
      j’arrive pour le moment à afficher soit #DESCRIPTIF ou #ADRESSE et je galere grave
      merci beaucoup

    • Ha ben là je comprends mieux ;)

      "description":[(#DESCRIPTIF|concat{ #ADRESSE}|json_encode)]

      Avec ce code ça permet d’afficher les deux textes dans le descriptif. J’y utilise concat pour « fusionner » les deux textes avant de leur appliquer json_encode.

      ++

    • spipheure

      Merci beaucoup c’est génial et en plus j’apprends une fonction que je n’utilisais pas sous SPIP
      c’est une grande journée

    Répondre à ce message

  • 1

    Bonjour,

    Je monte un site d’info, et j’aimerais lorsque la personne se connecte lui afficher les articles autour de lui à -50km par exemple. l’auteur est lié à un point qui à pour titre sa ville, les articles sont aussi liées, j’arrive sans problème à lui afficher sa ville.... j’ai fais des boucles mais je n’ai pas ce que je veux !!!!

    <BOUCLE_auteur(AUTEURS){gis}{id_auteur=#SESSION{id_auteur}}>
    Votre localité : #VILLE
    <BOUCLE_a(GIS){id_gis=10}>
    <BOUCLE_gis(ARTICLES){gis}{!par date} {pagination 10}{0,1}>
    <BOUCLE_b(GIS){gis distance<50}>
    <li><a href="#URL_ARTICLE">#TITRE</a>#VILLE</li>
    </BOUCLE_b>
    </BOUCLE_gis>
    </BOUCLE_a>
    </BOUCLE_auteur>

    Là il m’affiche le Titre du point et non de l’article et l’id_gis est manuel ?
    je suis sous spip3
    si quelqu’un à une idée !!!
    merci
    pascal

    • <BOUCLE_auteur(AUTEURS){gis}{id_auteur=#SESSION{id_auteur}}>
      
      Votre localité : #VILLE
      <BOUCLE_m(GIS){id_gis=24}>
      
      <BOUCLE_b(GIS){gis distance<30}{0,1}>
      <BOUCLE_gis1(ARTICLES){gis} {!par date} {pagination 10}>
      <li><a href="#URL_ARTICLE">#TITRE</a>#VILLE</li>
      </BOUCLE_gis1>
      </BOUCLE_b>
      </BOUCLE_m>
      </BOUCLE_auteur>

      Ceci est plus cohérent cependant il ne prends pas le gis distance en compte !!!!!
      Pour l’id_gis est il possible qu’il soit en automatique par rapport à l’auteur ?

      PS dans mon site il n’y a pas de visiteur, ce sont tous des rédacteurs et auteurs.

      pascal

    Répondre à ce message

  • stéfany

    bonjour,

    J’ai un message ’noajax’, quand j’essaie de valider le paramétrage GIS.
    SPIP 3.0.1 [19436]

    vous voyez d’ou celà peut venir ?

    Merci !

    Répondre à ce message

  • 2
    Graine de Jardins

    Bonjour,
    je souhaitais afficher sur une carte les points liés à tous les articles figurant dans une rubrique et ses sous-rubriques. Le critere « recursive » n’étant pas encore implémenté, voici comment j’ai fait.

    Appel de la carte dans une boucle rubrique :

    [(#MODELE{carte_gis, id_rubrique=#ID_RUBRIQUE, zoom=#ZOOM, zoom_molette=non, lat=#LAT, lon=#LON, type=carte, control_zoom=large, autofocus_marker=oui})]

    Je recopie un des fichiers gis_xxx.html qui sont dans le dossier json du plugin dans mon dossier /squelettes/json. Dans mon cas je modifie le fichier gis.html pour lui dire d’explorer toute la branche de la rubrique :

    <BOUCLE_rub(RUBRIQUES){id_rubrique}><BOUCLE_art(ARTICLES){gis}{branche}{0, #ENV{limit}}{","}><BOUCLE_gis(GIS){id_article}{0, #ENV{limit}}{","}>
    {"type": "Feature",
    "geometry": {"type": "Point", "coordinates": [#LON, #LAT]},
    ...
    ...
    </BOUCLE_gis></BOUCLE_art></BOUCLE_rub>

    Attention : je ne sais pas si c’est lié à la syntaxe json, mais ce fichier est très sensible et un retour à la ligne ou un espace peut provoquer une erreur. Dans ce cas aucun point n’apparaît.
    Restez zen !

    • Salut, cool de voir quelqu’un partager ses astuces dans ce forum :)

      Je complète. Tu peux coller tes modifs dans un squelette json perso, genre json/toto.html et dire à la carte de l’utiliser avec le paramètre objets=toto. Ainsi tes modifs sont bien au chaud dans ton ficheir perso et tu ne change pas le comportement des autres modèles disponibles.

      Autre point, si ta rubrique est à la racine (un secteur) tu peux le faire comme ça :

      <carte_gis1|objets=articles|id_secteur=X>

      Il serait peut être utile que j’ajoute un modèle de json « articles_branche » ?

      ++

    • Bonjour et Merci pour ces infos..

      B_B, veux tu dire que si on met le code suivant dans un squelette rubrique.html, ca devrait suffire pour afficher tout les points liés aux articles du secteur 4 ?

      <BOUCLE_rub (RUBRIQUES){id_rubrique}>
        <carte_gis1|objets=articles|id_secteur=4>
      </BOUCLE_rub>

      chez moi ca ne marche pas, peux tu expliquer un peu plus stp ?

      merci à l’avance !

    Répondre à ce message

  • 2
    haqqtiviste

    bonjour

    sous spip 3 avec divers plugins (menu, agenda, autre)

    1 : la map s’affiche bien dans un squelette (www.f-c-p.org)
    mais pas dans un contenu d’article (http://www.f-c-p.org/Mentions-legales.html) pourtant on voit bien un espace blanc en bas qui est censé accuillir la map.

    2 : comment avoir dans l’info bulle du point les articles relatifs à ce point ?

    merci

    • Salut, le bug vient certainement de l’erreur javascript générée par ton script perso :

      element[0] is undefined
      http://www.f-c-p.org/squelettes/js/script.js
      Line 23

      ++

    • haqqtiviste

      ok, je vais chercher de ce coté là, merci à toi

    Répondre à ce message

  • Valentin

    Bonjour,

    Est-ce qu’il est possible d’ajouter dans le squelette des markers à une map GIS2 déjà existante ?

    Merci

    Répondre à ce message

  • 3
    Valentin

    Est-ce qu’il est possible avec GIS2 d’avoir des marker draggable. J’entends par là de prendre un marker et le déposer plus loin comme cela existe sur google map ?

    Répondre à ce message

  • Bonjour,

    Après de nombreux essais et recherches, je pose la question ici :
    Est-il possible de passer les coordonnées Gps directement à un modèle pour obtenir un point sur une carte ? Sans être obligé que ces coordonnées proviennent d’un article ou autre objet Spip.

    Merci de votre aide et vos réponses

    Pascal

    Répondre à ce message

  • 1

    Bonjour.

    Comme écrit récemment sur la liste spip@, je viens de publier mon tout premier plugin SPIP à travers le réseau de L’Heureux Cyclage. Basé sur GIS2, il sert à faire une carte de sites (en tant qu’objet site). D’où son nom pas charmant, mais explicite : carte de
    sites
    .

    Je n’ai pas utilisé pleinement les fonctionnalités de GIS2 dans ce plugin pour la raison (peut être pas bonne) que nous avions fait le choix préalable de l’utilisation de la librairie Leaflet pour bénéficier de certaines de ces fonctionnalités que ne permettait pas forcément
    d’emblée GIS2 :

    • comme notamment l’utilisation des groupes de calques ;
    • une gestion fine des marqueurs (dans le plugin, le marqueur sur la carte est le logo du mot clé associé ;
    • la possibilité de générer une légende ;
    • la possibilité de générer une liste de points gis, par pays et par ville ;
    • la possibilité d’afficher la carte en plein écran ;
    • la possibilité de récupérer un code iframe pour inclure une carte dans un autre site ;
    • ...
    •  

    Je suit l’évolution de GIS autant que possible et je crois que très honnêtement, le jour où il me permettra de faire ce que je fais avec « carte de sites », je ne verrai plus de raisons d’utiliser ce dernier.

    En tous cas, je remercie Bruno, pour son plugin GIS, Matthieu, pour le bouquin Programmer avec SPIP, et les gens de la présente liste ainsi que ceux d’irc, pour l’aide qu’ils m’ont apportée.

    Répondre à ce message

  • 1
    Graine de Jardins

    Bonjour, j’utilise avec bonheur depuis un an la version 1 de GIS (api google2). Lors de tests pour migrer vers la version GIS2 (api google3) je rencontre des difficultés. Après avoir désactivé les anciens plugins et activé les nouveaux, j’ai le message suivant dans l’admin :

    Erreur SQL 1054
    Unknown column ’lonx’ in ’field list’
    SELECT lat,lonx,zoom FROM spip_gis WHERE id_article=nouveau

    Est-ce ça parle à quelqu’un/e ? Y a t’il une procédure de migration particulière à respecter ?
    Merci pour pour le coup de pouce et encore bravo pour le plugin !

    (je suis en 2.1.13 avec agenda, champs extra, cfg, bonux, crayons, facteur, GIS2, afficher objets, couteau suisse, menu babbibel, nivo slider, saisie, sauv auto)

    Jacques

    • Graine de Jardins

      Aux temps pour moi !
      Des squelettes de la version 1 étaient restés dans le dossier « formulaires » et perturbaient GIS2.
      Je continue mes tests !

      Salutations, Jacques

    Répondre à ce message

  • 2

    Plugin magique !!

    Question toute bête mais je n’arrive pas à trouver ceci dans la doc : peut-on régler une icône par défaut (un truc perso) pour les marqueurs ? J’ai bien vu que l’on pouvait les personnaliser un par un, mais peut-on avoir un choix par défaut (et non l’icône google map en gouttelette) ? (sans retoucher le code !).

    Merci de votre aide.

    Julien

    • Salut, oui il est possible de définir une icône par défaut pour les marqueurs, il suffit de déposer ton icône perso dans :

      squelettes/images/marker_defaut.png

      Pour info l’icône par défaut est une image de 24x32 pixels.

      Je corrige cet oubli dans la doc tout de suite ;)

    • Ok, c’est tout simple.

      J’en profite, une autre question : Je souhaite faire un appel javascript à la fancyBox lors du clique sur le marqueur ? Possible avec une simple configuration ?

      Sinon je crois voir dans carte_gis.html la fonction jQuery.getJSON avec function(data) qui ajoutent des marqueurs... mais je ne vois pas la gestion de l’évènement du clic...

      Comment faire ?

      Merci encore pour votre aide.
      Julien

    Répondre à ce message

  • 1
    Jérôme

    Bonjour, et merci pour ce plugin.

    Je voulais savoir s’il était possible (et comment) de mettre en place dans la partie publique une boîte permettant de filtrer (par case à cocher par exemple) les marqueurs de points ?

    Merci pour votre réponse.

    • Salut, oui c’est possible. Voilà comment tu peux le faire :

      1. tu fais une boucle qui liste les mêmes points que ceux affichés sur ta carte
      2. dans cette boucle tu affiche des input checkbox avec l’id_gis de chaque point pour valeur
      3. tu détecte le changement d’état de chacune des checkbox en jquery et tu affiche ou masque le point correspondant à l’id_gis (qui est récupérable depuis l’attribut val de la checkbox)

      Chaque point de la carte est un élément du le tableau « markers » de l’objet de la carte. Pour chacun des points on peut trouver l’id_gis comme ceci : markers[x].attributes.marker

      Voilà le plan, amuse toi bien ;)

      ++

    Répondre à ce message

  • 1

    Bonjour,
    Peux-t’on effectuer à l’aide d’un formulaire dans l’espace public, une recherche de points par exemple avec le code postal ?
    merci d’avance !

    Répondre à ce message

  • 5
    Jérôme

    Bonjour,

    Je viens d’installer GIS2. Superbe plugin très pratique.

    J’ai voulu personnaliser les icônes des points. Mais bien que mes icônes soient en png avec transparence, ils apparaissent avec du blanc en fond.

    J’ai vu que ce problème avait l’air d’être réglé en septembre 2011 : http://www.spip-contrib.net/GIS2?debut_comments-list=40#forum449467.

    Comment corriger ce soucis.

    Merci d’avance

    • Salut, comme d’habitude : impossible de t’aider sans de lien vers la page en question.

      ++

    • Jérôme

      Pardon, j’avais oublié de la mettre : www.cani-rando74.com/Sites-d-activites.html

      on voit le blanc de chaque côté du marqueur ???

      Merci pour votre aide.

      Jérôme

    • Salut, j’ai passé un peu de temps sur ton problème et j’ai une solution. Le problème vient du format de ton image de logo qui est en png 24bits. L’outil pngcheck m’affiche pour ton image :

      gison4.png (28x28, 24-bit RGB, non-interlaced, 58.3%)

      Ce format peut poser problème avec certaines libraires graphiques. J’ai testé ton logo en local chez moi et il pose bien ce problème de perte de transparence après le passage des filtres graphiques de SPIP. En convertissant l’image en png 8bits je n’ai plus ce problème, je te la colle en pièce jointe de ce message.

      ++

    • Jérôme

      Merci pour le temps passé... je n’aurais jamais trouvé cela. Je test cela et je te tiens au courant.

      Jérôme

    • Jérôme

      Re-bonsoir b_b_, j’ai testé ton fichier en 8 bits. La transparence est bien au rendez-vous au centre mais elle s’inscrit dans un carré blanc non présent sur le fichier. http://www.cani-rando74.com/Sites-d-activites.html

      J’ai testé avec un autre marqueur en changeant le type de filtrage du png (j’ai mis automatique au lieu d’aucun) et là à priori pas de soucis...

    Répondre à ce message

  • 3

    Bonjour

    sous SPIP 2.1
    est-ce normal : http://www.atravers.phpnet.org/PCPI/spip.php?article12&var_mode=calcul

    J’ai dans mon article
    <carte_gis1|zoom=13|kml=19|type=satellite|no_control=oui|point=non>

    Ma carte ne comporte pas mon KML, pourtant dans mon code je trouve bien la fonction addOverlay()… et l’image en superposition ( dans le kml ) est à la bonne adresse. Aurais-je mal écrit mon modèle ?

    • Salut, ton kml me semble bien vide lorsqu’on tente de l’afficher sur googlemaps...

      http://maps.google.com/maps?q=http:%2F%2Fwww.atravers.phpnet.org%2FPCPI%2FIMG%2Fkml%2Fseveso.kml&hl=fr&sll=43.393448,5.004272&sspn=0.036236,0.055189&t=m&z=13

      De plus, mon navigateur l’affiche comme un fichier texte ici :

      http://www.atravers.phpnet.org/PCPI/IMG/kml/seveso.kml

      Tu n’aurais pas un problème de configuration du côté de ton serveur ?

      ++

    • Benoît

      Tiens, je n’ai pas été notifié de ta réponse, je croyais que je devais recevoir un mail de spip-contrib et du coup je ne me suis jamais connecté et n’ai pas vu ta réponse.

      C’est terrible ce que tu me dis là b_b car je ne sais pas quel peut être le problème côté serveur…
      aujourd’hui tu peux réessayer les 2 liens de ton message ci-dessus et tu verras qu’ils marchent très bien l’un et l’autre… enfin à cette heure :)

      Par contre j’ai mis à jour GIS 2 et les les modèles ont disparu, je n’ai plus de carte du tout. Dois-je revenir en arrière ou bien corriger les squelettes pour les rendre compatibles, sachant que je ferai ça plus tard de toute manière …je ne suis pas sur ce projet pour de vrai, en fait, là, heureusement.

    • Re,

      Je viens de regarder ton fichier kml à l’instant et celui-ci est encore envoyé comme un fichier texte à mon navigateur, contacte ton hébergeur pour voir avec lui quel est le problème. Tu peux aussi tenter d’ajouter la prise en charge correcte de ce type de fichier depuis le fichier htaccess de ton site (pas possible sur tous les types d’hébergement).

      Tu n’as plus de cartes affichées pour une raison tout simple : GIS n’est plus actif sur ton site. Active le de nouveau et cela devrait fonctionner un peu mieux :p

    Répondre à ce message

  • 4

    Salut. Je viens d’installer et réinstallé ce plugin prometteur mais je me heurte toujours sur le même problème. Je ne vois aucun marqueur et j’ai deux erreur « Filtre json_encode non défini plugins/gis2/modeles/carte_gis.html » ligne 13 et 26, a l’affichage de la carte. Les points sont bien crées dans la table, mais invisibles dans Edition/Points géolocalisés et sur les cartes générées. Je vois un marqueur uniquement dans Configuration/CFG/GIS. J’ai essayé dans l’article et dans le squelette.
    [(#INCLUREfond=modeles/carte_gis,objets=articles,id_rubrique=1,autocenterandzoom=oui,point=oui)]. J’ai bien /lib/mxn-gis-2.2.2 et les plugins nécessaires au fonctionnement.
    http://yeswecanada.free.fr/ avec SPIP 2.1.12 [18732]
    une idée ?.. Merci d’avance.

    • Salut, ton hébergement semble être en PHP/4.4.3-dev et si mes souvenirs sont bons json_encode n’est disponible qu’à partir de PHP5. Essaye d’activer php5 sur ton hébergement pour voir si ce la corrige le problème.

      ++

    • Merci pour ta réponse, mais l’hébergement free est en PHP Version 5.1.3RC4-dev. http://yeswecanada.free.fr/phpinfo.php5. Le pb semble être ailleurs...

    • je ne crois pas que ton site soit en php5 (les entête des pages renvoyées indiquent bien que c’est du php4). Tu peux le vérifier à l’adresse ecrire/ ?exec=info de ton site.

    • je pensais que phpinfo() envoyait la version installée sur le serveur... En effet ta commande indique php4. J’ai crée un .htaccess avec « php 1 » seul dedans (astuce trouvée sur ccm) et du coup ta commande me renvoi que c’est du PHP Version 5.1.3RC4-dev. mais les deux erreurs sont toujours présentent après avoir vidé le cache, et réinstallé le plugin et supprimé/recréé des points/articles...

    Répondre à ce message

  • 8

    Bonsoir,

    J’ai remarqué que sur la carto et plus précisément à l’ouverture d’une infobulle après le clic sur un marqueur, on est obligé de cliquer sur son bouton de fermeture sinon elle ne se ferme pas automatiquement à l’ouverture d’une autre infobulle. La version GIS1 fonctionnait ainsi il me semble, non ? J’ai un doute.
    Du coup, on peut rapidement se retrouver avec une multitude d’infobulle ouverte sur la carte.

    Avez-vous la même chose chez vous ?
    Merci ;)

    • Bonjour,
      J’ai remarqué la chose et cela ouvre un autre problème. C’est que la même bulle peut être ouverte un nombre infini de fois. La partie rigolote c’est qu’on voit seulement l’ombre qui se noircie de plus en plus.
      Plusieurs bulles différentes je trouve pas mauvais comme idée, mais la même bulle...

      Peut-être même créer une fonction qui nous permet de choisir le nombre de fenêtres qui peuvent être ouvertes en même temps. Similaire à « distance » ou « limit ».

      Bon dimanche
      G

    • Je suis chaud pour bosser toute l’hiver sur cet infobulle, mais je sais pas où chercher dans le plugin.

      J’ai trouvé un bout de code prometteur sur MAPSTRACTION v2.0.17 dans le fichier mxn.googlev3.core.js

      openBubble: function() {
      		var infowindow = new google.maps.InfoWindow({
      	   		content: this.infoBubble
      		});
      		google.maps.event.addListener(infowindow, 'closeclick', function(closedWindow) {
      			// TODO: set proprietary_infowindow to null, fire closeInfoBubble
      		});
      		this.openInfoBubble.fire({'marker': this});
      		infowindow.open(this.map,this.proprietary_marker);
      		this.proprietary_infowindow = infowindow; // Save so we can close it later
      	},
      	
      	closeBubble: function() {
      		if (this.hasOwnProperty('proprietary_infowindow')) {
      			this.proprietary_infowindow.close();
      			this.closeInfoBubble.fire({'marker': this});
      		}
      	},
      
      	hide: function() {
      		this.proprietary_marker.setOptions({visible:false});
      	},
      
      	show: function() {
      		this.proprietary_marker.setOptions({visible:true});
      	},
      
      	update: function() {
      		var point = new mxn.LatLonPoint();
      		point.fromProprietary('googlev3', this.proprietary_marker.getPosition());
      		this.location = point;
      	}
      	
      },

      mais je suis encre loin du but...
      des conseilles ?

      G

    • Ce bug semble être résolu dans la lib Mapstraction :

      https://github.com/mapstraction/mxn/commit/aad681215df3184953b6b209061315e46c32ac14

      Le patch sera intégré à GIS prochainement.

    • Hello !

      Est-ce que chez vous, ce problème est résolu car chez moi j’ai toujours l’affichage multiple des infobulles si je clique sur plusieurs marqueurs successivement.
      Bruno, d’après tes dires, le bug a bien été corrigé ?! Si qq’un peu m’éclairer

      Sebbesac

    • Oui le bug a bien été corrigé, mais attention je parle bien de ce problème précis :

      J’ai remarqué la chose et cela ouvre un autre problème. C’est que la même bulle peut être ouverte un nombre infini de fois.

      Le fait qu’on puisse ouvrir plusieurs infobulles en même temps ne me semble pas être un bug mais une fonctionnalité de Mapstraction (c’est aussi le comportement natif des cartes qui utilisent google maps api v3).

      Il faudrait peut être envisager un paramètre spécifique pour le modèle de la carte afin de pouvoir spécifier qu’on ne souhaite pas pouvoir ouvrir plusieurs infobulles en même temps. Si quelqu’un est motivé pour proposer un patch, pas de problème « you’re welcome » ;)

      Pour info, je vais publier une nouvelle version de GIS d’ici la fin de la semaine si j’ai un moment pour ça.

    • Et voilà, la version 2.2.2 de GIS ajoute un nouveau paramètre autofocus_marker au modèle de la carte pour permettre de limiter l’affichage à une seule infobulle.

      http://zone.spip.org/trac/spip-zone/changeset/58348

      Dommage qu’on propose pas un système pour offrir des bières aux développeurs sur contrib, ça me permettrait de boire des coups à l’oeil parfois ^^

      ++

    • Ok, nickel le fait de gérer ca avec un paramètre !
      Heu Bruno, ce n’est plus des bières qu’on devrait te payer mais des fûts complets ;), tu gères grave !
      Merci encore et encore...

    • Hello Bruno,
      Merci pour cette nouvelle option, je vais la tester asap !

      Pour les bières c’est pas un soucis, donnes moi l’adresse / tél. de ton bar préféré et je m’occupe du reste.

      PS : Pour nos affaires, si c’est toujours ok pour toi, je te relance très bientôt. J’étais en Corée jusqu’à maintenant, mais je vais bientôt me poser deux mois (avril, mai) à St-Nazaire... C’est pas trop loin de chez toi je crois ?

      A bientôt,

    Répondre à ce message

  • 3

    Bonjour,
    je n’arrive pas à afficher les controls de zoom sur mes cartes, ni en utilisant le modèle dans les articles, ni en utilisant celui des squelettes. J’utilise pourtant bien le paramètre control_zoom=large.
    merci

    • Salut !

      J’ai le même problème que toi, j’avais fais un post là-dessus il y a qq jours (voir post) et avait fait la même remarque sur une inclusion.

      ++

    • Salut, ce bug est corrigé dans la version 2.2.3 du plugin :

      http://zone.spip.org/trac/spip-zone/changeset/58713/_plugins_/gis

      Pour info, le bloc Sur le web présent sur cette page vous permet de vous tenir au courant des modifications effectuées sur le code du plugin.

      ++

    • sebbesac

      Salut Bruno,

      Ok merci, oui en effet je regarde de tps en tps pour voir les correctifs. Encore du bon boulot :)
      Merci beaucoup
      ++

    Répondre à ce message

  • 3

    Bonjour,
    J’ai collé ce bout de code dans mon squelette article.html pour afficher la carte sil ya un point lié sinon la carte ne s’affiche pas et ca marche :

    <BOUCLE_gis(GIS){id_article}>
    [(#INCLURE{fond=modeles/carte_gis,
    autocenterandzoom=oui,
    zoom=17,
    id_article})]
    </BOUCLE_gis>

    Mais mon problème si je mets 3 points sur une carte par exemple, la carte s’affiche avec les 3 points (nickel) mais il ya une partie blanche dans l’article et mon firebug me montre que c’est le <div id="map1"> qui s’affiche 3 fois. Alors je me demande qu’est ce que j’ai loupé dans ma boucle ? est ce que quelqu’un peut m’aider please ?

    • Héhé, il faut que tu limites ta boucle comme ceci :

      <BOUCLE_gis(GIS){id_article}{0,1}>

      Et hop ;)

    • Je me réponds, il fallait ajouter {0,1} dans la boucle gis :

      <BOUCLE_gis(GIS){id_article}{0,1}>
      [(#INCLURE{fond=modeles/carte_gis,
      autocenterandzoom=oui,
      zoom=17,
      id_article})]
      </BOUCLE_gis>
    • b_b excuse j’avais bu :) mais j’ai réponde avant ton message :) je m’excuse du dérangement et merci pour tout

    Répondre à ce message

  • 1

    Bonjour,
    J’aimerai savoir s’il ya possibilité de changer le modele gis de tel sorte que autocenterandzoom soit oui par defaut pour éviter d’avoir ca :

    <carte_gis|zoom=17|objet=articles|id_article=X|autocenterandzoom=oui>

    dans le texte de l’article

    • Oui tu peux le faire en copiant le modèle en question dans squelettes/modeles et en l’adaptant à tes besoins. Par contre tu devrais faire attention à reporter les modifications du modèle dans ta version perso lors des prochaines mises à jour du plugin.

      ++

    Répondre à ce message

  • Bonjour,

    Ce plugin est magnifique.

    Comment faire pour qu’un clic sur l’icône d’un point sur la carte déclenche l’exécution de l’article auquel il est rattaché ?

    Merci pour des pistes événtuelles.
    Pascal

    Répondre à ce message

  • 7

    J’ai voulu essayer OpenLayers, mais le controle de Zoom ne s’affiche pas quelque soient mes tentatives.

    Le problème est-il connu ? Comment faire ?

    • Salut, comme d’habitude il nous faut plus d’infos pour t’aider :

      • quel code utilises-tu ?
      • quelle est l’adresse de la page où l’on peut observer ton bug ?

      ++

    • Coté code, j’’ai essayé avec autant de combinaison des paramètres que j’ai pu penser, sans résultat
      Le code de base reste (dans une bouche articles)

      <BOUCLE_gis(GIS){id_article}>
      [(#MODELE{carte_gis}{objets=articles}{lat=#LAT}{lon=#LON}{zoom=15}{height=250px}{type=plan}{point=oui})]
      </BOUCLE_gis>

      Ce qui est frustrant, c’est que l’outil de zoom s’affiche sans soucis sur le plan dans la partie privée, mais rien de tel dans la partie publique.
      Même la molette est fonctionnelle.

      Desolé, le site est en localhost, et je n’ai pas le droit de rendre accessible, sauf si tu me file ton IP en direct pour l’autoriser explicitement.

    • Ha ben dommage, comme je le signale dans le PS de cet article, impossible d’aider sans lien vers la page qui pose problème. Bon courage ++

    • Comme signalé, si tu m’envoies ton IP, tu pourras regarder. Je tache te te capter sur le chat.

    • Bonsoir, est-ce que c’est possible Dut que tu mettes ici comment tu as solutionné ton pb avec control_zoom ?Je rencontre le même... Merci

    • Bonjour,
      b_b sur le chat à confirmé le problème et à commité le correctif ici même.

    • Merci pour l’info et surtout maerci pour le correctif !

    Répondre à ce message

  • 2

    Bonjour,

    je souhaiterais utiliser ce plugin avec openlayers, mais le plugin open_layers n’est plus dispo sur la zone... Y a-t-il une autre façon de faire ?

    merci

    • Salut, le plugin openlayers n’est plus nécessaire, GIS2 importe automatiquement la librairie Mapstraction qui permet de gérer les cartes des différents fournisseurs listés au début de cet article.

      ++

    • Super, merci !

    Répondre à ce message

  • 1

    Je viens de mettre à jour le plug sur mon site, tout fonctionne bien :-)

    Par contre, il ne faudrait pas qu’après avoir télécharger la nouvelle librairie, il supprime l’ancienne ?
    Car là, nous sommes obliger de le faire via FTP, cela ne sert à rien qu’elle reste, surtout quand il n’y a pas d’autres plug qui l’utilise

    • Salut,

      Par contre, il ne faudrait pas qu’après avoir télécharger la nouvelle librairie, il supprime l’ancienne ?

      C’est le comportement normal de SPIP de ce côté (c’est le core qui gère les chargements des libraires). Si tu considères que c’est un bug il faut le signaler sur la liste spip-dev. Cela ne pose pas de problème technique, mis à part le fait que les vielles libs restent sur le serveur. Mais bon, à moins de 200Ko la lib ça devrait pas trop bouffer d’espace.

      ++

    Répondre à ce message

  • 2

    Bonjour tout le monde,
    J’utlise ce plugin dans les onglets du CS (Découpe en pages et onglets), mais la carte ne se charge pas ! voir image jointe . Par contre avec google map quand je placé le #INSERT_HEAD aprés le #TEXTE la carte s’affiche sans problème mais avec GIs2 impossible

    • J’ai quelque chose de tout à fait similaire :
      http://www.spip-contrib.net/Des-blocs-depliables#forum454552

      J’en avais après les blocs dépliables, car c’est dans ce contexte que ça apparait.

      J’ajoute qu’avec les fonds openLayer, je ne rencontre par ce soucis.

    • Merci pour votre réponse, c’est vrai qu’avec openlayer on dirait le problème disparait, mais serait bien de l’avoir en google maps v3. Est ce que quelqu’un d’autre peux nous aidé à corriger ce problème ? Merci

    Répondre à ce message

  • 6

    Bonjour et bravo pour ce plugin qui marche merveilleusement bien.

    Est-il possible de limiter les objets auxquels le plugin ajoute le bloc GIS ?
    Exemple : je souhaiterais que dans l’espace privé, le bloc GIS n’apparaisse que pour l’édition des auteurs.
    Il y a probablement un fichier (ou plus) à modifier...

    Merci z’en tout cas.

    • Apparemment dans le SVN, Rastapopoulos avait déjà étudié la question (Changeset 54899), mais il semble que sa contribution n’ait pas encore été intégrée...

    • Salut, oui cette fonctionnalité n’est pour l’instant présente que dans la version dev de GIS compatible avec SPIP 3. Il n’y a plus qu’à attendre que quelqu’un soit motivé pour la reporter sur la version pour SPIP 2.1.

      ++

    • Philippe B.

      Bonjour,

      Dans la continuité de cette idée, est-il envisagé d’étendre gis à d’autres objets, en particulier aux événements du plugin Agenda ?

      Merci.

    • Salut, comme l’indique la description du plugin, il est déjà possible d’attacher des points à tous les objets de SPIP (ceux du core et les autres). Par défaut GIS ne s’insère que sur les objets du core. Je ne pense pas que ça soit à GIS de décider s’il doit afficher le bloc d’édition de carte sur les objets des autres plugins.

      Le code qui permet d’afficher le bloc de GIS sur la page d’un objet passe par le pipeline affiche_milieu et se trouve ici :

      http://zone.spip.org/trac/spip-zone/browser/_plugins_/gis/branches/v2/gis_pipelines.php#L89

      Pour afficher le bloc de GIS sur les événements de l’agenda (ou sur des patates ou des chats) il faut ajouter une déclaration similaire dans un fichier d’options perso (ou celui du plugin qui le nécessite).

      ++

    • Philippe B.

      Bonjour,

      Merci b_b pour ta réponse et ce plugin...

      Voici le code que j’ai ajouté à mon fichier mes_options.php pour que GIS soit utilisable avec les événements du plugin Agenda2 :

      $spip_pipeline['affiche_milieu'] .= "|nom_de_la_fonction";
      
      function nom_de_la_fonction($flux){
      	if ($flux['args']['exec']=='evenements_edit'){
      		$objet = 'evenement';
      		$id_objet = $flux['args']['id_evenement'];
      
      		if ($objet && $id_objet) {
      			if (1) {
      				$contexte['objet'] = $objet;
      				$contexte['id_objet'] = $id_objet;
      				$flux['data'] .= "<div id='pave_gis'>";
      				$bouton = bouton_block_depliable(_T('gis:cfg_titre_gis'), false, "pave_gis_depliable");
      				$flux['data'] .= debut_cadre_enfonce(find_in_path('images/gis-24.png'), true, "", $bouton);
      				$flux['data'] .= recuperer_fond('prive/contenu/gis_objet', $contexte);
      				$flux['data'] .= fin_cadre_enfonce(true);
      				$flux['data'] .= "</div>";
      			}
      		}
      	}
      
      	return $flux;
      }

      Remplacer le nom_de_la_fonction par ce que vous voulez (attention à ne pas choisir un nom dont le préfixe correspond à un des plugins installés sur votre spip).

    • Merci pour ce code ! effectivement cela permet de localiser une entrée d’agenda.

      Par contre le marqueur ne n’affiche pas lors de la restitution

      mon code :

      <BOUCLE_agenda_gis(GIS){id_evenement}>	   
      [(#MODELE{carte_gis}{objets=evenements}{lat=#LAT}{lon=#LON}{zoom=16}{height=250px}{type=plan}{point=oui})]
      </BOUCLE_agenda_gis>

    Répondre à ce message

  • Hello !

    Est-ce que vous arrivez à utiliser le paramètre control_zoom avec large ? Car chez moi il ne l’interprète pas et affiche toujours le zoom dans sa version petite.
    Voici mon code :

    [(#INCLUREfond=modeles/carte_gis,
    objets=rubriques,
    id_secteur=1,
    zoom=8,
    width=750px,
    height=260px,
    type=relief,
    control_zoom=large,
    zoom_molette=non
    )]

    Merci à vous pour les pistes éventuelles... :)
    Sebbesac

    Répondre à ce message

  • 1

    Salut !

    Merci pour ce plugin. j’ai vraiment plaisir à l’utiliser.

    Y-a quand même des choses que je souhaiterai personnaliser.

    Y-a moyen de surcharger, par exemple, le fichier ./json/gis_sites.html , avec un autre squelette ??

    Si oui, comment ?

    J’ai essayé en plaçant un fichier avec le même nom et la même arborescence dans un plugin différent, et ... pas bon.

    A suivre ...

    • Salut Ludo,

      Y-a moyen de surcharger, par exemple, le fichier ./json/gis_sites.html , avec un autre squelette ??

      Oui, comme l’indique la doc, le paramètre « objets » du modèle est prévu pour ça. S’il vaut toto alors le fond utiliser pour alimenter la carte sera json/toto.html.

      J’ai essayé en plaçant un fichier avec le même nom et la même arborescence dans un plugin différent, et ... pas bon.

      Oui c’est aussi possible, mais un plugin qui veut surcharger un autre plugin doit le déclarer dans son plugin.xml avec la balise utilise.

      http://programmer.spip.org/Gestion-des-dependance

      ++

    Répondre à ce message

  • 7

    Bonjour,
    Ce plugin me parait excellent et semble correspondre à mon besoin.

    Je suis en train de tester le site. Malheureusement, j’ai un souci :
    -  J’ai installé le plugin,
    -  J’ai mis une adresse dans l’espace privé et la carte apparait correctement dans l’espace privé.
    -  Par contre, sur le site public... La carte qui apparait, c’est celle qui est par défaut... et non celle que je vois dans l’espace privé.

    Voici mon site de test avec l’article fautif :
    http://messemonde.free.fr/SPIP2/spip.php?article7

    C’est un site qui utilise les crayons, donc vous pouvez voir ce que j’ai mis comme paramètre pour faire apparaitre la carte en cliquant sur le petit crayon à droite du champs.

    Dans l’article en lien, En bas, j’ai mis une image de l’écran que je vois dans la partie privé et je voudrai faire apparaitre la carte de la même manière dans la partie publique.

    • Salut, la première chose à faire est de configurer la position par défaut des cartes depuis la page de configuration du plugin.

      Ensuite, il faut que tu passes la paramètre adéquat à ta carte pour que celle-ci se centre automatiquement sur le point que tu souhaites afficher : autocenterandzoom=oui devrait t’être utile.

      Pour info, je ne peux pas voir le code que tu as utilisé sur ton site (les crayons sont réservés aux personnes enregistrées par défaut).

    • Tout d’abord merci pour cette réponse rapide.

      Le paramétrage du crayon semble fonctionner pour tous ; c’est pour faire une espèce de wiki-annuaire (je viens de tester avec un autre navigateur où je ne suis pas connecté et j’ai vu le crayon en haut à droite du champ modifiable)

      Pour revenir à GIS, je viens d’ajouter le paramètre autocenterandzoom=oui et voici les paramètres que j’ai mis :
      <carte_gis3|zoom=7|type=carte|control_zoom=small|autocenterandzoom=oui>

      Maintenant la carte se centre sur l’ensemble des points que j’ai mis sur le site et non sur le point 3 associé à l’article en cours, comme on voit dans la partie privée.

      Voir ci-dessous le paramétrage général de GIS2

    • Je précise ma demande : Dans chaque article, j’ai une adresse. Grâce au géocodage, j’obtiens un point qui affiche un marqueur.

      Dans la partie publique, je voudrais afficher une carte centrée sur le marqueur correspondant à l’article. Cela doit être possible et même surement facile, vu que cela fonctionne dans la partie privée ?

    • Salut, dans ce cas il faut spécifier quel points tu veux afficher sur ta carte avec les paramètres suivants : objet=articles|id_article=7 (tout ça est dans la doc ci-dessus bien sûr).

      Mais si tu veux automatiser tout ça il serait pus simple d’appeler la carte directement depuis tes squelettes et non pas depuis le texte de l’article.

      ++

    • YEEES ! Merci beaucoup.

      Comme j’utilisai le modèle par défaut, j’ai lu la doc et je me basai sur le tableau « Paramètres du modèle » qui ne traite pas de ces paramètres.

      Oui, pour l’automatisation, je vais le faire. Je me débrouille avec les squelettes spip. Mais je voulais d’abord valider les fonctionnalités tels que les crayons et GIS2.

      Merci pour ta réactivité et je te prie de m’excuser pour le dérangement.

      Bonne soirée
      Emmanuel

    • Cool que ton problème soit réglé.

      je me basai sur le tableau « Paramètres du modèle » qui ne traite pas de ces paramètres.

      Calomnie ! ^^ Le tableau de description des paramètres du modèle mentionne bien le paramètre objets et un paragraphe dédié est situé juste en dessous du tableau ;)

      ++

    • Oui tu as raison ; c’est juste que je n’avais pas compris l’enchaînement.

    Répondre à ce message

  • J’ai juste oublié de demander : aider moi s’il vous plait, dites moi ce que j’ai mal fait.

    Merci par avance

    Emmanuel

    Répondre à ce message

  • 2

    Salut

    Magnifique intégration, bravo !

    Concurremment installé avec le plugin agenda, j’ai eu un soucis quand j’ai voulu afficher l’adresse d’un point sur ma carte. La boucle de json/gis_articles.html allait chercher l’adresse de l’événement au lieu de celle du point gis.

    En ajoutant les codes suivantes dans le fichier gis_fonctions.php, j’ai pu régler ce problème :
    -  ligne 118 :

    $boucle->select[]= 'gis.adresse AS adresse_gis';

    -  ligne 166ss :

    /**
     * Balise #ADRESSE_GIS : retourne le chap adresse du point
     * Necessite le critere {gis} sur la boucle
     *
     * @param unknown_type $p
     */
    function balise_adresse_gis_dist($p) {
    	return rindex_pile($p, 'adresse_gis', 'gis');
    }

    Dès lors il est possible d’appeler la balise #ADRESSE_GIS en levant l’ambiguïté avec la balise #ADRESSE de événement.

    olé

    Répondre à ce message

  • Christophe D

    Bonjour

    J’ai peut-être (sans doute ?) mal cherché, mais malgré mes efforts, je n’ai pas trouvé le moyen de changer l’image servant de marqueur. Le remplacement du fichier marker.png dans le répertoire images ne semble produire aucun effet...

    J’ai donc raté une marche, mais laquelle ?

    Répondre à ce message

  • 2

    Hello !

    Merci beaucoup pour ce plugin particulièrement efficace.
    J’ai utilisé GIS1 sans problème sur mon instal de spip, mais malheureusement j’ai un problème au moment de l’instal de GIS2, la page de config bugue (cf capture)
    Voici ma config :
    SPIP 2.1.12
    Afficher Objets 1.2.1 - en test
    CFG 1.16.0 - stable
    GIS 2.2.0 - en test
    Saisies pour formulaires 1.20.2 - en test
    SPIP Bonux 2.3.0 - stable
    SPIP-Listes 2.234.2 - en test

    J’ai bien sûr désinstallé Escoitar Gis Plugin et GoogleMap Api avant d’installer GIS 2.2.0...
    Est-ce qu’il s’agit d’une incompatibilité entre les versions de plugins en test ?

    Merci d’avance !

    • la capture de la page de config

    • Si ça peut en aider certains :
      Il faut modifier l’affichage de la carte avec le bouton + sur la droite, et ensuite faire défiler la sélection des champs de la page avec la touche TAB pour sélectionner un autre type de carte...

      Je crois que ce bug apparaît lorsqu’on passe de GIS1 à GIS2 et que dans la BDD le champ qui gère le choix du type de carte est sur GoogleMapsV2, l’ordre des types de carte n’est pas le même dans GIS2 et ça bugue...

    Répondre à ce message

  • 5

    Hello les spipeurs ;)

    Un petite question pour commencer l’année sur cette excellent plugin.
    Y’a-t il possibilité de personnaliser la couleur des traces KML (lignes) importées sur les articles ? Visiblement par défaut GIS2 affiche un bleu avec une opacité.
    Le KML en question apparaît bien d’une autre couleur différente (orange) sur GoogleMap !

    Si vous avez des pistes.. merci beaucoup

    Sébbesac

    • Salut, GIS (ou Mapsatraction) ne « touche » pas aux kmls qui sont affichés. La couleur des tracés doit juste avoir une couleur par défaut si celle n’est pas spécifiée (possible que cette couleur par défaut varie suivant le fait qu’on l’affiche sur une carte sur son site perso ou directement depuis le site de googlemaps).

      Si tu regardes cette page de démo tu verras vien que la carte affiche un tracé rouge :

      http://labo.eliaz.fr/spip.php?article9

      Et le même kml s’affiche bien aussi depuis le site de googlemaps :

      http://maps.google.com/maps?q=http:%2F%2Flabo.eliaz.fr%2FIMG%2Fkml%2Ftrip.kml&hl=fr&sll=48.338835,-4.768759&sspn=0.033148,0.055189&vpsrc=0&t=m&z=10

      Donc pas de problème dans GIS de ce côté ;)

      ps : le kml est attaché à l’article si tu veux étudier son contenu.

    • Hello b_b !

      Merci pour ta réponse. J’ai scruté le KML qui est joint à ton article et en fait il contient une URL pointant vers le tracé via GoogleMap. Il paraît logique que les 2 tracés (sur GIS et sur GoogleMap) soient identiques.
      Par contre, mes KML ressemble plutôt à :

      <?xml version="1.0" encoding="UTF-8"?>
      <kml xmlns="http://earth.google.com/kml/2.2">
      <Document>
        <name>Tracé 01</name>
        <description><![CDATA[]]></description>
        <Style id="style1">
          <LineStyle>
            <color>8C000099</color>
            <width>5</width>
          </LineStyle>
        </Style>
        <Placemark>
          <name>Ligne 1</name>
          <description><![CDATA[]]></description>
          <styleUrl>#style1</styleUrl>
          <LineString>
            <tessellate>1</tessellate>
            <coordinates>
              6.805329,47.483742,0.000000
              6.808848,47.483742,0.000000
              6.812625,47.482815,0.000000
              6.816745,47.483162,0.000000
              6.846871,47.459549,0.000000
            </coordinates>
          </LineString>
        </Placemark>
      </Document>
      </kml>

      Comme tu le vois, il y a un paramètre pour la couleur de la ligne. Quand je charge le KML sur GoogleMap, la ligne est rouge et quand j’ajoute ce même KML à GIS, la ligne devient bleu !?

      Je continue de fouiller, je pense que la solution n’est pas si loin !

      A+

    • Salut, ben comme je te disais « ça marche chez moi © » et je t’ai filé un lien vers une page de démo ;)

      Maintenant pour t’aider plus il me faudrait un lien vers une page de démo chez toi ++

    • Hello Bruno,

      Alors voici le KML en question à partir de GoogleMap directement (deux couleurs rouge et rose) :
      http://maps.google.fr/maps/ms?msid=213519832106752904117.0004b6448f6d52aeb3b5a&msa=0&ll=46.760914,5.62088&spn=0.036749,0.090895

      Pour le lien sur le site utilisant GIS2, est-ce que je peux t’envoyer le lien en privé car le site est en pré-prod actuellement ?

      Thanks !

    • Salut Bruno !

      Euuhhh comment dire ! Je lance ma page GIS aujourd’hui et comme par magie les bonnes couleurs apparaissent. J’avoue ne pas tout comprendre mais je suppose que c’est un problème de cache.
      Sur mes tests, je vidais pourtant le cache de SPIP à chaque fois dans l’admin, c’est sûrement Firefox qui devait garder une trace des anciens KML que je chargeais.

      Merci quand même ton aide !
      Sebbesac

    Répondre à ce message

  • 2

    Bonjour b_b

    Je me suis aperçu d’un petit bug sur le « alt » qui apparait en pointant sur un point de carte :
    Si le titre du point comporte une apostrophe «  », le label qui apparait affiche & # 8217 ; (sans les espaces)

    Je pense que c’est un problème « d’échappement » de l’apostrophe qui a été oublié au niveau du javascript ?

    voir en ligne

    Merci encore pour ce superbe plugin...

    JeanLuc

    Salut b_b

    J’ai mis en « commentaire » ma précédente demande pour rappel. As-tu eu des réponses usr github concernant ce petit bug de Mapstraction ?

    A+

    JLuc

    Répondre à ce message

  • 7

    Bonjour, pourriez vous confirmer la version PHP5 minimum :
    5.2, 5.3 ?
    Il semble qu’avec le 5.1 de chez Free tout ne soit pas fonctionnel : OK dans le paramétrage du plugin mais pas d’affichage dans Édition/points géolocalisés

    • Salut, quelle erreur obtiens-tu exactement ?

      Free n’est pas réputé pour fournir un hébergement satisfaisant pour SPIP (beaucoup de gens y rencontrent des problèmes). Tu devrais peut être essayer de trouver un autre hébergeur.

      ++

    • Bonjour,
      J’ai d’abord testé en local puis basculé sur Free, je ne dispose de rien d’autre pour mon association.

      Ce qui marche :
      la config de GIS : j’ai ma carte de base avec punaise google (rouge)

      <carte_gis1|zoom=12|type=carte|control_zoom=large|height=600px> utilisé pour la description du site m’affiche la carte en partie publique mais sans punaise :
      http://paysauraytransition.free.fr/

      Édition/points géolocalisés : j’ai la carte de la config (sans punaise)
      Créer un nouveau point fonctionne très bien

      Une fois créé, cliquer sur afficher ne fait rien, modifier affiche le point mais sans la carte et j’ai parfois (mais de façon aléatoire) :
      filtre json_encode non défini en ligne 31, 33, 37, 54,56, 60 pour carte_gis_preview.html

      Le PHP de Free est 5.1
      De fait les fonctions js_encode ne sont disponibles qu’à partir de PHP 5.2 :
      Il existe néamoins des librairies pour arranger l’affaire :
      http://www.boutell.com/scripts/jsonwrapper.html
      http://include-once.org/p/upgradephp/

      J’ai installé la première et fait un appel depuis les fichiers de GIS mais je suis là à l’extrême limite de mes compétences et j’ai échoué.
      Des essais sans squelette ni aucun plugins (sauf ceux demandés pour GIS2) n’ont rien changé.

    • J’ai fini par trouver comment faire :-)

      1) installer dans le répertoire config de spip upgrade.php qu’on trouve ici :
      http://include-once.org/p/upgradephp/

      2)ajouter dans mes_options.php :

      <?php include("upgrade.php"); ?>

      Encore bravo pour ce superbe plugin

    • Content que tu t’en sois sorti, l’astuce sera peut être utile à d’autres personnes. Mais cela m’étonne car SPIP fournit ce qu’il faut pour ce cas de figure :

      http://core.spip.org/projects/spip/repository/entry/branches/spip-2.1/ecrire/inc/json.php#L65

      Quelle version de SPIP utilises-tu ?

      ++

    • j’utilise la version 2.1.12
      Merci pour le lien :
      Je viens de regarder dans ecrire/inc et il y a bien un json.php
      Mais il est utilisé par défaut ou bien il faut l’appeler ?
      Intérêt d’une fonction pour faire du json si c’est inclus dans PHP 5.2 ?
      Je testerai sur un autre site (chez Free) si j’ai besoin de gis2 et je reviendrai dire bonjour...

    • Salut,

      Mais il est utilisé par défaut ou bien il faut l’appeler ?

      Ces fonctions sont appelées par défaut si json_encode de php n’est pas disponible sur le serveur.

      Intérêt d’une fonction pour faire du json si c’est inclus dans PHP 5.2 ?

      L’intérêt est justement de gérer des cas comme le tiens lorsque json_encode n’est pas dispo.

      ++

    • J’ai fini par trouver comment faire :-)
      1) installer dans le répertoire config de spip upgrade.php qu’on trouve ici :
      http://include-once.org/p/upgradephp/
      2)ajouter dans mes_options.php :

      <?php include("upgrade.php"); ?>

      Encore bravo pour ce superbe plugin

      J’ai le même problème (je suis aussi sur Free...) et je l’ai résolu en appliquant la recette ci-dessus.

      Merci au créateur de ce magnifique plugin et aussi au découvreur de cette solution.

    Répondre à ce message

  • 4

    Bonjour à tous,

    Super plugin ! Beau travail.

    J’ai une question au niveau des infos bulles, car j’ai un décalage entre celles ci et les pointeurs ce qui fait que le l’ombre est décalée en haut et à gauche par rapport au pointeur.
    Est-ce normal, sinon comment peut-on y remédier ?
    Une petite image pour représenter tout cela :

    • Salut, je recolle ici le message affiché au dessus de ce forum :

      Important : si vous souhaitez qu’on puisse vous aider lorsque vous postez dans le forum de cet article, pensez à fournir un lien vers le site en question sans quoi il nous sera impossible de vous dépanner.

      Sans lien vers la page en question on ne pourra pas t’aider à trouver la cause de ton problème.

      ++

    • Salut, pas la peine de me contacter en privé pour me filer l’url du truc à débuguer :p

      Ton problème vient tout simplement de ta css perso qui surcharge les styles des balise img. Je ne vais pas filer un lien vers celle-ci ici vu que ton projet professionnel semble imposer le secret ;)

      ++

    • Merci. Je n’y avais pas pensé.

    • C’est img{ max-width:100% } qui pète Google Maps (dans pas mal de reset ou de grid)

    Répondre à ce message

  • 1

    Bonjour,

    Je voulais savoir si il était possible de créer des groupes de marqueurs. En fouillant dans le code, je n’ai rien vu de tel mais j’ai trouvé en cherchant sur internet une librairie YM4R qui utilise Mapstraction et qui implémente cela. Est-il possible de l’intégrer dans GIS2 ?

    • Salut, rien de prévu de ce côté pour l’instant. On pourrait imaginer de permettre l’ajout de mot-clé aux points dans la version pour SPIP 3 mais cela serait un peu chaud à gérer car on peut déjà lier des points à des mots (points attachés à desmots VS mots attachés à des points).

      Je ne connais pas YM4R qui semble être codé en ruby (langage que je n’ai jamais utilisé). Bref je peux pas te renseigner sur cette lib, tiens nous au courant si tu arrives à en faire quelque chose ;)

      ++

    Répondre à ce message

  • 1

    Bonjour b_b,

    Je cherche différents exemples de « gis_articles.html » pour essayer de comprendre comment créer mon d’infobulle de rêve. Et aussi, pour comprendre comment je pose des ombres sous mes nouveaux marqueurs ? Avec un KML ? Et comment je gère mes ALT, ils sont pas très sexy pour l’instant.

    mon lien : http://chapuisat.com

    Je suis un peu perdu...

     :)

    PS : Si j’y arrive vraiment pas, j’aimerais bien engager quelqu’un pour finaliser ma map. Intéressé ?

    • Salut, et bien il y en a des questions dans ce message ;)

      comment créer mon d’infobulle de rêve

      Ben... je sais pas encore lire dans les rêves des gens (mais j’y travaille). Le contenu des infobulles est généré par le contenu de l’attribut description des items du squelettes JSON qui alimente la carte.

      comment je pose des ombres sous mes nouveaux marqueurs ?

      Les marqueurs persos ne peuvent pas bénéficier d’ombre perso car cette fonctionnalité n’est pas intégrée dans Mapstraction (vu que cette fonction n’est pas dispo dans toutes les apis de carto).

      Et comment je gère mes ALT, ils sont pas très sexy pour l’instant.

      Tu dois parler des titles attribués aux marker (je pense). J’ai envoyé une nouvelle version de la focntion addJSON sur github (afin de corriger ce problème) mais elle n’a toujours pas été intégrée à Mapstraction. Je crois que je vais finir par l’intégrer tout de même dans le fork qu’on utilise pour GIS. Mais bon en attendant ça peut se régler en bidouillant un peu ;)

      PS : Si j’y arrive vraiment pas, j’aimerais bien engager quelqu’un pour finaliser ma map. Intéressé ?

      Pourquoi pas vu que ton projet semble sympa.

      ++

    Répondre à ce message

  • 3

    hello b_b, this plugin is really cool ...i’m pretty new to spip and i dont understand a single word in french, so the documentation as i have seen it doesnt help me too much ...my question for you is : where exactly can i specify the addres of a not included WMS server, since i run my own map service ?

    ...thanks

    Répondre à ce message

  • 1

    Bonjour,

    Sur spip3 et Gis3, la page cfg de configuration n’affiche aucun formulaire de config (et aucune erreur apparente) avec cette mention laconique :
    Aucun champ trouvé dans gis

    Une idée ?

    En tous cas bravo pour cette nouvelle mouture formidable du plugin !

    RB

    • Salut, GIS pour SPIP 3 est en développement et pas encore diffusé. Du coup le SAD n’est pas assuré et il vaut mieux utiliser la liste spip-zone pour remonter les éventuels bugs.

      ++

    Répondre à ce message

  • 8

    Bonjour,
    j’essaie d’utiliser ce fabuleux plugin mais j’ai visiblement loupé quelque chose !

    La carte ne s’affiche pas dans ma page et firebug m’indique :
    mxn is not defined
    map5 = new mxn.Mapstraction(map_container,’googlev3’) ;

    Qu’est-ce que cela signifie ?
    Comme je tourne en rond depuis 48h et que je suis loin d’être une experte... je ne trouve pas la réponse toute seule !
    Ma version de spip : SPIP 2.1.11

    D’avance merci

    • Salut, sans lien vers la page qui pose problème cela va être difficile de t’aider.

      L’erreur que tu cites semble indiquer qu’il y a un problème de chargement d’un des scripts du plugin. As-tu bien téléchargé la librairie mapstraction lors de la phase d’activation du plugin ?

      ++

    • Travaillant en local, je ne sais pas comment te proposer un lien vers la page qui pose problème... ?

      A priori j’ai bien chargé la librairie.
      Parcontre dans mon dossier « lib » j’ai 2 répertoires : « mxn-gis-2.0.9 » et « h8e7f8b9b-mxn-2.0.17 »

      ... est-ce normal ?

    • Oui c’est normal, le répertoire h8e7f8b9b-mxn-2.0.17 est une ancienne version de la librairie nécessaire au plugin (SPIP ne sait pas encore faire le ménage dans ce répertoire mais cela n’a pas d’impact sur le fonctionnement des plugins).

      Essaye te de mettre ta page en ligne quelque part pour qu’on puisse y jeter un oeil, sinon on va devoir jouer aux devinettes pour tenter de résoudre ton problème ;)

      ++

    • Ok, quelques heures plus tard voici la fameuse page en ligne :
      http://www.centregalilee.com/spip.php?rubrique1

      merci :)

    • Héhé, tes squelettes ne semblent pas utiliser la balise #INSERT_HEAD de SPIP qui permet aux plugins (dont gis) d’insérer leur scripts et css dans le head des pages du site. Du coup tu n’as pas les scripts du plugin et il ne fonctionne pas :p

      ++

    • 1000 mercis !! Forcément ça marche mieux comme ça...
      Erreur de débutante, J’aurais appris quelque chose de très utile :)

    • Bonjour b_b

      Je me suis aperçu d’un petit bug sur le « alt » qui apparait en pointant sur un point de carte :
      Si le titre du point comporte une apostrophe « ’ », le label qui apparait affiche & # 8217 ; (sans les espaces)

      Je pense que c’est un problème « d’échappement » de l’apostrophe qui a été oublié au niveau du javascript ?

      voir en ligne

      Merci encore pour ce superbe plugin...

      JeanLuc

    • Salut JeanLuc,

      Oui je suis au courant du problème, j’ai proposé un patch correctif sur github. J’attends qu’il soit intégré à Mapstraction. Si cela prend trop de temps, je l’intégrerai directement dans la branche spécifique à GIS.

      ps : il vaut mieux créer un nouveau fil de discussion plutôt que de « squatter » celui d’un autre problème ;)

      ++

    Répondre à ce message

  • 12

    Je n’arrive pas à enregistrer de nouveau marker dans un article. Je reçois ce message (voir image) :

    • Pas très causante comme erreur je le concède :p Par contre le retour de bug ne l’est pas beaucoup plus. Quelles infos à tu dans le formulaire avant de tenter d’enregistrer le point ? Sur quel type d’objet ? Avec quelle API de carte ? Quelle démarche pour reproduire le bug ? Bref sans plus d’infos ça va être compliqué de t’aider...

    • Non c’est bon ils sont enregistrés, mais cela se passe sans que je sois averti et je dois faire un « refresh » pour pouvoir sortir de là.

      J’ai aussi un problème de « charset ». Je vois que tous mes titres qui ont des accents a été remplacé par le mot « null » dans la bulle. Est-ce que je dois être en UTF ?

    • Api GoogleV3
      Ce sont des articles qui avait déjà des markers en GIS1, peut-être que le problème vient de là.

    • Non cela se reproduit avec des nouveaux articles aussi.

      SPIP 2.1.11 [18566]
      Tout mes plugins sont à jour [13 nov. 2011]

      website : http://chapuisat.com

    • Je confirme j’ai du passer mon site en UTF-8, maintenant je sais si cela a un lien direct avec GIS2

    • oups !
      « maintenant je NE sais PAS si cela a un lien direct avec GIS2 »

    • Bonjour

      J’ai la même erreur que gregol

      Je viens d’installer GIS2 également sur http://www.aslagnyrugby.net. Il y avait précédemment la version gis escoitar d’installé.
      -  Les anciens points sont reconnus par GIS2 dans le menu édition. Les points sont visibles et la carte est correctement centrée. Par contre, quand on visualise les articles liés à ces cartes sur la partie publique, le centrage sur le point n’est pas correct et on ne voit pas le pointeur. J’ai essayé avec plusieurs API mais ce sont les mêmes symptômes...
      -  Quand on crée de nouveau point dans l’admin, après avoir cliqué sur « enregistrer », un encart rouge apparait avec un n° d’erreur n° 11 (voir copie d’écran ci dessous). J’ai fait une copie d’écran avec Firebug et on peut voir la ligne html correspondante :
      <p class="reponse_formulaire reponse_formulaire_erreur">11</p>
      Quand on va dans l’édition, le point est bien enregistré au bon endroit et le pointeur est visible (Av. Roosevelt à Meaux dans le 77). Par contre dans la partie publique (Voir la page), la carte n’est pas centré sur Meaux et le pointeur est invisible...

      Version du site : SPIP 2.1.12 [18732]
      Plugins installés liés à GIS2 :
      -  Afficher Objets 1.2.1
      -  cfg : moteur de configuration 1.14.4
      -  Champs Extras2 1.10.0
      -  GIS 2.1.2
      -  GoogleMap Api 0.2
      -  Saisies pour formulaires 1.18.0
      -  SPIP Bonux 2.3.0
      -  YAML 1.5.0

      Autres plugins installés :
      -  Google siteMap 0.1
      -  Le Couteau Suisse 1.8.50
      -  Squelette Ahuntsic 1.0.0
      -  Thickbox v3 3.1.0

    • Salut, je ne sais pas si ton problème vient de là mais je vois cette erreur dans les pages publiques de ton site :

      <br>
      <b>Fatal error</b>
      : Cannot redeclare balise_config() (previously declared in /homez.109/aslagnyr/www/plugins/auto/spip-bonux/configurer/pipelines.php:299) in
      <b>/homez.109/aslagnyr/www/plugins/auto/cfg/cfg_fonctions.php</b>
      on line
      <b>45</b>

      Je te propose de passer faire un saut sur l’IRC de SPIP afin qu’on regarde de plus prêt ton problème avec cette fameuse erreur « 11 » (ça m’intrigue ce truc).

      http://www.spip.net/irc

      ++

    • Petites précisions sur mon message précédent :

      Hébergement chez OVH, PHP5 activé

      J’ai testé en désactivant les plugins Champs Extras et Thickbox, vidage du cache, même pb...

      Merci d’avance pour votre réponse...

    • Pb résolu grâce à b_b qui a pris de son temps pour s’apercevoir que le plugins Google_api était installé.

      ATTENTION : ce plugin N’EST PAS nécessaire avec GIS2 !!! Il ne doit pas être installé en même temps que GIS2.

      Merci encore à b_b ;-)

    • Bon voilà, après avoir passé un bon moment à chercher d’où venait la fameuse erreur « 11 » sur le site de Jean Luc (merci à lui de m’avoir filé un accès), le bug est corrigé dans la version 2.1.3 de GIS. Pour info cela venait d’un problème de typage de variable qui se présentait uniquement avec certaines versions de PHP.

      ++

    Répondre à ce message

  • 1
    Philippe B.

    Bonjour,

    Quelle est la solution pour positionner autrement que par défaut les contrôles de navigation (zoom, type de carte) ?

    Google map v3 permet cette option, est-ce transposé dans Mapstraction ?
    http://code.google.com/apis/maps/do...

    Merci !

    Répondre à ce message

  • 4

    bonjour,

    J’aimerais savoir si dans une carte qui référence plusieurs points, il est possible d’avoir un lien sur le titre des bulles ?
    Ou avoir une liste de liens vers tous les objets liés à ce point dans la bulle ?

    Par ex. pour lister tous les articles « GISés » d’une rubrique :

    <carte_gis|objets=articles|id_rubrique=7>

    merci pour ce plugin, il fonctionne nickel

    • Salut, oui le contenu des bulles est personnalisable si tu te fais des squelettes persos pour ça. La doc indique à ce sujet :

      D’un point de vue technique, le paramètre objets permet de définir quel fond sera utilisé pour générer les données JSON qui alimenteront la carte. Lorsque le paramètre « objets » vaut « auteurs », c’est le squelette plugins/gis/json/auteurs.html qui est utilisé.

      Et comme je le disais dans un message précédent :

      Un jour il faudra que quelqu’un prenne le temps de rédiger une doc technique sur toutes les informations de personnalisation du plugin (si je ne le fais pas d’ici là).

      ++

    • merci pour ta prompte réponse :)

      j’ai bien tenté de surcharger les squelettes plugins/gis2/json/gis_articles.html etc. mais je ne « comprends » pas la syntaxe :

      {
      "title": ...
      "description" : ...
      }

      existe-t-il des mots-clés spécifiques pour créer des liens ? (j’ai vaguement regardé ce qu’étaient JSON et KML mais pas tout compris...)

      Par ex. dans gis_articles.html, (appelé avec objets=articles, c’est ça ?), lorsque je fais

      "title":[<a href="#_art:URL_ARTICLE">(#TITRE|sinon{#_art:TITRE}|supprimer_numero|json_encode)</a>],

      ou

      "title":[(#TITRE|sinon{#_art:TITRE}|supprimer_numero|json_encode|generer_url_entite{article}|url_absolue)],

      ce ne semble pas correct car ne retourne rien (carte vide).

      Les BOUCLES SPIP servent à générer du code JSON qui lui-même sert les « map », c’est ça ?
      les Boucles, ça devrait aller, mais ce qu’elles doivent retourner, je ne sais pas...

      Et comme je le disais dans un message précédent ...

      Oui, c’est sûr ça aide ;) ... si j’arrive à comprendre comment ça fonctionne à l’intérieur du dedans du truc, je pourrais aider... comme je l’ai fait pour la doc de Saisies

    • bon... ce serait plus propre avec

      [(#SET{lien,[<a href="(#_art:URL_ARTICLE|url_absolue)">[(#TITRE|sinon{#_art:TITRE}|supprimer_numero)]</a>]})]

      puis

      "title":[(#GET{lien}|json_encode)],

      ...et ça marche

    • Merci stefdn,
      Je suis pas encore capable de JSONer, alors tes quelques lignes pour essayer de comprendre comment modifier mon infobulle est super. As-tu mené la chose plus loin ? Image dans la bulle ?

      Bon dimanche.
      G

    Répondre à ce message

  • 4

    hello,
    Dans une carte affichant les auteurs je cherche à afficher le logo de l’auteur dans l’info bulle.
    Je suis donc allé farfouiller json/gis_auteur.html, je vois du LOGO_GIS et du logo_doc que j’ai essayé de remplacer par LOGO_AUTEUR mais sans résultat.

    • Tu as bien vidé le cache du site après tes modifications ?

      Sinon, ben vu que tu as modifié le plugin, sans une url vers la page où l’on peut observer tes bidouilles cela sera compliqué de t’aider plus.

      ++

    • bon j’avoue j’avais pas vidé le cache, mais ça ne résout pas mon problème pour autant.
      -  j’ai remplacé LOGO_GIS par LOGO_AUTEUR et cela à remplacer les marqueurs googe par le logo de l’auteur ; le résultat est rigolo mais ce n’est pas celui que je recherche
      -  en ajoutant (#LOGO_AUTEUR aucun chagement
      -  en ajoutant [(#LOGO_AUTEUR)] plus aucun marqueur n’apparaît

      le résultat est visible ici
      Il s’agit d’un modèle json/gis_auteur que j’ai renommé et placé dans mon dossier squelette. Cela me permet d’afficher les auteurs en fonction d’un mot clé. Ça fonctionne très bien d’ailleurs et cela me permet de faire une carte avec les administrateurs et une carte avec les salariés d’une asso.

    • Ha ok je vois mieux le problème avec plus d’infos :p

      Le contenu de la bulle est défini dans l’attribut « description » du fichier json :

      http://zone.spip.org/trac/spip-zone/browser/_plugins_/gis/branches/v2/json/gis_auteurs.html#L6

      C’est donc là que tes modifs doivent être placées. Par contre, il y a pour l’instant un bug (que j’ai corrigé et qui est en attente d’intégration sur github) dans mapstraction qui fait que cet attribut sert aussi à générer le label des markers. Du coup ça risque d’affiche le code la balise img par chez toi...

      ++

    • Merci de ta réponse rapide, je vais attendre la mise à jour, rien ne presse.
      En revanche je ne suis pas sur du code à utiliser est ce que :

       "description":[(#LOGO_AUTEUR|image_passe_partout{50,50}|image_recadre{50,50})]
      [(#DESCRIPTIF|sinon{#_auteurs:BIO}|json_encode)]
      [(#SET{logo_doc,''})]

      te semble correct

    Répondre à ce message

  • 3

    Salut !

    Je suis en train de découvrir le plugin : Bravo ! Il est génial, encore plus que GIS 1 !

    Il y a un truc que je ne parviens pas à faire : c’est centrer une carte (un modèle) sur un kml. Par exemple avec : <carte_gis1|kml=42|autocenterandzoom=oui>...

    On dirait que l’autocenterandzoom n’est possible que pour autre chose que les points.

    Est-ce possible pour les KML ? Je ne suis pas du tout capable de mettre les mains dans le cambouis, mais dans la doc de mapstraction j’ai lu que l’insertion d’un overlay (kml) pouvait prendre comme paramètre optionnel l’autocenterandzoom. Est-ce accessible dans le modèle du plugin ?

    • Salut, non cette option n’est pas présente dans le modèle pour l’instant. Je vais y réfléchir, et si c’est jouable je fais ça dès que j’ai un moment.

    • Peut-être qu’on pourrait considérer que si le paramètre point est à non et que autocenterandzoom est à oui, alors on zoomme sur le kml... Par exemple, dans modeles/carte_gis ça pourrait donner à partir de la ligne 136 :

      [(#ENV{kml}|oui)
      		[(#ENV{kml}|intval|oui)
      		map[(#GET{id})].addOverlay(['(#ENV{kml}|generer_url_entite{document}|url_absolue)'][(#ENV{autocenterandzoom,#ENV{centrer_auto}}|oui|et{[(#ENV{point}|=={'non'})]}),1]);]
      		[(#ENV{kml}|intval|non)
      		map[(#GET{id})].addOverlay(['(#ENV{kml})'][(#ENV{autocenterandzoom,#ENV{centrer_auto}}|oui|et{[(#ENV{point}|=={'non'})]}),1]);]
      		]

      Soit un simple ajout de [(#ENV{autocenterandzoom,#ENV{centrer_auto}}|oui|et{[(#ENV{point}|=={'non'})]}),1] aux deux endroits où addOverlay est paramétré.

      Qu’en penses-tu ?

    • Hmm, non je ne pense pas que cette solution soit suffisante. On peut très bien vouloir passer autocenterandzoom alors qu’on a des points affichés en plus d’un kml (et souhaité que le centrage se fasse sur l’ensemble des point et non sur le kml).

      Je pense qu’il va falloir ajouter une option du style kml_autocenter au modèle (et celle-ci surchargera l’autre centrage auto si elle est présente).

      ++

    Répondre à ce message

  • 1

    Salut,

    sur la carte de l’admin, au niveau du menu « point géolocalisés », je ne retrouve pas l’ensemble des points que j’ai saisi dans la liste sur la gauche. J’ai du supprimer pas mal de points et j’ai remarqué que certains point réapparaissaient dans la liste lorsque j’en supprimai d’autre.

    Bref cette liste se comporte un peu bizarrement.

    • Heuuu sans plus d’info je rien te dire à part : tu as remarqué que cette liste est paginée ?

    Répondre à ce message

  • 3
    chipster19

    Bonjour,

    Je rencontre un problème avec GIS2. Je n’arrive pas à suporposer un fichier kml avec un tracé. J’ai téléchargé sur mon site un fichier kml qui porte le nom ’doc7’ et je tape la ligne suivante dans mon article <carte_gis|id_article=3|zoom=15|type=carte|control_zoom=large|lat=45.875388|lon=5.692586|kml=7>

    mais rien. Quelqu’un a une piste pour m’aider ?

    Merci

    • chipster19

      Euh j’ai loupé le copier coller !!

      Ce que je saisi dans mon article :

      <carte_gis|id_article=3|zoom=15|type=carte|control_zoom=large|lat=45.875388|lon=5.692586|kml=7>
    • Salut, on est bien d’accord que quand tu parles de :

      un fichier kml qui porte le nom ’doc7’

      C’est bien le document qui porte l’id numéo 7 que tu tentes de superposer à la carte ? Jsute pour être certain ;)

      Sinon, bah comme d’hab, une url vers la page en question nous permettra de t’aider plus...

      ++

    • chipster19

      Bonjour,

      Quand j’ajoute un document et notamment un kml le premier est doc1 et ainsi de suite donc pour moi l’id c’est le numéro après le doc

      Faut dire que je débute donc j’ai peut-être tout faux !!

      Pour l’url va me falloir un peu de temps car je travaille sur mon site en local

      merci.

    Répondre à ce message

  • 4

    Bonjour,

    Absolument alléché par ce plugin plein de promesses....

    Malheureusement, je me casse les dents sur une erreur que je n’arrive abolument pas à débrouiller.

    Ca commence sur l’espace privé. Dans « Edition>points géolocalisés » j’ai bien la carte Google et je peux ajouter normalement un point. Jusque là ça fonctionne...

    A partir de là, le nouveau point n’est pas visible sur la carte générale ; et quand je clique sur « modifier », la page d’édition s’affiche, mais là, la carte elle-même n’est même pas visible !

    Je précise que :
    -  j’ai testé avec plusieurs navigateurs, trois ordinateurs et deux systèmes différents (windows et ubuntu) ;
    -  le site est hébergé chez 1&1 et que php 5.2 est activé
    -  j’ai désinstallé complétement et réinstallé le plugin.
    -  ma version de spip est 2.1.11
    -  les plugins nécessaires au fonctionnement de Gis2 sont tous installés.

    Le site (en développement évidemment !) : rrcc.styblinski.com

    Merci d’avance pour votre aide

    • Hello, exactement le même souci !
      Alors qu’en local tout fonctionne à merveille, je bascule en ligne et là la carte s’affiche bien mais plus les markers, voici la page en question : http://www.centregalilee.com/spip.php?rubrique1

      Comme pstyb dans l’espace privé la carte ne s’affiche pas ou bien s’affiche mais sans les markers de plus j’ai une erreur dans l’espace privé au niveau de la rubrique où sont liés les points (voir les images jointes)... je me dis que j’ai dû oublié quelque chose mais je ne trouve pas quoi !

      Les librairies semblent bien installées, l’espace privé me dit que le plugin est bien activé et le seul endroit où je peux voir la carte avec son marker est la page de config CFG... et j’ai bien mis le #INSERT_HEAD dans mes pages (j’ai compris la leçon !)... mais alors il manque quoi ?

      Pour info le site est hébergé sur OVH.

      Merci :)

    • j’ai visiblement du mal à attacher une capture à mon message...
      L’erreur affichée côté privé dit : « Filtre json_encode non défini », squelette « plugins/gis2/formulaires/editer_gis.html », boucle « / » lignes 35, 36 et 37.

      Bonne journée à tous !

    • Salut celbook, tu as 3 erreurs javascript dans ta page. Elles viennent peut être d’un autre plugin (je vois que tu en as quelques uns d’actifs sur ton site). Désactive les plugins non nécessités par GIS, vide la cache et vérifie que ça fonctionne bien. Ensuite, réactive les plugins non nécessités par GIS un par un jusqu’à trouver le fautif.

      Pour l’erreur à propose de json_encode, ton site est hébergé chez OVH qui a la très mauvaise idée d’activer le PHP4 par défaut sur les sites qu’ils hébergent. Pour que SPIP fonctionne bien il vaut mieux (c’est même plutôt indispensable) utiliser PHP5. Mais comment activer le bouzin ? Et bien comme ceci :

      http://guide.ovh.com/Php5ChezOvh

      ++

    • Voilà ça marche !

      J’ai activé le PHP5 (un grand MERCI à toi pour l’info et le lien), j’ai trouvé le script qui générait les erreurs dans la page (ce n’était pas un plugin mais le reste d’un appel à un .js entre-temps abandonné et pas correctement nettoyé) et j’ai vidé le cache.
      Je ne sais pas laquelle de ces 3 manips à réellement débuggé l’affichage de la carte, peut-être les 3, désormais tout semble propre et parfaitement fonctionnel. Encore merci ;)

    Répondre à ce message

  • 2

    Revoilà le casse c******* ^^

    Je n’arrive pas à désactiver le zoom molette, j’ai utilisé le code suivant pour afficher GIS2 mais cette option ne semble pas fonctionner :

    [(#INCLURE{fond=modeles/carte_gis,
     autocenterandzoom=oui,
     id_article=#ID_ARTICLE,
     zoom_molette = non})]

    Répondre à ce message

  • 2

    Hello,

    j’ai vu que pour le plugin Gis escoitar il y avait une option pour limiter l’affichage du plugin à certaines rubriques, est ce que c’est possible avec gis2 ?

    J’aimerai éviter d’afficher le formulaire côté admin et si c’est facilement faisable empêcher le chargement de l’api google côté public pour les rubriques non concernées.

    • Salut, non cette fonctionnalité « superflue » n’est plus disponible dans GIS2. En effet, la structure du plugin a complètement changé et maintenant le bloc du plugin n’est plus seulement affiché sur les articles mais sur tous les obejts. Du coup une telle restriction serait bien plus lourde à mettre en place techniquement.

      Pour le chargement des scripts côté public ce la n’est pas utile de tenter de les limiter à une certaine partie du site (une fois chargés, les scripts sont dans le cache navigateur du client).

      ++

    • Ok, je me doutais de la difficulté de mettre cette fonctionnalité en place.

      Merci quand même.

    Répondre à ce message

  • 8

    Bonjour,

    le plugins fonctionne très bien par contre j’ai plusieurs problèmes avec l’autre plugins nécessaire Saisies pour formulaires qui crée quelques bug dans l’admin :

    -  Le chargement des images téléchargés dans spip tourne indéfiniment, les images se téléchargent bien malgré tout lorsqu’on actualise la page
    -  La page informations personnelle dans auteurs ne s’affiche plus
    -  Le formulaire mot de passe oublié ne s’affiche plus

    • Salut, il va nous falloir un peu plus d’infos de ta part :

      • quelle version de SPIP ?
      • quelle version du plugin saisies (le plugin est-il bien à jour) ?

      Commence par faire une mise à jour de tous tes plugins pour voir si ça ne règle pas le problème.

      ++

    • Salut,

      j’ai la dernière version de spip (2.1.11) et la dernière version de saisies(1.14.0). Je vais tenter de mettre les autres plugins à niveau voir si ça change quelque chose.

    • Oups, je me suis trompé c’est le plugin afficher objet qui pose problème.

    • je reprend mon post initial

      -  Le chargement des images téléchargés dans spip tourne indéfiniment, les images se téléchargent bien malgré tout lorsqu’on actualise la page problème disparu mais je n’ai pas identifié pourquoi
      -  La page informations personnelle dans auteurs ne s’affiche plus bien causé par afficher objet
      -  Le formulaire mot de passe oublié ne s’affiche plus ma faute

    • Salut, ça va pas être facile à débuguer mais on va tenter le coup ;)

      La première chose à faire est de demander à SPIP de t’afficher les erreurs de debug en insérant les lignes suivantes dans un fichier config/mes_options.php :

      <?php
      
      error_reporting(E_ALL^E_NOTICE);
      ini_set ("display_errors", "On");
      define('SPIP_ERREUR_REPORT', E_ALL^E_NOTICE);
      define('SPIP_ERREUR_REPORT_INCLUDE_PLUGINS', E_ALL^E_NOTICE);
      
      ?>

      Avec ça, ton site t’affichera les erreurs qui provoquent les problèmes que tu cites. Cela nous permettra de cibler plus précisément d’où vient le problème avec le plugin afficher objet.

      As-tu d’autres plugins activés en plus de GIS2 et des plugins qu’il nécessitent ? Ton problème vient peut être (ou même certainement) d’une incompatibilité entre deux plugins...

      Et pour finir, comme d’habitude, un lien vers le site en question serait plus qu’utile.

      PS : je t’inviterais bien à poser tes questions sur le forum de la page de doc du plugin afficher objets mais celle-ci n’existe pas donc je m’y colle ^^

    • Oui, il n’y a pas de page pour ce plugin.

      J’ai essayé sur un nouveau spip avec uniquement les plugins spip_bonux, afficher objet et le problème se produit.

      Le problème précis est qu’il manque l’identifiant de l’auteur à la fin de l’url :
      http://localhost/spip_test/ecrire/?exec=auteur_infos&id_auteur=
      au lieu de
      http://localhost/spip_test/ecrire/?exec=auteur_infos&id_auteur=1

    • Re,

      Le problème précis est qu’il manque l’identifiant de l’auteur à la fin de l’url

      Tu parles de l’url de quel lien là ? Affiché sur quelle page ? etc

      Je crois que tu devrais venir faire un saut sur l’irc de SPIP pour qu’on en cause en direct sinon on va pas avancer :p

      www.spip.net/irc

      ++

    • Le lien dont je parle dans la partie auteurs

    Répondre à ce message

  • 1

    salut, quand je met dans un article l’appel suivant :
    <carte_gis5|zoom=14|type=hybride|control_zoom=large> la carte qui s’affiche est bien celle demandée mais elle se positionne sur la localisation du premier point que j’ai créé, sans que ce point n’apparaisse d’ailleurs.

    ai je loupé quelque chose ?

    • Salut,

      ai je loupé quelque chose ?

      Oui, le plus important : un lien vers la page en question ;)

      As-tu bien configuré la position par défaut des cartes dans la page de config du plugin ? Sans paramètre la carte doit être centrée sur ces coordonnées.

      ++

    Répondre à ce message

  • Bonsoir.

    J’utilise le plugin Coordonnées avec satisfaction. La table des adresses est extensible avec Champs Extras 2 que j’utilise pour gérer en plus : latitude, longitude, altitude, incertitude, mais pas de facteur de zoom :)

    Je me demandais donc si je voulais utiliser GIS2, est-ce qu’il faudra y reporter toutes mes adresses ? (vu que ce plugin gère aussi les adresses postales —les mêmes champs au nom près)
    L’importation n’est pas un problème à la rigueur ; mais c’est double gestion des informations ensuite que je redoute. Comment faire la passerelle entre les deux plugins ?

    Répondre à ce message

  • 2

    Bonjour,

    Je ne parviens pas à mettre 2 cartes GMapsv3 sur la même page (http://spip-demo.itika.net/spip.php....
    J’ai procédé ainsi :
    - J’ai créé un article (ID 1) auquel j’ai associé 3 points
    - J’ai créé un article (ID2) auquel j’ai également associé 3 points
    - J’ai édité le texte de l’article 1 pour y ajouter le code suivant :

    ...
    <carte_gis1|type=physique|zoom_molette=non|zoom=13>
    ...
    <carte_gis2|id_article=2|type=physique|zoom_molette=non|zoom=13>

    L’affichage de l’article 1 donne 1 carte qui contient tous les points (les 6 donc)
    Le but étant d’afficher sur une page article 2 cartes avec des points différents.

    Le spip est en SPIP 2.1.11 [18566]
    Les plugins sont capturés dans l’image jointe.

    J’ai mal compris un truc ?
    Merci si vous avez une piste :)

    • Ha oui je vois le bug, je corrige ça tout de suite, le zip sera à jour d’ici une heure au max.

      Merci pour le signalement et la précision de ton rapport de bug ;)

    • Coool !

      Pour le rapport, il fallait bien que je me rattrape de mon commentaire sur GIS1 ... :)

      Merci !

    Répondre à ce message

  • 5

    Bonjour,

    J’arrive à afficher un kml via le modèle, par contre je serais assez intéressé par la méthode pour afficher la zone de saisie « Adresse » sous la carte et permettre aux utillisateurs de faire une recherche et zoom auto sur la carte en fonction de l’adresse saisie ...

    C’est possible ? Ca existe en natif ? Ou faut gratouiller ? ^^

    Merki pour la(es) réponse(s).

    Répondre à ce message

  • 2

    je souhaiterai ajouter le bouton d’appel vers streetview je n’ai pas trouvé le moyen de le faire

    si quelqu’un à une astuce
    merci

    • Bonjour,

      J’ai le même besoin.
      Est-ce qu’il y aurait une astuce à connaître ?

      Merci

    • Non pas d’astuce pour ça, ce n’est pas pris en charge par la librairie Mapstraction et donc pas disponible dans GIS.

      PS : tout est possible en décortiquant le code et en se bidouillant un truc dans son coin bien sûr ;)

    Répondre à ce message

  • 9

    Re, (je change de POST car une autre question)
    .. ou plutôt un constat en utilisant les logos des points pour personnaliser les marqueurs.

    En effet, j’obtiens un positionnement différent à partir du moment où j’utilise les logos, visiblement le point (LAT et LONG) se trouve en haut à gauche du logo placé sur la carte... j’ai fais une copie écran pour comparer, on comprend tout de suite le problème....

    Aïe !

    • Ha oui je vois le bug, Quentin avait oublié un paramètre lors de l’ajout de la fonctionnalité des logos sur les points. C’est corrigé :

      http://zone.spip.org/trac/spip-zone/changeset/51232

      Correction dispo dans le prochain zip ++

    • Génial, merci beaucoup b_b ! :)

    • b_b tu vas me haïr !!! ;-)

      J’ai bien mis à jour le plugin, j’ai vidé le cache et recalculer plusieurs fois ma page sur Fx, IE et Chrome mais les marqueurs ne bougent pas.
      Il m’interprète bien l’ajout du paramètre « icon_anchor » (que je vois sur la console de Firebug) qui divise la largeur et hauteur de mon marqueur par 2 (si j’ai bien compris). Par contre, après il ne décale pas le marqueur, arfffff !
      Est-ce que le paramètre est bien lu ?

      Merci en tout cas
      ++

    • même problème de mon coté, j’ai toujours un petit décalage avec les marqueurs personnalisés ( plugin mis à jour )

    • Re,

      il ne décale pas le marqueur, arfffff !

      Si si les marqueurs sont bien décalés. Par contre, avec la modif que j’ai apportée suite à ta remarque, l’image du marqueur est centrée verticalement et horizontalement sur la position du point. J’ai fait ce choix qui convient pour les cas où l’on souhaite utiliser une image du style « photo » en tant que logo de marqueur.

      Sauf que ce choix ne convient pas à ton usage (qui est peut être bien le plus « générique »). Car dans ton cas le logo de marqueur est une image de « punaise » qui nécessite donc qu’on centre l’image horizontalement et que la partie basse de cette image soit calée sur la position du marqueur.

      Et tu as de la chance car kent1 et moi sommes d’accord pour dire que ton cas est bien celui qui sera le plus fréquent. Donc je vais envoyer cette modif sur le plugin dans la soirée. Elle est pas belle la vie ? ^^

      ++

    • Je n’ai plus qu’à vous dire un grand MERCI donc :-)

      Oui, je pense aussi que pour les utilisateurs du plugin, ca risque souvent d’être le cas d’un marqueur de type punaise. Et puis l’utilisation première d’une carte reste la localiser précise d’un objet donc ca le fait !

      Concernant la rédaction d’une doc. c’est clair que là y’a moyen de faire qqchose au fur et à mesure, prêt à y participer en tout cas !

      Thanks

    • merci bcp je suis dans le même cas que sebbesac ;-)

    • Bon, en fait ça risque de prendre un peu plus de temps car il faut d’abord que je corrige un bug dans la librairie Mapstraction. Je vous tiens au courant dès que c’est réglé ;)

      ++

    • Et voilà, la version 2.0.9 du plugin corrige ce problème (elle nécessite une maj de la librairie Mapstraction qui sera signalé dans l’espace privé de vos sites).

      http://zone.spip.org/trac/spip-zone/changeset/51408

    Répondre à ce message

  • 2

    Nous avons SPIP 2.1.2 [16017] qui travaille bien avec scoitar Gis Plugin et de GoogleMap Api
    a) On a desactive ces plugins
    b) Nous avons installe les plugins necessaires et decompresse mapstraction sous /lib

    c) Quand on essaie d`activer le plugin GIS2 on trouve ces messages d’erreur :

    -  Imposible activar el plugin ../plugins/gis2
    -  Necesita como mínimo un SPIP de versión [2.1.10 ;3.0.0-dev).
    -  Este plugin necesita la biblioteca h8e7f8b9b-mxn-2.0.17
    se descargará de https://github.com/downloads/mapstraction/mxn/mxn-2.0.17.zip y se instalará en lib/

    Aucune idee ?? Merci davance

    • Bonjour Miguel,

      Necesita como mínimo un SPIP de versión [2.1.10 ;3.0.0-dev)

      Cela signifie que le plugin GIS 2 nécessite au minimum la version 2.1.10 de SPIP pour fonctionner.

      ++

    • bruno,
      mes excuses on avait cru que 2.1.2 etait posterior a 2.1.10, crasse erreur de notre part.
      merci
      miguel

    Répondre à ce message

  • 2

    Bonjour, j’ai quelques soucis avec le plugin.
    Je l’ai installé sur un site à la place de Escoitar Gis Plugin et de GoogleMap Api.

    Lorsque je vais sur la page ecrire/ ?exec=cfg&cfg=gis, je me retrouve avec 3 cartes.
    Ce qui masque le formulaire de configuration.

    C’est la même chose lorsque je vais sur la page ecrire/ ?exec=gis_tous

    Normalement les plugins sont à jour grâce à step.

    • Hello Pierre Andre,

      J’avais également Escoitar Gis Plugin et de GoogleMap Api avant d’installer la version GIS2.

      Avant d’installer le plugin GIS2, j’ai désinstallé les 2 autres (GIS2 prend en compte les 2) et les ai supprimé, puis j’ai vidé le cache. Ensuite, j’ai fait l’installation du nouveau plugin et hop, pas de prob ;)

      Si tu as laissé Escoitar Gis Plugin et de GoogleMap Api actifs, c’est possible qu’il y est des conflits, d’où tes cartes en triple !

      ++

    • Bonjour,

      Après un test de suppression des deux anciens plugins, aucuns changements.

      Par contre dans la page cfg, j’ai réussis à l’aveugle (les cartes se mettent sur le formulaires de config) à changer d’API de cartographie avec google map v3 pas de soucis je n’ai plus qu’une seule carte.

      Cela peut venir d’openlayer il me semble que c’étais la config précédente.

    Répondre à ce message

  • 1

    Il semble qu’il y a un problème avec les cartes bing, elle n’apparaissent pas dans le cadre, contrairement au autre carte dans les réglages du plug via cfg.

    Sont actif :

    Spip 2.1.10 [18395]
    Afficher Objets Version : 1.2.0 [50205]
    CFG Version : 1.16.0 [49254]
    GIS2 Version : 2.0.8 [51232]
    Palette Version : 1.3.2 [50295]
    Saisies Version : 1.14.0 [51197]
    Bonux Version : 2.2.21 [51238]
    Squelette Multiflex Version : 0.2.15-multilingue [45981]
    YAML Version : 1.5 [49101]

    • Salut, oui j’avais déjà remarqué ce problème avec l’API microsoft bing (d’ailleurs je ne l’ai pas listé dans le tableau de compatibilité en début de cet article). J’ai certainement oublié de la retirer temporairementdu plugin en attendant que j’ai un moment pour corriger le problème.

      ++

    Répondre à ce message

  • 6

    Salut Brunot,

    Je passe seulement à Gis2 et forcément...
    http://www.art-logic.info/annecy/-Phototheque-
    ne retourne pas de carte.

    Voici le modèle présent dans ma rubrique :
    [(#INCLUREfond=modeles/carte_gis,objets=rubriques,id_rubrique=#ID_RUBRIQUE,id_parent=1,overview = oui,autocenterandzoom=oui,lat=#LAT,lon=#LON,zoom=#ZOOM,type=hybride,zoom_molette=non)]

    Qu’est-ce qui cloche ?

    • Salut Stéphant <= moi aussi j’ajoute un t à la fin de ton prénom ^^

      Ouè je vois qu’il y a une erreur js sur ta page. Le script de mapstraction passe dans le compresseur de SPIP alors qu’il ne devrait pas. Ce bug a été réglé depuis un moment, ton plugin ne doit pas être à jour... C’est toujours pas mal de vérifier qu’on est à jour quand on a un bug avec ces petites choses :p

      ++

    • Ha. J’ai mes plugin en lien dynamique sur mon dossier svn. Curieux que ce soit has been. Dans la liste des plugins (mis à jour encore à l’instant) j’ai deux plugins GIS :

      2.0.8 - en développement
      GIS2 mapstraction
      Configuration gis Version : 2.0.8
      Répertoire : auto/gis/trunk

      et

      GIS
      2.0.8 - en test
      GIS2 mapstraction
      Version : 2.0.8
      Répertoire : auto/gis/branches/v2

      Peux-tu me confirmer quelle est la version à retenir ?
      @+

    • C’est la branche v2 qui est en test qu’il faut pour SPIP 2.1, le trunk est la version de dev (comme l’indique le plugin) en cours d’adaptation à SPIP 3.0.

    • Bon bon bon. J’ai la bonne version mise à jour ce soir, j’ai vidé local/js + tmp et pourtant toujours le bug js. Peut-être cela a-t-il été corrigé uniquement dans la SPIP 3 ?

    • Non non non, on fait les choses bien et la correction a bien été apportée aux deux versions (2 et 3). Je crois que tu as gagné le droit à une session SAD premium avec assistance directe sur IRC :p

    • Pour l’instant le plugin n’est pas compatible avec la compression javascript actuelle de la version 2.1.10 de spip. Les cartes fonctionneront avec la compression de la version 2.1.11.
      Le plugin est toutefois fonctionnel sans compression javascript

    Répondre à ce message

  • 10

    Génial pour votre boulot b_b et kent1, on attendait avec impatience cette mise à jour !

    Une question me vient en lisant les nouvelles possibilités et fonctionnalités, dans l’ancienne version il était possible d’attribuer un mot clé « marker icon » à un article par exemple pour donner un aspect particulier au marqueur.
    Est-ce donc possible d’avoir des marqueurs d’aspect différents sur un même article ? Si oui comment faire ? Sachant que le logo de chaque points serait déjà utilisé pour une photo.

    Merci pour vos réponses.

    • Salut,

      Est-ce donc possible d’avoir des marqueurs d’aspect différents sur un même article ?

      Oui c’est justement pour ça que sont prévus les logos des points. Cette solution est bien plus souple que la bidouille à base de mots-clés utilisée dans la première version de GIS. Avec les logos de points tu peux définir un logo différent pour chacun des points.

      Si tu souhaites utiliser des logos de mots-clés pour personnaliser l’image du marqueur d’un point associé à un article il va falloir te bidouiller un squelette perso dans squelettes/json/ en t’inspirant des squelettes présents dans plugins/gis/json (voir la partie « Le paramètre objets » de la doc à ce sujet).

    • Merci b_b pour cette réponse !

      Si j’ai bien compris en bidouillant un peu, il devrait être possible pour un point de lui attribuer un logo (un type de marqueur) ET une image spécifique (photo du lieu où se trouve le point)..

      Je suis impatient de tester tout ça ;)

    • Hello,

      J’ai commencé à tester le plugin et je ne vois plus le paramètre « recursive » dans la nouvelle doc qui permettait d’aller dans l’arborescence.
      Par exemple en fixant des points sur mes sous-rubriques 2,3,4 et 5, est-il possible de lui indiquer seulement la rubrique parente (rubrique 1) pour qu’il m’affiche tous les points de ces sous-rubriques ?

      Merci d’avance ;)

    • Oui le paramètre « recursive » n’est plus disponible.

      Si tu veux afficher les points liés à des rubriques il faut passer le paramètre objets=rubriques au modèles. Il faut aussi passer le paramètre id_parent=1 à ton modèle, et hop.

      Sauf que... tout cela n’est pas encore intégré mais j’ajoute ça au plugin dans la soirée ;)

      Et voilà : http://zone.spip.org/trac/spip-zone/changeset/51122

    • Mille merci b_b, t’es un chef :-) !

      Je testerai tout ca très rapidement...

      ++

    • Super pour id_parent=1, j’ai même plutôt utilisé id_secteur=1 car je voulais parser toutes les rubriques contenu dans ma rubrique 1. Et donc du coup dans gis-rubriques.html ajouté {id_secteur?=#ENV{id_secteur}}

      Aussi, je pense que ca doit être modifiable..., je voudrais savoir quel est le fichier qui affiche le contenu de l’infobulle (infobulle s’affichant au clic sur un des marqueurs de la carte) pour lui ajouter le logo du marqueur s’il en contient un ?. Du coup, on aurait un rendu identique à l’ancienne version de GIS et son infobulle.

      Thanks pour ces précisions.
      ++

    • Re,

      Et donc du coup dans gis-rubriques.html ajouté..

      Pas la peine de personnaliser ce squelette, puisque le critère id_secteur y est déjà :

      http://zone.spip.org/trac/spip-zone/browser/_plugins_/gis/branches/v2/json/gis_rubriques.html#L1

      Le contenu de l’infobulle est défini par l’attribut description dans chaque fichier json :

      http://zone.spip.org/trac/spip-zone/browser/_plugins_/gis/branches/v2/json/gis_rubriques.html#L6

      Un jour il faudra que quelqu’un prenne le temps de rédiger une doc technique sur toutes les informations de personnalisation du plugin (si je ne le fais pas d’ici là).

      ++

    • bravo pour le dev :)

      je rencontre un petit problème avec les marqueurs personnalisés

      lorsque j’insere un marker au format png j’ai un contour blanc autour de l’image qui n’est pas du plus bel effet.

      visible à l’adresse

      http://url.exen.fr/46809/

    • Salut, voilà qui est corrigé :

      http://zone.spip.org/trac/spip-zone/changeset/51201

      Le zip du plugin sera à jour dans les prochaines heures.

      ++

    • merci b_b ;-)

    Répondre à ce message

  • Miguel Perez

    Pouvez vous nous donner une petit guide pour passer notre site qui travaillec avec le plugin GIS Escoitar a ce nouveau GIS2.

    Merci d´avance

    Miguel

    Répondre à ce message

  • 3

    La bibliothèque hébergée sur GitHub n’est pas accessible. Quelqu’un peut-il la mettre à disposition ?

    Répondre à ce message

  • 1

    merci pour ce joli plugin

    je l’ai istallé sur un serveur de preprod j’arrive à afficher les cartes mais impossible de modifier les controles

    je n’arrive pas à mettre le gros bouton de navigation j’ai pourtant bien renseigné les parametres control_pan = oui

    • Il nous faudrait un peu plus d’infos de ta part :

      Quelle API utilises-tu ? Quel code pour insérer la carte ? Quelle est l’url de la page où on peut observer le problème ?

      ++

    Répondre à ce message

  • 1
    garavan

    testé sans difficultés, ca fonctionne vraiment trés bien !
    BRAVO !!

    juste un petit bug relevé, lorsque j’appel une carte google api 3 depuis un article un bout de code commentaire

    —>

    s’affiche sur certains navigateur

    • Cool ! Pour le petit bug je veux bien une url pour observer le problème stp.

    Répondre à ce message

  • garavan

    merci b_b et kent1

    beaucoup d’entre nous attendais une évolution de l’excellent plugin gis.

    je test ça dés demain

    Répondre à ce message

Ajouter un commentaire

Avant de faire part d’un problème sur un plugin X, merci de lire ce qui suit :

  • Désactiver tous les plugins que vous ne voulez pas tester afin de vous assurer que le bug vient bien du plugin X. Cela vous évitera d’écrire sur le forum d’une contribution qui n’est finalement pas en cause.
  • Cherchez et notez les numéros de version de tout ce qui est en place au moment du test :
    • version de SPIP, en bas de la partie privée
    • version du plugin testé et des éventuels plugins nécessités
    • version de PHP (exec=info en partie privée)
    • version de MySQL / SQLite
  • Si votre problème concerne la partie publique de votre site, donnez une URL où le bug est visible, pour que les gens puissent voir par eux-mêmes.
  • En cas de page blanche, merci d’activer l’affichage des erreurs, et d’indiquer ensuite l’erreur qui apparaît.

Merci d’avance pour les personnes qui vous aideront !

Par ailleurs, n’oubliez pas que les contributeurs et contributrices ont une vie en dehors de SPIP.

Qui êtes-vous ?
[Se connecter]

Pour afficher votre trombine avec votre message, enregistrez-la d’abord sur gravatar.com (gratuit et indolore) et n’oubliez pas d’indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici

Ce champ accepte les raccourcis SPIP {{gras}} {italique} -*liste [texte->url] <quote> <code> et le code HTML <q> <del> <ins>. Pour créer des paragraphes, laissez simplement des lignes vides.

Ajouter un document

Suivre les commentaires : RSS 2.0 | Atom