<?php
|
<?php
|
header('Content-type: application/vnd.google-earth.kml+xml');
|
header('Content-type: application/vnd.google-earth.kml+xml');
|
|
include ('../include/common.inc.php'); |
//http://wiki.openstreetmap.org/wiki/OpenLayers_Dynamic_KML
|
//http://wiki.openstreetmap.org/wiki/OpenLayers_Dynamic_KML
|
// Creates the KML/XML Document.
|
// Creates the KML/XML Document.
|
$dom = new DOMDocument('1.0', 'UTF-8');
|
$dom = new DOMDocument('1.0', 'UTF-8');
|
// Creates the root KML element and appends it to the root document.
|
// Creates the root KML element and appends it to the root document.
|
$node = $dom->createElementNS('http://earth.google.com/kml/2.1', 'kml'); |
$node = $dom->createElementNS('http://www.opengis.net/kml/2.2', 'kml'); |
$parNode = $dom->appendChild($node);
|
$parNode = $dom->appendChild($node);
|
// Creates a KML Document element and append it to the KML element.
|
// Creates a KML Document element and append it to the KML element.
|
$dnode = $dom->createElement('Document');
|
$dnode = $dom->createElement('Document');
|
$docNode = $parNode->appendChild($dnode);
|
$docNode = $parNode->appendChild($dnode);
|
if ($suburb != "") $result_stops = getStopsBySuburb($suburb);
|
if ($suburb != "") $result_stops = getStopsBySuburb($suburb);
|
else $result_stops = getStops();
|
else $result_stops = getStops();
|
foreach ($result_stops as $stop) {
|
foreach ($result_stops as $stop) {
|
$description = 'http://bus.lambdacomplex.org/' . 'stop.php?stopid=' . $stop['stop_id'] . " <br>"; |
$description = baseURL() . 'stop.php?stopid=' . $stop['stop_id'] . " <br>"; |
// Creates a Placemark and append it to the Document.
|
// Creates a Placemark and append it to the Document.
|
$node = $dom->createElement('Placemark');
|
$node = $dom->createElement('Placemark');
|
$placeNode = $docNode->appendChild($node);
|
$placeNode = $docNode->appendChild($node);
|
// Creates an id attribute and assign it the value of id column.
|
// Creates an id attribute and assign it the value of id column.
|
$placeNode->setAttribute('id', 'placemark' . $stop['stop_id']);
|
$placeNode->setAttribute('id', 'placemark' . $stop['stop_id']);
|
// Create name, and description elements and assigns them the values of the name and address columns from the results.
|
// Create name, and description elements and assigns them the values of the name and address columns from the results.
|
$nameNode = $dom->createElement('name', htmlentities($stop['stop_name']));
|
$nameNode = $dom->createElement('name', htmlentities($stop['stop_name']));
|
$descriptionNode = $dom->createElement('description', $description);
|
$descriptionNode = $dom->createElement('description', $description);
|
$placeNode->appendChild($nameNode);
|
$placeNode->appendChild($nameNode);
|
$placeNode->appendChild($descriptionNode);
|
$placeNode->appendChild($descriptionNode);
|
// Creates a Point element.
|
// Creates a Point element.
|
$pointNode = $dom->createElement('Point');
|
$pointNode = $dom->createElement('Point');
|
$placeNode->appendChild($pointNode);
|
$placeNode->appendChild($pointNode);
|
// Creates a coordinates element and gives it the value of the lng and lat columns from the results.
|
// Creates a coordinates element and gives it the value of the lng and lat columns from the results.
|
$coorStr = $stop['stop_lon'] . ',' . $stop['stop_lat'];
|
$coorStr = $stop['stop_lon'] . ',' . $stop['stop_lat'];
|
$coorNode = $dom->createElement('coordinates', $coorStr);
|
$coorNode = $dom->createElement('coordinates', $coorStr);
|
$pointNode->appendChild($coorNode);
|
$pointNode->appendChild($coorNode);
|
}
|
}
|
$kmlOutput = $dom->saveXML();
|
$kmlOutput = $dom->saveXML();
|
echo $kmlOutput;
|
echo $kmlOutput;
|
?> |
?> |
|
|