Example #1
0
            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();
}
// offer WebSocket updates
$updatesVia = isHTTPS() ? 'wss:' : 'ws:';
Example #2
0
} elseif (isset($i_s)) {
    $any_s = $i_s;
}
if (!is_null($any_s)) {
    $g = new Graph('', $_filename, '', $_SERVER['SCRIPT_URI']);
    $r = strlen($any_s) ? $g->remove_any($any_s) : 0;
    header('Triples: ' . $r);
    if ($r) {
        $g->save();
    }
    exit;
}
if (is_dir($_filename)) {
    if ($_options->recursive) {
        rrmdir($_filename);
    } else {
        rmdir($_filename);
    }
} elseif (file_exists($_filename)) {
    unlink($_filename);
} else {
    $g = new Graph('', $_filename, '', '');
    if ($g->exists()) {
        $g->delete();
    } else {
        httpStatusExit(404, 'Not Found');
    }
}
if (file_exists($_filename)) {
    httpStatusExit(409, 'Conflict');
}