123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130 |
- <?php
- function get_group_entity_as_row($guid) {
- global $CONFIG;
- $guid = (int)$guid;
- return get_data_row("SELECT * from {$CONFIG->dbprefix}groups_entity where guid=$guid");
- }
- function add_group_tool_option($name, $label, $default_on = true) {
- global $CONFIG;
- if (!isset($CONFIG->group_tool_options)) {
- $CONFIG->group_tool_options = array();
- }
- $group_tool_option = new \stdClass;
- $group_tool_option->name = $name;
- $group_tool_option->label = $label;
- $group_tool_option->default_on = $default_on;
- $CONFIG->group_tool_options[] = $group_tool_option;
- }
- function remove_group_tool_option($name) {
- global $CONFIG;
- if (!isset($CONFIG->group_tool_options)) {
- return;
- }
- foreach ($CONFIG->group_tool_options as $i => $option) {
- if ($option->name == $name) {
- unset($CONFIG->group_tool_options[$i]);
- }
- }
- }
- function _elgg_groups_container_override($hook, $type, $result, $params) {
- $container = $params['container'];
- $user = $params['user'];
- if (elgg_instanceof($container, 'group') && $user) {
-
- if ($container->isMember($user)) {
- return true;
- }
- }
- return $result;
- }
- function _elgg_groups_test($hook, $type, $value) {
- global $CONFIG;
- $value[] = $CONFIG->path . 'engine/tests/ElggGroupTest.php';
- return $value;
- }
- function _elgg_groups_init() {
- elgg_register_plugin_hook_handler('container_permissions_check', 'all', '_elgg_groups_container_override');
- elgg_register_plugin_hook_handler('unit_test', 'system', '_elgg_groups_test');
- }
- return function(\Elgg\EventsService $events, \Elgg\HooksRegistrationService $hooks) {
- $events->registerHandler('init', 'system', '_elgg_groups_init');
- };
|