google map ne s'affiche plus

Trouvez ici tout l'aide dont vous avez besoin concernant le script d'annuaire Arfooo.
Merci de reporter les éventuels bugs trouvés.

google map ne s'affiche plus

Messagede aprods » Ven 15 Mar 2013 13:52

Bonjour
Depuis une semaine google map de s'affiche pour toutes les nouvelles entrees (c OK pour les ancienne).
j'ai regarder pas mal de posts dont celui la http://forum.arfooo.com/topic4373.html mais je n'ai pas de membre, seul l'admin fait les mise a jour et les enregistrements de nouvelle fiches

J'ai regarder dans la base de donees et la seule difference est que la longitude et latitude ne sont pas renseigner.

Si je les enregistre manuellement en base, la carte s'affiche.

quelle fonction enregistre la longitude et latitude? ou elle se trouve?
de quelle maniere elle le fait?

help please ...
aprods
 
Messages: 31
Inscription: Dim 25 Juil 2010 19:19


Re: google map ne s'affiche plus

Messagede Keroin » Ven 15 Mar 2013 18:59

Même problème que je viens de constater, il y a eu surement des modifs dans l'api de GG map.
Pour faire avancer un peu, la modif à trouver doit se situer sur le fichier \components\GoogleMap.php qui gère la fonction de génération de la map

Code: Tout sélectionner
<?php
/**
* Arfooo
*
* @package    Arfooo
* @copyright  Copyright (c) Arfooo Annuaire (fr) and Arfooo Directory (en)
*             by Guillaume Hocine (c) 2007 - 2010
*             http://www.arfooo.com/ (fr) and http://www.arfooo.net/ (en)
* @author     Guillaume Hocine & Adrian Galewski
* @license    http://creativecommons.org/licenses/by/2.0/fr/ Creative Commons
*/


class GoogleMap
{
    const API_URL = 'http://maps.google.com/maps/api/js';
    const GEO_URL = 'http://maps.google.com/maps/geo';

    private $_points = array();
    private $_zoomLevel;

    public function setZoomLevel($zoomLevel)
    {
        $this->_zoomLevel = $zoomLevel;
    }

    public function addGeoPoint($lat, $lng, $description = '')
    {
        $point = array(
            'lat'         => $lat,
            'lng'         => $lng,
            'address'     => '',
            'description' => $description
        );

        array_push($this->_points, $point);
    }

    public function addAddress($address, $description = '')
    {
        $url = self::GEO_URL . '?&output=json&q=' . urlencode($address);

        if (@ini_get('allow_url_fopen')) {
            $buff = @file_get_contents($url);
        } else {
            $httpClient = new HttpClient();
            $buff = $httpClient->getSiteContent($url, false);
        }

        $response = json_decode(utf8_encode($buff), true);

        if (empty($response['Status']['code'])) {
            throw new Google_Map_ServiceException('Invalid status code');
        }

        if (empty($response['Placemark'][0]['Point']['coordinates'])) {
            throw new Google_Map_AddressNotFoundException('Point can NOT be found');
        }

        $coords = $response['Placemark'][0]['Point']['coordinates'];

        $point = array(
            'lat'         => $coords[1],
            'lng'         => $coords[0],
            'address'     => $address,
            'description' => $description
        );

        array_push($this->_points, $point);
        return array(
            'lat' => $coords[1],
            'lng' => $coords[0]
        );
    }

    public function getScriptCode()
    {
        return "\n<script src=\"" . self::API_URL. "?sensor=false\" type=\"text/javascript\"></script>\n";
    }

