Module Geolocalisation pour lister des marqueurs sur une carte.

fredfred Messages 1,969Administrateur

Bâti sur un modèle identique au module geoGallery, GeoLocalisation permet de représenter des lieux sur une carte. Les points d'intérêt sont nommés et bénéficient d'une description sommaire en html pour le moment.
Pour retrouver les coordonnées géographiques, on utilisera indifféremment opentreetmap, gmap, etc… La latitude et la longitude sont exprimées en coordonnées décimales, il faut donc saisir une virgule ou un point.
Dans une version à venir, il sera possible d'ajouter des images à la description du POI. Attention quand même à ne pas être trop long, elle s'affiche dans une popup.

Post edited by fred on
The f....g boss
«1

Commentaires

  • fredfred Messages 1,969Administrateur

    La popup admet des images et du html

    The f....g boss
  • TipOTipO Messages 479Moderateur

    Bonjour,

    merci @fred. Pas mal de cas d'usage sont envisageables, par exemple dans un cadre associatif. Avec Openstreetmap, on reste dans le libre, un beau duo.

    Utilisateur de ZwiiCMS, contributeur tâtonnant.
    Maquette en chantier.


  • fredfred Messages 1,969Administrateur

    C’est clair on peut faire pas mal de chose.
    Il n’y a pas d’options, peut-être à l’avenir, il faudra jouer avec les feuilles de styles.

    The f....g boss
  • fredfred Messages 1,969Administrateur

    Correction d'une erreur de parsing dans la description, reste à voir le pb des champs vides.

    The f....g boss
  • fredfred Messages 1,969Administrateur

    Paramétrage de la carte depuis la feuille de style de la page. Bien supprimer index.css dans view/index

    The f....g boss
  • fredfred Messages 1,969Administrateur

    Pas de commentaire dans la feuille de style.

    The f....g boss
  • fredfred Messages 1,969Administrateur

    Affiche désormais le contenu de la page.

    The f....g boss
  • lemimilemimi Messages 285Moderateur

    Bonjour @fred ,
    Je viens d'installer, pour tests, ce module et voici ce que j'obtiens : https://lemimi.fr/fr/geolocation
    En configurant le module de cette page, j'entre 49.166667 de Latitude et 1.33333 de Longitude et j'enregistre.
    Après enregistrement, je m'aperçois que les points décimaux ont disparus. J'ai aussi essayé avec les premières versions 01 et 02, idem.

    Bonne journée... Michel

  • fredfred Messages 1,969Administrateur
    15 août modifié

    Hello @lemimi ,
    Tu as raison, j'ai des problèmes avec la fonction du helper filter_var($text, FILTER_SANITIZE_NUMBER_FLOAT) qui supprime la virgule flottante. Comme cette fonction n'est pas utilisée dans ZWII le problème n'était jamais apparu.
    Il faut remplacer le fichier core/class/helper.class.php par celui ci-dessous (et qui sera livré avec la mise à jour).

    La correction consiste en cette modification du code :

                case self::FILTER_FLOAT:
                    $text = str_replace(',', '.', $text);  // Remplacer les virgules par des points
                    $text = filter_var($text, FILTER_SANITIZE_NUMBER_FLOAT, FILTER_FLAG_ALLOW_FRACTION);
                    $text = (float) $text;
                    break
    
    The f....g boss
  • lemimilemimi Messages 285Moderateur
    15 août modifié

    Je viens de faire les corrections, cela fonctionne avec la version 02 : https://lemimi.fr/fr/geolocation-02
    Par contre, avec la dernière version, niet : https://test.lemimi.fr/-fr/geolocation-06
    Bonne soirée... Michel

    PS : j'ai fait des tests sur toutes les versions sorties, cela fonctionne jusqu'à la 03 : https://test.lemimi.fr/-uk/geolocation-03
    04,05,06 pas bon

    Post edited by lemimi on
  • fredfred Messages 1,969Administrateur

    Je te conseille de supprimer les données générées avec les premières versions et de recréer les POI, les données sont différentes.

    The f....g boss
  • fredfred Messages 1,969Administrateur

    Et surtout, il te faut recommencer depuis une nouvelle page, dans les dernières versions l’initialisation de la page charge la feuille de style qui permet au script de s’afficher. Il faut aussi supprimer index.css devenu inutile.

    The f....g boss
  • lemimilemimi Messages 285Moderateur

    Ces installations ont été faîtes chacune séparément en version neuve sur des sites de tests différents.
    Je n'ai pas fait évoluer de la 01 vers 02, 03... à chaque fois j'ai effacé la page du site de test, effacé complètement par FTP l'ancienne version du module avant d'y transférer une nouvelle.
    Je viens tout juste de faire la manœuvre directement en 06 sur un autre site en mettant à jour le core, les décimales sont bien prises en compte :
    https://test.lemimi.fr/test/rouen
    Et idem.
    Bonne nuit... Michel

  • fredfred Messages 1,969Administrateur
    16 août modifié

    Holà Michel,
    J'ai modifié l'initialisation de la feuille de style, désormais, elle est toujours intégrée au contenu de la page.
    Ainsi, il est plus facile d'agir sur la présentation du script, mais il faut être certain qu'elle soit présente si rien ne s'affiche.

    Ce sera un fonctionnement identique à geogallery et à agenda que je teste encore. Rappel aux utilisateurs qui prennent le fil, il faut mettre à jour le helper voir plus haut.

    Voici la mise à jour.

    Merci pour le retour, cela fait gagner du temps.

    The f....g boss
  • lemimilemimi Messages 285Moderateur

    Coucou Fred,
    J'ai effacé complètement la 03 et installé à la place la version 07... c'est nickel et c'est ici : https://test.lemimi.fr/-uk/geolocation-07
    Au plaisir et bonne journée... Michel

  • fredfred Messages 1,969Administrateur

    Merci Michel,

    Ci-dessous une adaptation qui n'utilise plus le filtre FLOAT du helper ce qui permet de s'affranchir de la version de Zwii installé.

    A plaisir et à bientôt sur le forum.

    The f....g boss
  • lemimilemimi Messages 285Moderateur

    La 08 fonctionne nickel ici : https://test.lemimi.fr/-fr/rouen

  • fredfred Messages 1,969Administrateur

    Merci Michel.

    Les modules supplémentaires bénéficieront d'un dépôt spécifique, cela simplifiera le suivi des modifications.

    https://forge.chapril.org/ZwiiCMS-Team/Zwii-Modules

    The f....g boss
  • fredfred Messages 1,969Administrateur

    Version 1.1 sur le store, présence d'un bouton pour ouvrir directement la feuille de style de la page depuis la page de configuration du module.

    The f....g boss
  • PierrePierre Messages 10Membre

    Bonjour. Dans zwiiCMS 13.4.00 j'ai installé le module geolocalisation version 1.1. J'ai bien indiqué la latitude et la longitude, les points décimaux ne disparaissent pas, mais dans la page web cela affiche une zone vide de hauteur 500px (comme mentionné dans le CSS). Aucun message d'erreur ne s'affiche, et pas d'erreur PHP dans le log d'apache2. Que faire pour afficher la carte au lieu d'une zone vide ?

  • lemimilemimi Messages 285Moderateur
    19 nov. modifié

    Bonjour Pierre,
    J'ai ce module qui fonctionne, en Version 1.1, ici : https://test.lemimi.fr/zwii-modules/geolocalisation.
    As-tu bien entré les points comme ci dessous :

    19-11-2024 : Peut-être devrais tu essayer avec l'une des adresses de l'image ci-dessus : 49.546806 et 0.085718

    Bon courage... Michel

    Post edited by lemimi on
  • PierrePierre Messages 10Membre

    Bonjour Michel,
    Oui, j'ai bien entré les points d'intérêt comme indiqué.
    En essayant avec 49.546806 et 0.085718, ça affiche aussi une zone vide. Par contre, si je clique sur le lien https://test.lemimi.fr/zwii-modules/geolocalisation, ça marche.
    Toutefois, mon site utilise zwiicms 13.4.00 (et non pas 13.5.00), et le serveur web est (pour l'instant) mon ordinateur personnel avec apache2, et n'est visible que sur le réseau local de ma Box. Le problème vient peut-être de là ?

  • lemimilemimi Messages 285Moderateur

    Hello,
    Je viens d'installer le module sur une version13.4.00 : https://test.lemimi.fr/zwii-13.4/geolocalisation
    C'est nickel de mon côté.
    Bonne soirée...

  • fredfred Messages 1,969Administrateur
    21 nov. modifié

    Hello @Pierre
    As-tu recherché une erreur dans la console du navigateur ?
    Il n'y a normalement pas de prérequis comme pour le module geogallery.

    The f....g boss
  • PierrePierre Messages 10Membre

    Bonjour Fred,
    Effectivement, dans la console du navigateur chromium, il y a le message d'erreur:
    Uncaught SyntaxError: Unexpected identifier 'école'
    Je précise que dans la page web qui utilise le module geolocalisation, j'ai aussi écrit un petit texte qui contient le mot: l'école
    Si je supprime ce mot de mon texte, j'ai toujours le même message d'erreur. C'est incompréhensible.

  • PierrePierre Messages 10Membre

    En fait, ce n'est pas la string "l'école" du texte de la page qui fait tout planter, c'est la string "l'école" dans le nom ou la description du point d'intérêt. J'ai changé le nom et la description, et maintenant la carte s'affiche. Ouf !
    C'est peut-être l'apostrophe qui fait tout planter... A tester et peut-être informer l'utilisateur que certains caractères ne sont pas autorisés.

  • PierrePierre Messages 10Membre

    Maintenant que la carte s'affiche, c'est super. Merci pour tout ça.
    Toutefois, la carte s'ouvre avec le zoom maximal, ce qui est un peu trop pour mon site. Y a-t-il un paramètre à modifier pour qu'elle s'ouvre automatiquement à un autre niveau de zoom ?

  • lemimilemimi Messages 285Moderateur

    Bonjour @Pierre ,
    Dans module/geolocation/geolocation.php , ligne 373 tu as :

    $maxZoom = 21; // Le zoom maximal pour Leaflet

    Tu réduis la valeur au-dessous de 21. Ici j'ai indiqué 17 : https://www.test.lemimi.fr/zwii-13.4/geolocalisation
    Et à 21, c’était cela :
    Bonne journée... Michel

  • mulaneemulanee Messages 293Membre

    Bonjour,

    En fait, ce n'est pas la string "l'école" du texte de la page qui fait tout planter, c'est la string "l'école" dans le nom ou la description du point d'intérêt.

    Je me méfie comme de la peste des caractères accentués, dans le doute j'enlève l'accent et autres cédilles

  • PierrePierre Messages 10Membre

    J'ai testé : c'est l'apostrophe dans le nom du point d'intérêt qui fait tout planter. Les caractères accentués ne posent pas de problème.
    @lemimi : merci pour cette info concernant le zoom maxi. J'ai essayé 20 et 19 qui ne changent rien, 18 qui donne un cran en dessous du maxi, et 17 qui donne deux crans en dessous du maxi. 18 convient très bien pour mon site.

Connectez-vous ou Inscrivez-vous pour répondre.