示例#1
0
function show_obs()
{
    $id = get_num("id");
    $obs = observation_lookup_id($id);
    if (!$obs) {
        error_page("no such observation");
    }
    $source = source_lookup_id($obs->source_id);
    $nfiles = file_count("obs_id={$id}");
    page_head("Observation {$obs->id}");
    table_start();
    row2("Julian date", $obs->julian_date);
    row2("Source", $source->name);
    row2("Polarization", $obs->polarization);
    row2("Length", $obs->length * 86400);
    row2("Files", "<a href=hl.php?action=file_search_action&obs_id={$id}>{$nfiles}</a>");
    table_end();
    page_tail();
}
function file_count($source, $file_types)
{
    $counter = 0;
    foreach (scandir($source) as $file) {
        if ($file == '.' || $file == '..') {
            continue;
        }
        if (!is_dir($source . "/" . $file)) {
            $file_info = pathinfo($file);
            if (array_key_exists('extension', $file_info) && in_array($file_info['extension'], $file_types)) {
                $counter++;
            }
        } else {
            $source = $source . "/" . $file;
            $counter += file_count($source, $file_types);
        }
    }
    return $counter;
}