<?php

include("database.php");

$db = make_db();
$db->setFetchMode(DB_FETCHMODE_ASSOC);
$query = "SELECT * FROM okimap_places ORDER BY name";
$allPoints = $db->getAll($query);

?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:v="urn:schemas-microsoft-com:vml">
  <head>
    <style type="text/css">
    v\:* {
      behavior:url(#default#VML);
    }
    </style>
    <script src="http://maps.google.com/maps?file=api&v=2&key=ABQIAAAAFS3N5U4sYI8lXnJT4aLPoRTYcMmUiFYyF-PlB40EliPwyHEF3RStyqy5GDo9_J-WZEBFl9bxdSipMw" type="text/javascript"></script>
  </head>

  <body onunload="GUnload()">
    <div id="map" style="width: 800px; height: 600px"></div>
    <script type="text/javascript">
    //<![CDATA[

var map = new GMap2(document.getElementById("map"));
map.addControl(new GLargeMapControl());
map.addControl(new GMapTypeControl());
map.setCenter(new GLatLng(26.4926986519394, 127.9248046875), 9);

function createMarker(lat, lng, name, descr) {
  var marker = new GMarker(new GLatLng(lat, lng));
  GEvent.addListener(marker, "click", function() {
    marker.openInfoWindowHtml("<B>" + name + "</B><BR>" + descr);
    //map.panTo(marker.getPoint());
  });
  return marker;
}

<?php
    foreach($allPoints as $point) {
        $lat = $point["lat"];
        $lng = $point["lng"];

        if($point["url"]) {
            $name = "<A HREF='" . $point["url"] . "'>" . $point["name"] . "</A>";
        } else {
            $name = $point["name"];
        }
        $descr = wordwrap($point["descr"], 30, "<BR>");
        echo "map.addOverlay(createMarker($lat, $lng, \"$name\", \"$descr\"));\n";
    }
?>

    //]]>
    </script>
<table>
  </body>
</html>
