if ($view->name == 'directory_shops') {
// Get all the children of "Shopping (tid 147)" and put the names in a simple array.
// This is the query from taxonomy_get_children(). Not using the function because
// the array it returns is too complex for in_array() later on.
$result = db_query(db_rewrite_sql('SELECT t.* FROM {term_data} t INNER JOIN {term_hierarchy} h ON h.tid = t.tid WHERE parent = %d ORDER BY weight, name', 't', 'tid'), 147);
$keepers = array();
while ($term = db_fetch_object($result)) {
array_push($keepers, $term->name);
}
// Get the directory category options that are in the select box
$options = $form['filter1']['#options'];
// Go through each option in the select box and unset it if it's not a in our list of keeper terms
foreach ($options as $option => $text) {
$values = array_values($options[$option]->option);
$termname = str_replace("-","",$values[0]);
if (!in_array($termname, $keepers)) {
unset($options[$option]);
}
}
// Replace the options in the select box with the cleaned up version
$form['filter1']['#options'] = $options;
}