Merge pull request #270 from annando/1506-googlemaps

New addon GoogleMaps, changed map format for OSM
pull/271/head
fabrixxm 2015-06-30 08:33:16 +02:00
commit 9ea1e6184b
2 changed files with 57 additions and 22 deletions

41
googlemaps/googlemaps.php Normal file
View File

@ -0,0 +1,41 @@
<?php
/**
* Name: Google Maps
* Description: Use Google Maps for displaying locations. After activation the post location just beneath your avatar in your posts will link to Google Maps.
* Version: 0.1
* Author: Michael Vogel <https://pirati.ca/profile/heluecht>
*
*/
require_once('include/cache.php');
function googlemaps_install() {
register_hook('render_location', 'addon/googlemaps/googlemaps.php', 'googlemaps_location');
logger("installed googlemaps");
}
function googlemaps_uninstall() {
unregister_hook('render_location', 'addon/googlemaps/googlemaps.php', 'googlemaps_location');
logger("removed googlemaps");
}
function googlemaps_location($a, &$item) {
if(! (strlen($item['location']) || strlen($item['coord'])))
return;
if ($item['coord'] != "")
$target = "http://maps.google.com/?q=".urlencode($item['coord']);
else
$target = "http://maps.google.com/?q=".urlencode($item['location']);
if ($item['location'] != "")
$title = $item['location'];
else
$title = $item['coord'];
$item['html'] = '<a target="map" title="'.$title.'" href= "'.$target.'">'.$title.'</a>';
}

View File

@ -73,31 +73,27 @@ function openstreetmap_location($a, &$item) {
if(! $marker) if(! $marker)
$marker = 0; $marker = 0;
$location = ''; if ($item['coord'] != "") {
$coord = '';
$location = $item['location'];
$location = (($location && (! $item['coord'])) ? '<a target="map" title="' . $item['location'] . '" href="'.$nomserver . '?q=' . urlencode($item['location']) . '">' . $item['location'] . '</a>' : $location);
if($item['coord']) {
$coords = explode(' ', $item['coord']); $coords = explode(' ', $item['coord']);
if(count($coords) > 1) { if(count($coords) > 1) {
$lat = urlencode(round($coords[0], 5)); $lat = urlencode(round($coords[0], 5));
$lon = urlencode(round($coords[1], 5)); $lon = urlencode(round($coords[1], 5));
$coord = '<a target="map" class="OSMMapLink" title="' . $item['coord'] . '" href="'. $tmsserver; $target = $tmsserver;
if($marker > 0) if($marker > 0)
$coord .= '?mlat=' . $lat . '&mlon=' . $lon; $target .= '?mlat='.$lat.'&mlon='.$lon;
$coord .= '#map=' . intval($zoom) . '/' . $lat . '/' . $lon .'">Map</a>'; $target .= '#map='.intval($zoom).'/'.$lat.'/'.$lon;
} }
} }
if(strlen($coord)) {
if($location) if ($target == "")
$location .= '&nbsp;<span class="smalltext">(' . $coord . ')</span>'; $target = $nomserver.'?q='.urlencode($item['location']);
if ($item['location'] != "")
$title = $item['location'];
else else
$location = '<span class="smalltext">' . $coord . '</span>'; $title = $item['coord'];
}
$item['html'] = $location; $item['html'] = '<a target="map" title="'.$title.'" href= "'.$target.'">'.$title.'</a>';
} }
@ -119,8 +115,6 @@ function openstreetmap_generate_named_map(&$a,&$b) {
$b['html'] = $arr['html']; $b['html'] = $arr['html'];
} }
} }
} }
function openstreetmap_generate_map(&$a,&$b) { function openstreetmap_generate_map(&$a,&$b) {