*
*/
-require_once('include/cache.php');
+use Friendica\Core\Cache;
+use Friendica\Core\Config;
-function openstreetmap_install() {
+function openstreetmap_install()
+{
register_hook('render_location', 'addon/openstreetmap/openstreetmap.php', 'openstreetmap_location');
register_hook('generate_map', 'addon/openstreetmap/openstreetmap.php', 'openstreetmap_generate_map');
register_hook('generate_named_map', 'addon/openstreetmap/openstreetmap.php', 'openstreetmap_generate_named_map');
logger("installed openstreetmap");
}
-function openstreetmap_uninstall() {
+function openstreetmap_uninstall()
+{
unregister_hook('render_location', 'addon/openstreetmap/openstreetmap.php', 'openstreetmap_location');
unregister_hook('generate_map', 'addon/openstreetmap/openstreetmap.php', 'openstreetmap_generate_map');
unregister_hook('generate_named_map', 'addon/openstreetmap/openstreetmap.php', 'openstreetmap_generate_named_map');
logger("removed openstreetmap");
}
-function openstreetmap_alterheader($a, &$navHtml) {
+function openstreetmap_alterheader($a, &$navHtml)
+{
$addScriptTag = '<script type="text/javascript" src="' . $a->get_baseurl() . '/addon/openstreetmap/openstreetmap.js"></script>' . "\r\n";
$a->page['htmlhead'] .= $addScriptTag;
}
*/
function openstreetmap_location($a, &$item) {
- if(! (strlen($item['location']) || strlen($item['coord'])))
+ if(! (strlen($item['location']) || strlen($item['coord']))) {
return;
+ }
/*
* 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.
*/
- $tmsserver = get_config('openstreetmap', 'tmsserver');
- if(! $tmsserver)
+ $tmsserver = Config::get('openstreetmap', 'tmsserver');
+ if(! $tmsserver) {
$tmsserver = 'http://www.openstreetmap.org';
+ }
- $nomserver = get_config('openstreetmap', 'nomserver');
- if(! $nomserver)
+ $nomserver = Config::get('openstreetmap', 'nomserver');
+ if(! $nomserver) {
$nomserver = 'http://nominatim.openstreetmap.org/search.php';
+ }
- $zoom = get_config('openstreetmap', 'zoom');
- if(! $zoom)
+ $zoom = Config::get('openstreetmap', 'zoom');
+ if(! $zoom) {
$zoom = 16;
+ }
- $marker = get_config('openstreetmap', 'marker');
- if(! $marker)
+ $marker = Config::get('openstreetmap', 'marker');
+ if(! $marker) {
$marker = 0;
+ }
- $location = '';
- $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']) {
+ if ($item['coord'] != "") {
$coords = explode(' ', $item['coord']);
if(count($coords) > 1) {
$lat = urlencode(round($coords[0], 5));
$lon = urlencode(round($coords[1], 5));
- $coord = '<a target="map" class="OSMMapLink" title="' . $item['coord'] . '" href="'. $tmsserver;
+ $target = $tmsserver;
if($marker > 0)
- $coord .= '?mlat=' . $lat . '&mlon=' . $lon;
- $coord .= '#map=' . intval($zoom) . '/' . $lat . '/' . $lon .'">Map</a>';
+ $target .= '?mlat='.$lat.'&mlon='.$lon;
+ $target .= '#map='.intval($zoom).'/'.$lat.'/'.$lon;
}
}
- if(strlen($coord)) {
- if($location)
- $location .= ' <span class="smalltext">(' . $coord . ')</span>';
- else
- $location = '<span class="smalltext">' . $coord . '</span>';
+
+ if ($target == "") {
+ $target = $nomserver.'?q='.urlencode($item['location']);
}
- $item['html'] = $location;
-}
+ if ($item['location'] != "") {
+ $title = $item['location'];
+ } else {
+ $title = $item['coord'];
+ }
-function openstreetmap_generate_named_map(&$a,&$b) {
+ $item['html'] = '<a target="map" title="'.$title.'" href= "'.$target.'">'.$title.'</a>';
+}
- $nomserver = get_config('openstreetmap', 'nomserver');
+function openstreetmap_generate_named_map(&$a, &$b)
+{
+ $nomserver = Config::get('openstreetmap', 'nomserver');
if(! $nomserver)
$nomserver = 'http://nominatim.openstreetmap.org/search.php';
$args = '?q=' . urlencode($b['location']) . '&format=json';
$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) {
-
- $tmsserver = get_config('openstreetmap', 'tmsserver');
- if(! $tmsserver)
+function openstreetmap_generate_map(&$a, &$b)
+{
+ $tmsserver = Config::get('openstreetmap', 'tmsserver');
+ if(! $tmsserver) {
$tmsserver = 'http://www.openstreetmap.org';
- if(strpos(z_root(),'https:') !== false)
+ }
+ if(strpos(z_root(),'https:') !== false) {
$tmsserver = str_replace('http:','https:',$tmsserver);
+ }
- $zoom = get_config('openstreetmap', 'zoom');
- if(! $zoom)
+ $zoom = Config::get('openstreetmap', 'zoom');
+ if(! $zoom) {
$zoom = 16;
+ }
- $marker = get_config('openstreetmap', 'marker');
- if(! $marker)
+ $marker = Config::get('openstreetmap', 'marker');
+ if(! $marker) {
$marker = 0;
+ }
$lat = $b['lat']; // round($b['lat'], 5);
$lon = $b['lon']; // round($b['lon'], 5);
}
-function openstreetmap_plugin_admin(&$a, &$o) {
+function openstreetmap_plugin_admin(&$a, &$o)
+{
$t = get_markup_template("admin.tpl", "addon/openstreetmap/");
- $tmsserver = get_config('openstreetmap', 'tmsserver');
- if(! $tmsserver)
+ $tmsserver = Config::get('openstreetmap', 'tmsserver');
+ if(! $tmsserver) {
$tmsserver = 'http://www.openstreetmap.org';
- $nomserver = get_config('openstreetmap', 'nomserver');
- if(! $nomserver)
+ }
+ $nomserver = Config::get('openstreetmap', 'nomserver');
+ if(! $nomserver) {
$nomserver = 'http://nominatim.openstreetmap.org/search.php';
- $zoom = get_config('openstreetmap', 'zoom');
- if(! $zoom)
+ }
+ $zoom = Config::get('openstreetmap', 'zoom');
+ if(! $zoom) {
$zoom = 16;
- $marker = get_config('openstreetmap', 'marker');
- if(! $marker)
+ }
+ $marker = Config::get('openstreetmap', 'marker');
+ if(! $marker) {
$marker = 0;
+ }
$o = replace_macros($t, array(
'$submit' => t('Submit'),
'$marker' => array('marker', t('Include marker on map'), $marker, t('Include a marker on the map.')),
));
}
-function openstreetmap_plugin_admin_post(&$a) {
+
+function openstreetmap_plugin_admin_post(&$a)
+{
$urltms = ((x($_POST, 'tmsserver')) ? notags(trim($_POST['tmsserver'])) : '');
$urlnom = ((x($_POST, 'nomserver')) ? notags(trim($_POST['nomserver'])) : '');
$zoom = ((x($_POST, 'zoom')) ? intval(trim($_POST['zoom'])) : '16');
$marker = ((x($_POST, 'marker')) ? intval(trim($_POST['marker'])) : '0');
- set_config('openstreetmap', 'tmsserver', $urltms);
- set_config('openstreetmap', 'nomserver', $urlnom);
- set_config('openstreetmap', 'zoom', $zoom);
- set_config('openstreetmap', 'marker', $marker);
+ Config::set('openstreetmap', 'tmsserver', $urltms);
+ Config::set('openstreetmap', 'nomserver', $urlnom);
+ Config::set('openstreetmap', 'zoom', $zoom);
+ Config::set('openstreetmap', 'marker', $marker);
info( t('Settings updated.') . EOL);
}
-
-