230 lines
7.0 KiB
PHP
230 lines
7.0 KiB
PHP
<div id="infogeo" class="clearfix">
|
|
<div id="infogeo_txt">
|
|
|
|
<?php
|
|
$google_map = './?page=referer&part=gmap&siret='.$siret.
|
|
'&url=http://maps.google.fr/maps?f=q%26hl=fr%26geocode=%26q='.
|
|
$etab->AdresseNum.',+'.
|
|
urlencode(normaliseVoie($etab->AdresseVoie)).'+'.
|
|
urlencode(htmlspecialchars_decode($etab->AdresseRue, ENT_QUOTES)).
|
|
',+'.$etab->CP.'+'.
|
|
urlencode($etab->Ville);
|
|
|
|
if ($etab->GeoPrecis > 0) {
|
|
print '<span id="geolocalisation">';
|
|
print '<b>Information géographique :</b><br/>'.
|
|
'Latitude : '. dec2dms($etab->GeoLat).' ('.$etab->GeoLat.')<br/>'.
|
|
'Longitude : '.dec2dms($etab->GeoLon).' ('.$etab->GeoLon.')<br/>';
|
|
print '</span>';
|
|
}
|
|
?>
|
|
|
|
<a id="lien-google" href="<?=$google_map?>" target="_blank">
|
|
Afficher l'adresse sur Google Map ©</a><br/>
|
|
<br/>
|
|
<b>Code commune / Rivoli :</b><br/>
|
|
<?php print $etab->Dept.' '.$etab->codeCommune.' / '.$etab->Rivoli; ?>
|
|
</div>
|
|
|
|
<?php
|
|
if (hasPref('mappy')) {
|
|
require_once 'mappy/mappy.php';
|
|
$photo = '';
|
|
$ville = ' '.trim(preg_replace('/([0-9]|ARRONDISSEMENT|_)/i', ' ',
|
|
$etab->Ville)).' ';
|
|
$ville = trim(strtr($ville, array(' EME ' => '', ' ER ' => '')));
|
|
if (in_array(strtoupper($ville), $tabVilleMappy)) {
|
|
$rue = trim(strtr(normaliseVoie($etab->AdresseVoie).' '.
|
|
$etab->AdresseRue,
|
|
array(' ST ' => ' SAINT ', ' STE ' => ' SAINTE ')));
|
|
$source = 'm';
|
|
} else {
|
|
$photo = 'http://cbk0.google.com/cbk?output=thumbnail&w=150&h=69&ll='.
|
|
$etab->GeoLat.','.$etab->GeoLon;
|
|
if (@fopen($photo, 'r') == false) {
|
|
$photo = '';
|
|
}
|
|
$source = 'g';
|
|
}
|
|
?>
|
|
<div id="infogeo_photo">
|
|
<?php
|
|
if ($source == 'm') {
|
|
function getToken($login, $pwd) {
|
|
|
|
$ACCESSOR_URL = 'http://axe.mappy.com/1v1/'; // Serveur de Production
|
|
|
|
$timestamp = time();
|
|
$hash = md5($login."@".$pwd."@".$timestamp);
|
|
$preToken = $login."@".$timestamp."@".$hash;
|
|
|
|
$urlGetToken = $ACCESSOR_URL . 'token/generate.aspx?auth=' .
|
|
urlencode($preToken) . '&ip=' . urlencode($_SERVER["REMOTE_ADDR"]);
|
|
|
|
$fh = @fopen($urlGetToken, 'rb') ;
|
|
if ($fh == false) {
|
|
return false;
|
|
}
|
|
$token = '';
|
|
while (!feof($fh)) {
|
|
$token .= fread($fh, 8192);
|
|
}
|
|
fclose($fh);
|
|
return $token;
|
|
}
|
|
|
|
$token = getToken('scoresdecisions', 'g1nq3iKv');
|
|
if ($token == false) {
|
|
print "Error while getting the token";
|
|
}
|
|
|
|
$src = 'http://axe.mappy.com/1v1/init/get.aspx?auth='.$token.
|
|
'&version=2.01&solution=ajax';
|
|
?>
|
|
<div>
|
|
<img id="pp-cb-thumb" width="300px" />
|
|
</div>
|
|
<script src=<?php print $src; ?> ></script>
|
|
<script type="text/javascript">
|
|
$(document).ready(function() {
|
|
var photoService = new Mappy.api.visiocity.PhotoService();
|
|
var geo = new Mappy.api.geolocation.Geocoder();
|
|
|
|
var address = "<?=$etab->AdresseNum?> <?=$rue?> <?=$ville?>";
|
|
geo.geocode(address,
|
|
function(result) {
|
|
photoService.search(result[0], "f", serviceHandler);
|
|
},
|
|
function(error) {
|
|
});
|
|
|
|
var serviceHandler = function(result) {
|
|
if (result instanceof Mappy.api.visiocity.Frontage) {
|
|
var current = result.getCurrent();
|
|
var img = $('<img src="' + current.getURL(320, null) +
|
|
'" alt="' + current.getDescription() +
|
|
'" width="300px" />');
|
|
$('#pp-cb-thumb').replaceWith(img);
|
|
}
|
|
}
|
|
}
|
|
);
|
|
</script>
|
|
<?php
|
|
} else if ($photo != '') {
|
|
?>
|
|
<div id="legende-photo">
|
|
Cliché à l'approche de l'adresse postale.
|
|
</div>
|
|
<div>
|
|
<img id="pp-cb-thumb" src="<?=$photo?>" width="300px" height="128px" />
|
|
</div>
|
|
|
|
<?php
|
|
switch ($_SERVER['SERVER_NAME']) {
|
|
case 'extranet.devlocal.com':
|
|
$key =
|
|
'ABQIAAAAgaXnaVXxxcgebvrN30E-VhT6B-FIN0IQI1k'.
|
|
'CChCUYV6RpBO17hTl__Sqiv_xQZFCiaRgHAoc_v9HcQ';
|
|
break;
|
|
case 'extranetrec.scores-decisions.com':
|
|
$key =
|
|
'ABQIAAAAuKBtUyFonYJBl1fqfc78tRQQcNgS-tLiAG-'.
|
|
'ic2CW9PypgC_xRhTjSL9-5iBPvj3GA1_AvZYQU_QR3Q';
|
|
break;
|
|
case 'extranet.scores-decisions.com':
|
|
$key =
|
|
'ABQIAAAAuKBtUyFonYJBl1fqfc78tRSYaqxLwFTMDT_'.
|
|
'MtTSFor1bsUZ_ChTvuzyTINkPMlW88Ar9fofaphzN3w';
|
|
break;
|
|
default:
|
|
$key = '';
|
|
break;
|
|
}
|
|
?>
|
|
|
|
<script type="text/javascript"
|
|
src="http://maps.google.com/maps?file=api&v=2&key=<?=$key?>">
|
|
</script>
|
|
<script type="text/javascript">
|
|
function showPanoData(panoData) {
|
|
if (panoData.code != 200) {
|
|
return;
|
|
}
|
|
$('#pp-cb-thumb').replaceWith(
|
|
'<div id="pp-cb-thumb"><div class="left">' +
|
|
'<img src="http://maps.google.fr/cbk?output=tile&panoid=' +
|
|
panoData.location.panoId +
|
|
'&zoom=1&x=0&y=0&cb_client=maps_sv" />' +
|
|
'</div>' +
|
|
'<div class="right">' +
|
|
'<img src="http://maps.google.fr/cbk?output=tile&panoid=' +
|
|
panoData.location.panoId +
|
|
'&zoom=1&x=1&y=0&cb_client=maps_sv" />' +
|
|
'</div></div>');
|
|
|
|
$('#legende-photo' ).css('display','block');
|
|
$('#pp-cb-thumb' ).css('display','block');
|
|
}
|
|
function doShowPanoData(ll) {
|
|
var panoClient = new GStreetviewClient();
|
|
panoClient.getNearestPanorama(ll, showPanoData);
|
|
}
|
|
function geoCodeCB(reponse) {
|
|
if (reponse &&
|
|
reponse.Status.code == 200 &&
|
|
reponse.Placemark.length == 1 &&
|
|
reponse.Placemark[0].AddressDetails.Accuracy > 5) {
|
|
var lat = reponse.Placemark[0].Point.coordinates[1];
|
|
var lon = reponse.Placemark[0].Point.coordinates[0];
|
|
var ll = new GLatLng(lat, lon);
|
|
$("#geolocalisation").
|
|
replaceWith("<b>Information géographique :</b><br/>" +
|
|
"Latitude : " + lat + "<br/>" +
|
|
"Longitude : " + lon + "<br/>");
|
|
$("#lien-google").
|
|
replaceWith(
|
|
"<a href=http://maps.google.fr/maps?q=" +
|
|
<?php
|
|
print '"'.urlencode($etab->AdresseNum.' '.
|
|
$etab->AdresseRue.' '.
|
|
$etab->CP.' '.
|
|
$etab->Ville).'"';
|
|
?> +
|
|
" target=_blank>" +
|
|
"Afficher l'adresse sur Google Map ©</a>"
|
|
);
|
|
doShowPanoData(ll);
|
|
}
|
|
}
|
|
function affichePhoto() {
|
|
<?php
|
|
if ($etab->GeoPrecis < 7) {
|
|
print 'var geoCoder = new GClientGeocoder;';
|
|
print 'geoCoder.getLocations("'.
|
|
$etab->AdresseNum.' '.
|
|
$etab->AdresseRue.' '.
|
|
$etab->CP.' '.
|
|
$etab->Ville.'", geoCodeCB);';
|
|
} else {
|
|
print 'var ll = new GLatLng('.$etab->GeoLat.', '.$etab->GeoLon.');';
|
|
print 'doShowPanoData(ll);';
|
|
}
|
|
?>
|
|
}
|
|
$(document).ready(function() {
|
|
if ($('#pp-cb-thumb').length) {
|
|
affichePhoto();
|
|
}
|
|
}
|
|
);
|
|
</script>
|
|
<?php
|
|
}
|
|
?>
|
|
</div>
|
|
<?php
|
|
}
|
|
?>
|
|
</div>
|