<?
/*
*  flyr - search photos for geotagged data
*
*  build a kml file for loading into Google Earth:
*  http://earth.google.com
*
*  $Header: /usr/local/cvsrep/flyr/kml.php,v 1.5 2005/09/22 07:07:00 pauldowney Exp $
*
*  written by Paul Downey (paul.downey@whatfettle.com)
*  released under GNU General Public License (http://www.gnu.org/copyleft/gpl.html)
*/

/*
*  search flickr
*/
require_once("flyr.php");

$f = new flyr();
$f->parseForm($_GET);
$photos = $f->search();

/*
*  content type as suggested by Google for kml files
*/
$content = "application/vnd.google-earth.kml+xml";

/*
*  HTTP headers
*/
header("Content-type: " . $content);
header("Content-Disposition: attachment;filename=" . $f->folder  . ".kml");
header("Pragma: no-cache");
header("Cache-Control: no-cache, must-revalidate");
header("Last-Modified: " . $f->date);

/*
*  generate kml file
*/
$folder = $f->folder;

print <<<EOF
<?xml version="1.0"?>

EOF;

$f->printComment();

print <<<EOF
<kml xmlns="http://earth.google.com/kml/2.0">
    <Folder>
        <name>$folder</name>
        <open>1</open>

EOF;

foreach (
$photos as $photo)
{
    
$title = $photo['title'];
    
$desc = $photo['desc'];
    
$lon = $photo['lon'];
    
$lat = $photo['lat'];

    echo <<<EOF
        <Placemark>
            <name><!
[CDATA[$title]]></name>
            <description><!
[CDATA[$desc]]></description>
            <LookAt>
                <longitude>$lon</longitude>
                <latitude>$lat</latitude>
                <range>999.9999999999999</range>
                <tilt>0</tilt>
                <heading>0</heading>
            </LookAt>
            <styleUrl>root://styles#default+icon=0x307</styleUrl>
            <Point>
                <coordinates>$lon,$lat,0</coordinates>
            </Point>
        </Placemark>

EOF;
}

echo <<<EOF
    </Folder>
</kml>
EOF;

exit();
?>