    public function getMapCode()
    {
        $html = "<script type=\"text/javascript\">\n
        function showGoogleMap()
        {
        //<![CDATA[

        var myOptions = {
            zoom: " . $this->_zoomLevel . ",
            center: new google.maps.LatLng(" . $this->_points[0]['lat'] . ", " . $this->_points[0]['lng'] . "),
            mapTypeId: google.maps.MapTypeId.ROADMAP
        };
        var map = new google.maps.Map(document.getElementById(\"map\"), myOptions);
        ";

        $i = 0;

        foreach ($this->_points as $point) {
            $i++;

            $infoText = ($point['description']) ? $point['description'] : $point['address'];

            $html .= "
            var point{$i} = new google.maps.LatLng({$point['lat']}, {$point['lng']});
            var marker{$i} = new google.maps.Marker({position: point{$i}, title: \"{$infoText}\"});
            marker{$i}.setMap(map);
            ";
        }

        $html .= "//]]>
        }
        \$(window).load(showGoogleMap);
        </script>
        ";

        return $html;
    }

    public function getUserSideMapCode($address, $description = "")
    {
        $point = array("address" => $address, "description" => $description);
        $infoText = ($point['description']) ? $point['description'] : $point['address'];

        $this->_points = array($point);

        $html = "<script type=\"text/javascript\">\n
        function showGoogleMap()
        {
            var myOptions = {
                zoom: " . $this->_zoomLevel . ",
                mapTypeId: google.maps.MapTypeId.ROADMAP
            };
            var map = new google.maps.Map(document.getElementById(\"map\"), myOptions);
            var geocoder = new google.maps.Geocoder();
        ";

        $i = 0;

        foreach ($this->_points as $point) {
            $i++;

            $address = addslashes($point['address']);
            $html .= "
            geocoder.geocode(
                {
                    'address': \"{$address}\"
                },
                function(results, status)
                {
                    if (status == google.maps.GeocoderStatus.OK) {
                        map.setCenter(results[0].geometry.location);
                        var marker = new google.maps.Marker(
                            {
                                map: map,
                                position: results[0].geometry.location,
                                title: \"{$infoText}\"
                            }
                        );
                    }
                }
            );
            ";
        }

        $html .= "
        }
        \$(window).load(showGoogleMap);
        </script>
        ";

        return $html;
    }

}

class Google_Map_ServiceException extends Exception{}
class Google_Map_AddressNotFoundException extends Exception{}
Les Pages du Keroinsite - Annuaire généraliste gratuit : http://pages.keroinsite.com
Keroin
 
Messages: 192
Inscription: Mar 15 Juil 2008 15:48

Re: google map ne s'affiche plus

Messagede aprods » Ven 22 Mar 2013 14:29

toujours rien??

une idee?? quelqu'un??
aprods
 
Messages: 31
Inscription: Dim 25 Juil 2010 19:19

Re: google map ne s'affiche plus

Messagede Keroin » Ven 22 Mar 2013 15:29

Rien trouvé de probant pour le moment, j'ai même changé ma clef API GG Map car maintenant on peut "suivre sa consommation" directement depuis la console proposée par Google => https://code.google.com/apis/console/ mais ça n'a rien changé, les longitudes et latitudes ne s'enregistrent plus en base de données.
Je n'ai pas eu le temps de fouiller plus loin mais le souci doit se situer dans la fonction "Geocoder" qui s'occupe justement de récupérer ces deux informations.
=> https://developers.google.com/maps/docu ... geocoding/
Les Pages du Keroinsite - Annuaire généraliste gratuit : http://pages.keroinsite.com
Keroin
 
Messages: 192
Inscription: Mar 15 Juil 2008 15:48

Re: google map ne s'affiche plus

Messagede aprods » Sam 23 Mar 2013 19:29

je comprend pas
dans SiteModel.php a la ligne 115 on a
Code: Tout sélectionner
if (isset($data['address']) || isset($data['city']) || isset($data['country'])) {
            $data['_lng'] = "NULL";
            $data['_lat'] = "NULL";
        }

ce qui annule la longitude et latitude ans cas d'update de l'adresse

mais qu'est ce qui enregistre les bonnes donees ?
je ne trouve pas d'update de longitude et latitude ailleurs

je n'ai plus rien en base depuis le 10 mars :(
aprods
 
Messages: 31
Inscription: Dim 25 Juil 2010 19:19

Re: google map ne s'affiche plus

Messagede Strez » Jeu 28 Mar 2013 09:07

Arfooo utilise la v2 de Google maps qui arrive en fin de vie étant dit que Google demande qu'on utilise dès maintenant la V3...
Outils pour le référencement à découvrir d'urgence - Annuaire de référencement pour une bonne indéxation ;)
Strez
 
Messages: 102
Inscription: Ven 28 Mai 2010 06:56
Localisation: Grenoble

Re: google map ne s'affiche plus

Messagede aprods » Jeu 28 Mar 2013 17:12

Merci,
Et on fait comment pour passer en v3?
tu pourrait m'eguiller?


------
Arf, une maj en vue?
aprods
 
Messages: 31
Inscription: Dim 25 Juil 2010 19:19

Re: google map ne s'affiche plus

Messagede Keroin » Jeu 28 Mar 2013 17:14

Strez a écrit:Arfooo utilise la v2 de Google maps qui arrive en fin de vie étant dit que Google demande qu'on utilise dès maintenant la V3...

Non depuis quelques versions Arfooo utilise déjà la V3 ;)
Les Pages du Keroinsite - Annuaire généraliste gratuit : http://pages.keroinsite.com
Keroin
 
Messages: 192
Inscription: Mar 15 Juil 2008 15:48

Re: google map ne s'affiche plus

Messagede aprods » Sam 30 Mar 2013 18:29

alors, on se retrouve au point de depart :(
j'ai toujours pas trouve de solution.
d'autre on le meme probleme ou on est que deux?
aprods
 
Messages: 31
Inscription: Dim 25 Juil 2010 19:19

Re: google map ne s'affiche plus

Messagede UlysseUlysse » Mer 3 Avr 2013 09:56

aprods a écrit:alors, on se retrouve au point de depart :(
j'ai toujours pas trouve de solution.
d'autre on le meme probleme ou on est que deux?


J'ai le même problème et pas de solution ...
UlysseUlysse
 
Messages: 5
Inscription: Mar 26 Oct 2010 12:30

Suivante

Retourner vers Installation, aide et report de bugs

 


  • Articles en relation
    Réponses
    Vus
    Dernier message

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités

 
Copyright © arfooo.com  2007 - 2011  -  Tous droits réservés  -  Partenaires de confiance
Sites du groupe: petites annonces gratuites   voyance en direct - tirage tarot   Consultant en référencement
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group | phpBB SEO Traduction par: phpBB-fr.com
cron