Example #1
0
        }
        $item_ext = strrchr($item, '.');
        if ($item_ext == '.sqlite' || $item_ext && in_array(substr($item_ext, 1), $_RAW_EXT)) {
            continue;
        }
        $item_uri = REQUEST_BASE . substr($item, strlen($_filebase));
        // get file mtime and md5
        $mtime = filemtime($item);
        if ($mtime > $last_mtime) {
            $last_mtime = $mtime;
        }
        $glob_md5 .= md5_file($item);
        // WebACL
        $wac = new WAC($_user, $item, $item_uri);
        if ($wac->can('Read')) {
            $g->append_file('turtle', "file://{$item}", $item_uri);
        }
    }
} elseif (!empty($_filename) && !$g->exists() && !$g->size()) {
    if (!$_options->wiki) {
        header('HTTP/1.1 404 Not Found');
    }
}
// offer ?wait updates (polling)
if (isset($i_wait)) {
    $etag = is_array($i_wait) && isset($i_wait['etag']) ? $i_wait['etag'] : $g->etag();
    while ($etag == $g->etag()) {
        sleep(1);
        clearstatcache();
    }
    $g->reload();