X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;ds=sidebyside;f=openstreetmap%2Fopenstreetmap.php;h=135451698d9cae89d70f17775f9c85fe42c869b2;hb=29d58005dc8b8e99a686d009d22368d14da2cba9;hp=e805632a51a1e6dbda32e2a3539b1a1965b4c142;hpb=27211133de08e1568d791a8193a7c4c3e7e22c38;p=friendica-addons.git diff --git a/openstreetmap/openstreetmap.php b/openstreetmap/openstreetmap.php index e805632a..13545169 100644 --- a/openstreetmap/openstreetmap.php +++ b/openstreetmap/openstreetmap.php @@ -51,7 +51,7 @@ function openstreetmap_location($a, &$item) { /* * Get the configuration variables from the config. - * @todo Separate the tile map server from the text-string to map tile server + * @todo Separate the tile map server from the text-string to map tile server * since they apparently use different URL conventions. * We use OSM's current convention of "#map=zoom/lat/lon" and optional * ?mlat=lat&mlon=lon for markers. @@ -73,31 +73,27 @@ function openstreetmap_location($a, &$item) { if(! $marker) $marker = 0; - $location = ''; - $coord = ''; - - $location = $item['location']; - - $location = (($location && (! $item['coord'])) ? '' . $item['location'] . '' : $location); - - if($item['coord']) { + if ($item['coord'] != "") { $coords = explode(' ', $item['coord']); if(count($coords) > 1) { $lat = urlencode(round($coords[0], 5)); $lon = urlencode(round($coords[1], 5)); - $coord = 'Map'; + $target .= '?mlat='.$lat.'&mlon='.$lon; + $target .= '#map='.intval($zoom).'/'.$lat.'/'.$lon; } } - if(strlen($coord)) { - if($location) - $location .= ' (' . $coord . ')'; - else - $location = '' . $coord . ''; - } - $item['html'] = $location; + + if ($target == "") + $target = $nomserver.'?q='.urlencode($item['location']); + + if ($item['location'] != "") + $title = $item['location']; + else + $title = $item['coord']; + + $item['html'] = ''.$title.''; } @@ -112,15 +108,13 @@ function openstreetmap_generate_named_map(&$a,&$b) { $x = z_fetch_url($nomserver . $args); if($x['success']) { $j = json_decode($x['body'],true); - + if($j && is_array($j) && $j[0]['lat'] && $j[0]['lon']) { $arr = array('lat' => $j[0]['lat'],'lon' => $j[0]['lon'],'location' => $b['location'], 'html' => ''); openstreetmap_generate_map($a,$arr); $b['html'] = $arr['html']; } } - - } function openstreetmap_generate_map(&$a,&$b) {