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; }