$access_array[$user_id] = $tmp_access_array;\r
}\r
else\r
- return $tmp_access_array; // No user id logged in so we can only access public info\r
+ $tmp_return = $tmp_access_array; // No user id logged in so we can only access public info\r
\r
\r
} else {\r
$tmp_access_array = $access_array[$user_id];\r
}\r
\r
- return $access_array[$user_id];\r
+ $tmp_return = $access_array[$user_id];\r
\r
+ return trigger_plugin_hook('access:collections:read','user',array('user_id' => $user_id, 'site_id' => $site_id),$tmp_access_array);\r
}\r
\r
/**\r
extend_view('profile/icon','groups/icon');\r
extend_view('css','groups/css');\r
\r
- // Write access permissions\r
+ // Access permissions\r
register_plugin_hook('access:collections:write', 'all', 'groups_write_acl_plugin_hook');\r
+ //register_plugin_hook('access:collections:read', 'all', 'groups_read_acl_plugin_hook');\r
\r
// Notification hooks\r
if (is_callable('register_notification_object'))\r
*/\r
function groups_read_acl_plugin_hook($hook, $entity_type, $returnvalue, $params)\r
{\r
- \r
//error_log("READ: " . var_export($returnvalue));\r
$user = $_SESSION['user'];\r
if ($user)\r
{\r
- $membership = get_users_membership($user->guid);\r
+ // Not using this because of recursion.\r
+ // Joining a group automatically add user to ACL, \r
+ // So just see if they're a member of the ACL.\r
+ //$membership = get_users_membership($user->guid);\r
+ \r
+ $members = get_members_of_access_collection($group->group_acl);\r
+ print_r($members);\r
+ exit;\r
\r
if ($membership)\r
{ \r
function groups_write_acl_plugin_hook($hook, $entity_type, $returnvalue, $params)\r
{\r
$page_owner = page_owner_entity();\r
- \r
- if ($page_owner instanceof ElggGroup)\r
- {\r
- if (can_write_to_container())\r
- {\r
- $returnvalue[$page_owner->group_acl] = elgg_echo('groups:group') . ": " . $page_owner->name;\r
- \r
- return $returnvalue;\r
+ // get all groups if logged in\r
+ if ($loggedin = get_loggedin_user()) {\r
+ $groups = get_entities_from_relationship('member', $loggedin->getGUID());\r
+ if (is_array($groups)) {\r
+ foreach ($groups as $group) {\r
+ $returnvalue[$group->group_acl] = elgg_echo('groups:group') . ': ' . $group->name;\r
+ }\r
}\r
}\r
+ \r
+ // This doesn't seem to do anything.\r
+ // There are no hooks to override container permissions for groups\r
+// \r
+// if ($page_owner instanceof ElggGroup)\r
+// {\r
+// if (can_write_to_container())\r
+// {\r
+// $returnvalue[$page_owner->group_acl] = elgg_echo('groups:group') . ": " . $page_owner->name;\r
+// }\r
+// }\r
+ return $returnvalue;\r
}\r
\r
/**\r