00001 <?php
00007 class views_handler_filter_user_permissions extends views_handler_filter_many_to_one {
00008 function get_value_options() {
00009 $module_info = system_get_info('module');
00010
00011
00012
00013 $modules = array();
00014 foreach (module_implements('permission') as $module) {
00015 $modules[$module] = $module_info[$module]['name'];
00016 }
00017 asort($modules);
00018
00019 $this->value_options = array();
00020 foreach ($modules as $module => $display_name) {
00021 if ($permissions = module_invoke($module, 'permission')) {
00022 foreach ($permissions as $perm => $perm_item) {
00023
00024 $this->value_options[$perm] = check_plain(strip_tags($perm_item['title']));
00025 }
00026 }
00027 }
00028 }
00029 }