public function modified($format = null, $handler = 'date')
{
$modified = filemtime($this->root);
$items = $this->scan(array('.', '..'));
foreach ($items as $item) {
if (is_file($this->root . DS . $item)) {
$newModified = filemtime($this->root . DS . $item);
} else {
$object = new static($this->root . DS . $item);
$newModified = $object->modified();
}
$modified = $newModified > $modified ? $newModified : $modified;
}
return !is_null($format) ? $handler($format, $modified) : $modified;
}