* example7_searchchangeset.php
 * 21-Aug-2011
 *
 * PHP Version 5
 *
 * @category example6_closedway
 * @package  example6_closedway
 * @author   Ken Guest <*****@*****.**>
 * @license  BSD http://www.opensource.org/licenses/bsd-license.php
 * @version  Release: @package_version@
 * @link     example7_searchchangeset.php
 */
$version = '@package_version@';
if (strstr($version, 'package_version')) {
    set_include_path(dirname(dirname(__FILE__)) . ':' . get_include_path());
}
require_once 'Services/OpenStreetMap.php';
$osm = new Services_OpenStreetMap();
try {
    $changesets = $osm->searchChangesets(array(new Services_OpenStreetMap_Criterion('user', 11324), new Services_OpenStreetMap_Criterion('bbox', -8.059027499999999, 52.9347449, -7.9966939, 52.9611999), new Services_OpenStreetMap_Criterion('closed')));
} catch (Services_OpenStreetMap_Exception $e) {
    die($e->getMessage());
}
foreach ($changesets as $changeset) {
    echo $changeset->getCreatedAt(), "\t";
    try {
        echo $changeset->getTag('comment'), "\n";
    } catch (Exception $e) {
        echo "\n";
    }
}
 /**
  * Test searching changesets for those by a specific person via
  * display_name and created within a certain timespan.
  *
  * @return void
  */
 public function testTimeAfterOnly()
 {
     $mock = new HTTP_Request2_Adapter_Mock();
     $mock->addResponse(fopen(__DIR__ . '/responses/capabilities.xml', 'rb'));
     $mock->addResponse(fopen(__DIR__ . '/responses/changeset_search_timespan.xml', 'rb'));
     $config = array('adapter' => $mock, 'server' => 'http://api06.dev.openstreetmap.org/');
     $osm = new Services_OpenStreetMap($config);
     $time = '17 November 2011';
     $time2 = '29 November 2011';
     $displayName = new Services_OpenStreetMap_Criterion('display_name', 'kenguest');
     $this->assertEquals($displayName->query(), 'display_name=kenguest');
     $this->assertEquals($displayName->type(), 'display_name');
     $c = new Services_OpenStreetMap_Criterion('time', $time, $time2);
     $this->assertEquals($c->query(), 'time=2011-11-17T00%3A00%3A00Z%2C2011-11-29T00%3A00%3A00Z');
     $this->assertEquals($c->type(), 'time');
     $changesets = $osm->searchChangesets(array($displayName, $c));
     $this->assertInstanceOf('Services_OpenStreetMap_Changesets', $changesets);
 }