X-Git-Url: https://git.openstreetmap.org./nominatim.git/blobdiff_plain/2db6f931b6ce1d331433f7e4f02ac332381a7b29..e929399d4dd23fa1571dd77cf489ef51d716f5cc:/lib/template/search-xml.php
diff --git a/lib/template/search-xml.php b/lib/template/search-xml.php
index 693330bb..f67ba33b 100644
--- a/lib/template/search-xml.php
+++ b/lib/template/search-xml.php
@@ -1,124 +1,134 @@
\n";
-
- echo "\n";
-
- foreach($aSearchResults as $iResNum => $aResult)
- {
- echo "";
- }
-
- if (isset($aResult['askml']))
- {
- echo "\n";
- echo $aResult['askml'];
- echo "";
- }
-
- if (isset($aResult['address']))
- {
- echo "\n";
- foreach($aResult['address'] as $sKey => $sValue)
- {
- $sKey = str_replace(' ','_',$sKey);
- echo "<$sKey>";
- echo htmlspecialchars($sValue);
- echo "$sKey>";
- }
- }
-
- if (isset($aResult['address']) || isset($aResult['askml']))
- {
- echo "";
- }
- else
- {
- echo "/>";
- }
- }
-
- echo "";
+header('content-type: text/xml; charset=UTF-8');
+
+echo '<';
+echo '?xml version="1.0" encoding="UTF-8" ?';
+echo ">\n";
+
+echo '<';
+echo (isset($sXmlRootTag)?$sXmlRootTag:'searchresults');
+echo " timestamp='".date(DATE_RFC822)."'";
+echo " attribution='Data © OpenStreetMap contributors, ODbL 1.0. http://www.openstreetmap.org/copyright'";
+echo " querystring='".htmlspecialchars($sQuery, ENT_QUOTES)."'";
+if (isset($aMoreParams['viewbox'])) echo " viewbox='".htmlspecialchars($aMoreParams['viewbox'], ENT_QUOTES)."'";
+echo " polygon='".(isset($aMoreParams['polygon'])?'true':'false')."'";
+if (isset($aMoreParams['exclude_place_ids'])) {
+ echo " exclude_place_ids='".htmlspecialchars($aMoreParams['exclude_place_ids'])."'";
+}
+echo " more_url='".htmlspecialchars($sMoreURL)."'";
+echo ">\n";
+
+foreach ($aSearchResults as $iResNum => $aResult) {
+ echo "';
+ }
+ echo "\n";
+ echo $aResult['askml'];
+ echo '';
+ }
+
+ if (isset($aResult['sExtraTags'])) {
+ if (!$bHasDelim) {
+ $bHasDelim = true;
+ echo '>';
+ }
+ echo "\n";
+ foreach ($aResult['sExtraTags'] as $sKey => $sValue) {
+ echo '';
+ }
+ echo '';
+ }
+
+ if (isset($aResult['sNameDetails'])) {
+ if (!$bHasDelim) {
+ $bHasDelim = true;
+ echo '>';
+ }
+ echo "\n";
+ foreach ($aResult['sNameDetails'] as $sKey => $sValue) {
+ echo '';
+ echo htmlspecialchars($sValue);
+ echo '';
+ }
+ echo '';
+ }
+
+ if (isset($aResult['address'])) {
+ if (!$bHasDelim) {
+ $bHasDelim = true;
+ echo '>';
+ }
+ echo "\n";
+ foreach ($aResult['address']->getAddressNames() as $sKey => $sValue) {
+ $sKey = str_replace(' ', '_', $sKey);
+ echo "<$sKey>";
+ echo htmlspecialchars($sValue);
+ echo "$sKey>";
+ }
+ }
+
+ if ($bHasDelim) {
+ echo '';
+ } else {
+ echo '/>';
+ }
+}
+
+echo '' . (isset($sXmlRootTag)?$sXmlRootTag:'searchresults') . '>';