function theme_views_display_filters_cases_open($view) { $form = views_filters_form($view); // filter1 or filter2 or filter3 depending on which filter you need $options = $form['filter0']['#options']; // ... code to remove options you don't want ... // example $roles = user_roles(1, 'set case status') $allowed = array(); foreach ($roles as $role) { $sql1 = "SELECT rid FROM {roles} WHERE name = $role"; $result1 = db_query($sql1); $rid = db_fetch_object($result1); $sql2 = "SELECT u.name FROM {users} u INNER JOIN {users_roles} ur ON u.uid=ur.uid WHERE ur.name = $rid"; $result2 = db_query($sql2); $users = db_fetch_array($result2); $allowed = array_merge($allowed, $users); } if (count($allowed) < 1) { return false; } foreach ($options as $option => $text) { if (!in_array($option, array('page', 'blog', 'story'))) { unset($options[$option]); } } $form['filter0']['#options'] = $options; return drupal_get_form("views_filters_$view->name", $form, 'views_filters'); }