X-Git-Url: https://git.openstreetmap.org./nominatim.git/blobdiff_plain/9b01ddd641e72c2d7fb5864f0079a5a39563eb7d..20f1939c4c61ef28b128593b2ae5f841af567042:/lib/lib.php
diff --git a/lib/lib.php b/lib/lib.php
index 889cb2cf..1959ded3 100644
--- a/lib/lib.php
+++ b/lib/lib.php
@@ -7,7 +7,7 @@
echo "
Internal Server Error
";
echo 'Nominatim has encountered an internal error while processing your request. This is most likely because of a bug in the software.
';
echo "Details: ".$sError,"
";
- echo 'Feel free to report the bug in the OSM bug database. Please include the error message above an the URL you used.
';
+ echo 'Feel free to report the bug in the OSM bug database. Please include the error message above and the URL you used.
';
if (CONST_Debug)
{
echo "
Debugging Information
";
@@ -94,7 +94,7 @@
return ($a['foundorder'] < $b['foundorder']?-1:1);
}
- function getPrefferedLangauges()
+ function getPreferredLanguages()
{
// If we have been provided the value in $_GET it overrides browser value
if (isset($_GET['accept-language']) && $_GET['accept-language'])
@@ -273,7 +273,7 @@
return false;
/*
- $fTotalFac is a suprisingly good indicator of accuracy
+ $fTotalFac is a surprisingly good indicator of accuracy
$iZoom = 18 + round(log($fTotalFac,32));
$iZoom = max(13,min(18,$iZoom));
*/
@@ -334,7 +334,7 @@
'place:airport' => array('label'=>'Airport','frequency'=>36,'icon'=>'transport_airport2', 'defdiameter' => 0.03,),
'railway:station' => array('label'=>'Station','frequency'=>3431,'icon'=>'transport_train_station2', 'defdiameter' => 0.01,),
- 'amenity:place_of_worship' => array('label'=>'Place Of Worship','frequency'=>9049,'icon'=>'place_of_worship3',),
+ 'amenity:place_of_worship' => array('label'=>'Place Of Worship','frequency'=>9049,'icon'=>'place_of_worship_unknown3',),
'amenity:pub' => array('label'=>'Pub','frequency'=>18969,'icon'=>'food_pub',),
'amenity:bar' => array('label'=>'Bar','frequency'=>164,'icon'=>'food_bar',),
'amenity:university' => array('label'=>'University','frequency'=>607,'icon'=>'education_university',),
@@ -364,7 +364,7 @@
'tourism:motel' => array('label'=>'Motel','frequency'=>43,'icon'=>'',),
'amenity:cinema' => array('label'=>'Cinema','frequency'=>277,'icon'=>'tourist_cinema',),
'tourism:information' => array('label'=>'Information','frequency'=>224,'icon'=>'amenity_information',),
- 'tourism:artwork' => array('label'=>'Artwork','frequency'=>171,'icon'=>'art_gallery2',),
+ 'tourism:artwork' => array('label'=>'Artwork','frequency'=>171,'icon'=>'tourist_art_gallery2',),
'historic:archaeological_site' => array('label'=>'Archaeological Site','frequency'=>407,'icon'=>'tourist_archaeological2',),
'amenity:doctors' => array('label'=>'Doctors','frequency'=>581,'icon'=>'health_doctors',),
'leisure:sports_centre' => array('label'=>'Sports Centre','frequency'=>767,'icon'=>'sport_leisure_centre',),
@@ -592,45 +592,25 @@
}
- function javascript_isarray($xVal)
- {
- if (!is_array($xVal)) return false;
- for($i = 0; $i < sizeof($xVal); $i++)
- {
- if (!array_key_exists($i, $xVal)) return false;
- }
- return true;
- }
- function javascript_renderData($xVal, $bForceHash = false)
- {
- if (is_array($xVal))
- {
- $aVals = array();
- if (javascript_isarray($xVal) && !$bForceHash)
- {
- foreach($xVal as $sKey => $xData)
- {
- $aVals[] = javascript_renderData($xData);
- }
- return '['.join(',',$aVals).']';
- }
- else
- {
- foreach($xVal as $sKey => $xData)
- {
- $aVals[] = '"'.addslashes($sKey).'"'.':'.javascript_renderData($xData);
- }
- return '{'.join(',',$aVals).'}';
- }
- }
- else
- {
- if (is_bool($xVal)) return $xVal?'true':'false';
-// if (is_numeric($xVal)) return $xVal;
- return '"'.str_replace('>','\\>',str_replace(array("\n","\r"),'\\n',str_replace(array("\n\r","\r\n"),'\\n',str_replace('"','\\"',$xVal)))).'"';
- }
- }
+ function javascript_renderData($xVal)
+ {
+ header("Access-Control-Allow-Origin: *");
+
+ $jsonout = json_encode($xVal);
+
+ if( ! isset($_GET['json_callback'])) {
+ header("Content-Type: application/json; charset=UTF-8");
+ echo $jsonout;
+ } else {
+ if (preg_match('/^[$_\p{L}][$_\p{L}\p{Nd}.[\]]*$/u',$_GET['json_callback'])) {
+ header("Content-Type: application/javascript; charset=UTF-8");
+ echo $_GET['json_callback'].'('.$jsonout.')';
+ } else {
+ header('HTTP/1.0 400 Bad Request');
+ }
+ }
+ }
function _debugDumpGroupedSearches($aData, $aTokens)
{