Joomladay francophone 2018 à Paris 18 et 19 mai

Qui sait faire fonctionner CB + GEOCODER + GoogleMaps ?

Réduire
X
  • Filtrer
  • Heure
  • Afficher
Tout effacer
nouveaux messages

  • Qui sait faire fonctionner CB + GEOCODER + GoogleMaps ?

    Bonjour,

    Je viens de passer plusieurs heures à essayer de faire fonctionner CB + GEOCODER +GoogleMaps. Après de multiples tentatives, je n'en peu plus et j'appelle à votre aide.

    Mon objectif est d'obtenir une vue en carte de l'adresse de chacun des membres inscrit sur le site.

    1) On consulte la liste
    2) on demande à voir un profil en particulier
    3) ce faisant, outre les différents renseignements figurant sur la fiche du profil, s'affiche aussi une carte qui le situe géographiquement

    Je croyais que googlemap pouvait fonctionner avec CB ! Que nenni à cette heure.
    Il existe un autre com qui s'appelle CB enhanced, mais entièrement germano-anglais qui intègre geocoder en natif, mais vu l'usine à gaz qu'est déjà CB, j'imagine cette version étendue !

    Je précise que j'avais d'abord utilisé le CB de base, trouvé dans l'espace officiel et qu'il avait méchament bugué avec plusieurs éléments standards de Joom. Un comble pour le prétendu "plus meilleur des com". Fort heureusement j'ai trouvé en fouillant sur ce forum, une version francisée et propre qui fonctionne à merveille, hackée par Fabrice.

    Je travaille avec une version Joomla 1.012 et CB 1.0.2FL, sur un serveur mutualisé tout ce qu'il y a de plus classique (chez yellis)

    Ce que j'ai fait :

    récupérer une clé API chez Google
    Installé le com_google_maps2.6b
    installé le plugin CB_geocoder1.1, puis la v 1.2
    introduit la clé dans le com_google
    fixé les params : autodecode sur on et autoxml sur on, le reste en l'état. dans l'onglet CB j'ai mis Map User sur all user, ainsi qu'ajouté les paramètres dans le plugin, à savoir les name des tables contenant nom, adresse, etc

    Une fois cela réalisé, je vais consulter une fiche, et là rien, ni carte, ni possibilité d'en voir une. J'ai essayé en admin et en user, aucun résultat avec les deux états. Le plugin 1.1 réclame une longitude, même quand le champ est renseigné et malgré le com_google sur autoedit. Le plugin 1.2 ne demande rien, mais n'affiche rien non plus (une page blanche, à priori une erreur de php qq part).

    Le seul truc que j'ai obtenu, c'est une carte qui s'affiche quand j'utilise l'adresse par défaut indiquée dans l'aide (....//index.php?option=com_google_maps): elle pointe au large de l'Afrique...

    J'ai désinstallé le plugin geocoder 1.1 et utilisé une version 1.2 trouvée dans un autre package, sur joomlaos.de

    Même résultat !

    Je vous passe les autres détails comme la désactivation de 2-3 modules de CB, qui empêchaient l'affichage de ma page contenant la userlist...

    J'ai épuisé le forum de CB: rien ! Celui de joomlaos.de: rien: Celui d'ici: rien ! Au meix des pistes et un super tuto pour utiliser googlemap, mais rien pour l'utiliser avec CB !

    Alors si qq a une solution à me proposer je suis preneur.

    D'avance mille mercis
    Dernière édition par netajour à 31/07/2007, 20h43

  • #2
    Envoyé par netajour Voir le message
    rien ! Au mieux des pistes et un super tutoriel pour utiliser googlemap, mais rien pour l'utiliser avec CB !
    Alors si qq a une solution à me proposer je suis preneur.
    D'avance mille mercis
    Salut, j'attends simplement que les concepteurs de community builder arrive à sortir une version pour joomla 1.0.13 et je me mets à l'oeuvre (tuto et traduction)...

    Tu peux déjà essayer avec la version française de googlemap dispo dans les extensions de joomla.fr : ici
    JoomlaDay FR 2018 - 18/19 Mai 2018 ! J'y serai ... et vous ?

    Joomla User Group (JUG) Lille : https://www.facebook.com/groups/JUGLille/

    Commentaire


    • #3
      Merci Daneel pour ta rapidité, mais tu t'en doutes, ce n'est pas la réponse que j'attend !

      Je reste avec ma v 1.012 et mon problème à résoudre maintenant et non à la saint glin glin

      Si tu as une solution je suis preneur ! (et probablment pas le seul)

      Commentaire


      • #4
        a tu fait un lien url sous la forme ?

        Code:
        index.php?option=com_google_maps&category=-3
        -3 étant la catégorie pour afficher les utilisateurs définis dans community builder
        JoomlaDay FR 2018 - 18/19 Mai 2018 ! J'y serai ... et vous ?

        Joomla User Group (JUG) Lille : https://www.facebook.com/groups/JUGLille/

        Commentaire


        • #5
          Un lien sous la forme ?

          désolé mais je ne comprend pas ! Je devrais mettre un lien où ?

          dans le fichier xls ? Si oui, je ne vois pas où, ni avec qu'elle syntaxe, étant trop ignorant de la chose xls

          Commentaire


          • #6
            lol, plus simplement pour voir la carte des inscrits, tu tape :

            Code:
            www.tonsite.com/index.php?option=com_google_maps&category=-3
            JoomlaDay FR 2018 - 18/19 Mai 2018 ! J'y serai ... et vous ?

            Joomla User Group (JUG) Lille : https://www.facebook.com/groups/JUGLille/

            Commentaire


            • #7
              Comment j'ai fait marcher le bouzin...

              Oups !!! Nos posts se croisent !

              Je rappelle qu'il s'agit de faire tourner une googlecarte en relation avec la liste des membres générée par Community Builder.

              Je signale aussi que le tuto "comment installer googleMaps" ne sert pas à paramétrer le cas exposé ici.

              S'en inspirer, oui, s'en servir, non.

              --------------

              installation du composant com_google_maps 2.6b (touché à rien et aussitôt passé à)
              installation du plug-in geodecoder 1.2 livré avec

              ----------

              Direction composant > google maps > configuration

              Onglet général

              - introduction de la clé API
              - styles divers: laissé ceux par défaut
              - niveau de zoom: 6 (je veux afficher la France)
              - point central: defaut user
              - long : 46
              - lat: 2

              - ouverture auto sur point central: yes
              - contrôles des zooms: tous sur yes

              Onglet Advanced

              Tout reste par défaut, comme prévu par l'install, sauf :

              création du fichier xml: yes
              Géoencodage automatique: yes
              edition des body tag: non (plus nécessaire avec cette nouvelle version d'après l'auteur)
              Coché toutes les cases, sauf la dernière concernant les coordonnées

              donc adresse, ville, état/région, pays, code postal

              Onglet CB

              Affichage des utilisateurs: all user (tous les mebres de mon site doivent apparaître sur la carte)
              Cacher nom réel: oui (gadget permissif)
              User category icon: un chiffre netre 0 et 10, soit la couleur qui me convenait
              total user: 125, par défaut

              Onglet xls

              aucune modif ! Laissé en l'état

              Voilà les paramètres de Google maps fixé !

              Plus aléatoire à présent, le réglage(?) du plugin geocoder1.2 pour CB 1.02

              composants > community builder > plugin > geocoder

              installé: oui
              publié: NON. Si je le publie, ça foire la mise en page et on ne peut plus, ni éditer un profil, ni s'enregistrer (trop fort ce CB construit avec des tables dans tous les sens)

              Dans les paramètres: (après avoir cliqué sur le nom)

              Address field: ici il faut mettre le nom du champ addresse du formulaire utilisé par CB. Par défaut, la version que j'utilise utilise le mot "address" sans cb_ devant.

              Tout pareil pour les autres champs:

              city field: city,
              state field: state,
              Post Code field: zipcode,
              Country field: country

              c'est ce qui apparaîtra dans les infobulles sur la carte. Je n'ai pas essayé, mais je présume qu'on peut faire afficher n'importe quel champ de son formaulaire à cet endroit, à condition de respecter l'orthographe du champ figurant dans la liste des champs de CB...

              Et voilà le plug de construit.

              Direction composants > community builder > tab management

              Mis geocoder sur publié

              on donne le nom qu'on veut qui apparaîtra dans l'onglet ou le div du formulaire d'enregistrement des membres (en front comme en backend).


              Direction composants > community builder > field management


              il y a 3 champs.

              cb_geomangeocode, avec une case à cocher (qui refuse de s'afficher pour le moment) que j'ai laissé ouvert, mis sur public et en champ obligatoire... pas d'effet à cette heure en dépit des multiples changement de droits... Nul

              cb_longitude t cb_lattitude, que je laisse s'afficher dans le profil, champ non obligatoire et affichés au moment de l'enregistrement;

              Bien sûr ces 3 champs sont publiés.

              Enfin, j'ai terminé le bouzin en allant mettre un lien vers la carte sur ma page réservée aux membres:

              Menu > usermenu > nouveau > lien url

              Donné un nom, et entré l'url: index.php?option=com_google_maps

              Le =category-3 suggéré par Daneel n'ayant aucune importance, puisque c'est le plug de CB qui (devrait) pilote (r) google maps.

              Rien n'est moins sûr à cette heure.

              En tout cas, la carte s'affiche correctmeent sous FF, un peu péniblement avec IE 6 et honorablement avec IE 7.

              C'est dit nulle part, sauf sur le forum du concurrent teuton CBE, mais il n'ya pas de geocode automatique dans le backend.

              La seule chose qui ne semble pas fonctionner "devant", c'est l'affichage automatique des longitude et latitude dans le formulaire d'enregistrment. Chaque membre devra l'entrer à la main lors d'une mise à jour de son profil.

              Un moindre mal, somme toute, pour ce qui n'est au final qu'un monstrueux gadget pour amuser la galerie, contribuer à l'impérialisme googlien et à afficher un peu de pub (que j'ai virée) dans une interface d'admin en principe réservée à des accès dûment autorisés. Mais bon, that's life !

              je considère donc ce post comme provisoirement réglé.

              Si jamais je découvrai d'autres choses, je reviendrai dessus.

              Merci Daneel pour ta trad, ton tuto et ta tentive d'aide, en te signalant (ne le prend pas mal) au passage une petite erreur de balise sur l'image du fichier xls <xls:copy-of select="misc">, il manque </xls:copy-of>.

              May this help, comme il disent !

              Mais surtout ne me demandez pas comment ça a subitement marché après 72 heures quasi non-stop de recherches et de tentatives !
              Dernière édition par netajour à 30/07/2007, 22h37

              Commentaire


              • #8
                Merci pour ta patience, c'est vrai que je n'ai pas traduit la partie community builder pour l'instant mais je vais quand même m'y plonger même si cela reste un gadget comme tu le dis...
                JoomlaDay FR 2018 - 18/19 Mai 2018 ! J'y serai ... et vous ?

                Joomla User Group (JUG) Lille : https://www.facebook.com/groups/JUGLille/

                Commentaire


                • #9
                  Ce n'est pas tant une traduction de Google Maps pour CB qu'il me fallait, mais plutôt un mode d'emploi CLAIR pour CB...

                  Ce qui est pénible avec ce truc, c'est qu'il se pose dans le template de façon incroyable. Un gadget comme la carte, orienté windows, qu'à voir la console d'erreur pour comprendre, ne fait qu'en rajouter, question mise en page à surveiller de près.

                  Dans CB, on peut choisr d'afficher ses formulaires sous forme de table ou de div, voire en texte brut. Ce qui est parfait. Hélas, ça ne vaut que pour les formulaires que l'on crée. Le formulaire qui contient CB login par exemple, n'est pas accessible en backend et lorsque s'affiche le form complet, avec le premier onglet contenant les identifiants, puis les 2-3 autres que tu as ajouté, il s'en suit un léger conflit entre l'affichage par onglet de l'ID et tes éventuels réglages pour afficher autrement.

                  A ce stade, c un blank page quasi garanti (probablementun conflit php quelque part). Le pire de ceci, c'est que les autres modules de CB n'arrivent plus à s'afficher (comprofilmoderator, cblogin, ...)

                  En voyant google map s'afficher dans IE 6 la première fois, j'ai compris qu'il y avait "quelque chose" qui flottait entre ma colonne centrale et mon menu de droite (j'ai un gabarit sur 2 colonnes): tout s'est déchiré sur à peu près la taille de l'affichage par défaut de la carte qui est de 600 x je sais plus, il me semble. Un grand blanc horizontal, sans carte évidemment, à ce moment-là.

                  L'autre souci majeur, c'est les liens entre le plugin CB et googlemaps. A part la gestion des champs à montrer dans l'infobulle (facultatif), je ne vois pas à quoi il sert. On peut très bien s'en passer, à priori. Googlemaps marche sur plein de système et de cms différents, sans plugin. L'unique truc à savoir c'est que CB correspond à la catégorie -3 !!!! Pas 3, mais - 3... Là, on se demande pourquoi faire simple quand on peut faire compliqué.

                  C'est bien beau de traduire des composants, ce serait encore mieux si ils fonctionnaient. Chez CB le forum est à ch*** et pénible à lire. Il y a en tout est pour tout 90 post de questions a sujet de geocode, et quasiment aucun avec une réponses exploitable. Pareil chez Joomla allemagne (j'ai de la chance de comprendre le teuton), peu de choses sur CB, mais plutôt beaucoup sur CBE. Et il reste le forum de CBE diretement, sur lequel l'auteur répond fréquemment lui-même et j'y ai trouvé indirectement pas mal de réponse sur CB. Et je crois bien que je vais me l'installer, même s'il n'est pas en français(only german/english).

                  En tout cas, je suis loin d'être fan de CB, qui bien que pratique, n'en reste pas moins une usine à gaz un peu vieillote et pas au mieux avec ses petits camarades joomlesques qu'il veut mener à la baguette.

                  Commentaire


                  • #10
                    Se casser les dents...

                    Ha ben ca fait plaisir de voir que je ne suis pas le seul à m'etre cassé les dents sur CB+GoogleMaps+Geocoder.

                    Je voulais faire tout pareil, un onglet utilisateur qui permet de montrer sur la carte ou il se trouve et une carte générale avec tous les membres.

                    Impossible, jamais réussi à faire quoi que ce soit....

                    Par contre, j'utilise le composant sobi2, qui est un annuaire (excellent en passant, mais mal traduit... plein de faute de francais). Bref.

                    Sobi permet de géoréférencer sur une carte google, chaque élément de l'annuaire. Pour cela : il suffit de renseigner les champs adresse, ville, etc, puis utiliser un bouton 'TROUVER', qui trouve les coordonnées Lat.+long. en mois d'une demi seconde. Et hop le tour est joué, l'article affiche ensuite la carte avec une punaise à l'endroit spéciphié.

                    Il existe un composant payant (en bourbine... heu pardon c'est une expression suisse pour allemand) qui évite le bouton 'TROUVER'. Pour ma part j'ai simplement créé un input personnalisé (comme dans CB) pour mettre ce bouton et le code JS qui va avec. Tout cela est visible sur www.ecolier.ch >> liens.

                    Bon il suffirai de mettre ce bouton TROUVER dans CB mais il est impossible de rajouter un champs perso dans CB. Il faudrai modifier le code.

                    Voila...

                    PS : personnellement et contrairement à toi, je trouve CB très bien foutu, et pas tellement viellot. PAr contre leur site+forum est à ch#er.
                    Développement: Extensions joomla www.myjoom.com

                    Commentaire


                    • #11
                      Une question quand meme pour me rassurer

                      Sur ta carte, seul les membres qui on entré leur lat et long apparaissent ?

                      Ou alors ceux qui on entré une adresse sans coordonées s'affichent aussi ?

                      Car si on regarde le code php de geocoder, apparement il y a une focntion qui récupère automatiquement les coordonnées selon les infos d'adresse.

                      Et ceci sans le bouton 'TROUVER' que j'utilise sur mon site avec le comp. SOBI2

                      Merci de ta réponse,
                      cédric
                      Développement: Extensions joomla www.myjoom.com

                      Commentaire


                      • #12
                        La réponse est (presque) dans ta question !

                        Seuls les membres qui ont entré leurs L et l sont affiché.

                        il y a bien une fonction qui devrait afficher cela automatiquement, mais elle semble ne pas fonctionner.

                        Commentaire


                        • #13
                          bonjour,
                          je cherche à afficher tous mes membres sur une même carte, mais j'ai un problème quand je veux rentrer les latitudes et longitudes dans les profils, il m'affiche un message d'erreur disant qu'il faut rentrer un nombre dans les champs ! ...alors que c'est exactement ce que je cherche à faire :/ je pensais qu'il ne prenait pas en compte les "." ou les "," mais meme avec des chiffres ronds, ça ne marche pas...

                          Condamnée à rentrer chaque adresse à la main moi même ?

                          Commentaire


                          • #14
                            tu utilises quelle version de geocoder ?

                            Commentaire


                            • #15
                              Voilà, c'est mieux

                              Bon bon bon... A ce stade jeeux dire sans trop me mouiller que le plugin geocoder est une vraie daube. En voulant modifier le code permettant de retrouver directement les coordonnées je me rend compte que ce plugin est une version 'debug' avec la moitié du code commentée.

                              Bref.

                              J'ai maintenant ajouté un bouton 'trouver coordonnées' dans CB.

                              Pour cela :

                              Composants >>CB >> Field Management

                              Nouveau

                              Type : delimiter
                              Dans le champs description :

                              Code:
                              Ce bouton vous permet de trouver vos coordonnées géographique, afin de vous afficher sur la carte des utilisateurs. Si les coordonnées ne s'affichent pas c'est qu'il y a n problème avec vos données. Par exemple il manque l'adresse (vu que l'adresse n'est pas obligatoire, vous pouvez la saisir, cliquer sur le bouton trouver puis retirer l'adresse !).
                              
                              <script type="text/javascript" language="JavaScript">
                              /* adjust here the field names if they are not correct */
                              var apiKey = "ABQIAAAA76Yvxw-LYlKu_3zb6qSBABStO5ZxWs-BC3IF2BACBjxiHGvBLxSV-VTFXPHOeypdsw2u1x1Q_Aj8JA";
                              var postalCodeField = 'cb_npa';
                              var cityField = 'cb_ville';
                              var streetField = 'cb_adresse';
                              var countryField = 'cb_pays';
                              var latitudeField = 'cb_geolatitude';
                              var longitudeField = 'cb_geolongitude';
                              
                              	function fetchCoordinates() {
                              		/* here you should not change anything  */
                              		var gRequest = null;
                              		var postalcode = document.getElementById(postalCodeField).value;
                              		var city = document.getElementById(cityField).value;
                              		var street = document.getElementById(streetField).value;
                              		var country = "suisse";/*document.getElementById(countryField).value;*/
                              
                              {
                              			var gRequest = "http://maps.google.com/maps/geo?q=" +street+ "+" +postalcode+ "+" +city+ "+" +country+ "&callback=getCoordinates&output=JSON&key="+apiKey;
                              			var scriptObj = document.createElement("script");
                              			scriptObj.setAttribute("type", "text/javascript");
                              			scriptObj.setAttribute("src", gRequest);
                              			document.getElementsByTagName("head").item(0).appendChild(scriptObj);
                              		}
                              	}
                              	function getCoordinates(data) {
                              		switch(data.Status.code) {
                              			case 610:
                              				/* you can change the error message here */
                              				alert("Impossible de trouver des coordonnées pour cette adresse.");
                              				break;
                              			case 603:
                              			case 602:
                              			case 601:
                              			case 500:
                              				/* you can change the error message here */
                              				alert("Impossible de trouver des coordonnées pour cette adresse.");
                              				break;
                              			case 200:
                              				document.getElementById(latitudeField).value = data.Placemark[0].Point.coordinates[1];
                              				document.getElementById(longitudeField).value = data.Placemark[0].Point.coordinates[0];
                              				break;
                              		}
                              	}
                              </script>
                              <!-- You can change the "value" (The label on the button) here -->
                              <input type="button" class="button" onclick="fetchCoordinates();" value="Trouver"/>
                              Et le tour est joué.

                              Juste vous rendre attentif que les valeurs
                              Code:
                              var apiKey = "ABQIAAAA76Yvxw-LYlKu_3zb6qSBABStO5ZxWs-BC3IF2BACBjxiHGvBLxSV-VTFXPHOeypdsw2u1x1Q_Aj8JA";
                              var postalCodeField = 'cb_npa';
                              var cityField = 'cb_ville';
                              var streetField = 'cb_adresse';
                              var countryField = 'cb_pays';
                              var latitudeField = 'cb_geolatitude';
                              var longitudeField = 'cb_geolongitude';

                              sont dépendantes de votre config de CB.
                              Développement: Extensions joomla www.myjoom.com

                              Commentaire

                              Annonce

                              Réduire
                              1 sur 2 < >

                              C'est [Réglé] et on n'en parle plus ?

                              A quoi ça sert ?
                              La mention [Réglé] permet aux visiteurs d'identifier rapidement les messages qui ont trouvé une solution.

                              Merci donc d'utiliser cette fonctionnalité afin de faciliter la navigation et la recherche d'informations de tous sur le forum.

                              Si vous deviez oublier de porter cette mention, nous nous permettrons de le faire à votre place... mais seulement une fois
                              Comment ajouter la mention [Réglé] à votre discussion ?
                              1 - Aller sur votre discussion et éditer votre premier message :


                              2 - Cliquer sur la liste déroulante Préfixe.

                              3 - Choisir le préfixe [Réglé].


                              4 - Et voilà… votre discussion est désormais identifiée comme réglée.

                              2 sur 2 < >

                              Assistance au forum - Outil de publication d'infos de votre site

                              Compatibilité: PHP 4.1,PHP4, 5, 6DEV MySQL 3.2 - 5.5 MySQLi from 4.1 ( @ >=PHP 4.4.9)

                              Support Version de Joomla! : | J!3.0 | J!2.5.xx | J!1.7.xx | J!1.6.xx | J1.5.xx | J!1.0.xx |

                              Version française (FR) D'autres versions sont disponibles depuis la version originale de FPA

                              UTILISER À VOS PROPRES RISQUES :
                              L'exactitude et l'exhaustivité de ce script ainsi que la documentation ne sont pas garanties et aucune responsabilité ne sera acceptée pour tout dommage, questions ou confusion provoquée par l'utilisation de ce script.

                              Problèmes connus :
                              FPA n'est actuellement pas compatible avec des sites Joomla qui ont eu leur fichier configuration.php déplacé en dehors du répertoire public_html.

                              Installation :

                              1. Téléchargez l'archive souhaitée : http://afuj.github.io/FPA/

                              Archive zip : https://github.com/AFUJ/FPA/zipball/master

                              2. Décompressez le fichier de package téléchargé sur votre propre ordinateur (à l'aide de WinZip ou d'un outil de décompression natif).

                              3. Lisez le fichier LISEZMOI inclus pour toutes les notes de versions spécifiques.

                              4. LIRE le fichier de documentation inclus pour obtenir des instructions d'utilisation détaillées.

                              5. Téléchargez le script fpa-fr.php à la racine de votre site Joomla!. C'est l'endroit que vous avez installé Joomla et ce n'est pas la racine principale de votre serveur. Voir les exemples ci-dessous.

                              6. Exécutez le script via votre navigateur en tapant: http:// www. votresite .com/ fpa-fr.php
                              et remplacer www. votresite .com par votre nom de domaine


                              Exemples:
                              Joomla! est installé dans votre répertoire web et vous avez installé la version française du fichier FPA:
                              Télécharger le script fpa-fr.php dans: /public_html/
                              Pour executer le script: http://www..com/fpa-fr.php

                              Joomla! est installé dans un sous-répertoire nommé "cms" et vous avez installé la version française du fichier FPA:
                              Télécharger le script fpa-fr.php dans: /public_html/cms/
                              Pour executer le script: http://www..com/cms/fpa-fr.php

                              En raison de la nature très sensible de l'information affichée par le script FPA, il doit être retiré immédiatement du serveur après son utilisation.

                              Pour supprimer le script de votre site, utilisez le lien de script de suppression fourni en haut de la page du script. Si le lien de suppression échoue pour supprimer le script, utilisez votre programme FTP pour le supprimer manuellement ou changer le nom une fois que le script a généré les données du site et le message publié sur le forum. Si le script est toujours présent sur le site, il peut être utilisé pour recueillir suffisamment d'informations pour pirater votre site. Le retrait du script empêche des étrangers de l'utiliser pour jeter un oeil à la façon dont votre site est structuré et de détecter les défauts qui peuvent être utilisé à vos dépends.
                              Voir plus
                              Voir moins
                              Travaille ...
                              X