From a017e1c400c70df49dd694c5f15194360160aed7 Mon Sep 17 00:00:00 2001 From: marcus Date: Tue, 17 Feb 2009 13:34:19 +0000 Subject: Closes #786: Only basic profile information provided to non-joined users of closed groups. git-svn-id: https://code.elgg.org/elgg/trunk@2780 36083f99-b078-4883-b0ff-0f9b5a30f544 --- mod/groups/groupprofile.php | 27 ++++++++++++++++++++++----- 1 file changed, 22 insertions(+), 5 deletions(-) (limited to 'mod/groups/groupprofile.php') diff --git a/mod/groups/groupprofile.php b/mod/groups/groupprofile.php index 431afb235..437685313 100644 --- a/mod/groups/groupprofile.php +++ b/mod/groups/groupprofile.php @@ -19,14 +19,31 @@ $title = $group->name; + // Hide some items from closed groups when the user is not logged in. + $view_all = true; + + if ( + ((!isloggedin()) && (!$group->isPublicMembership())) || + ((!$group->isMember(get_loggedin_user()) && (!$group->isPublicMembership()))) + ) + $view_all = false; + + $area2 = elgg_view_title($title); $area2 .= elgg_view('group/group', array('entity' => $group, 'user' => $_SESSION['user'], 'full' => true)); - //group profile 'items' - these are not real widgets, just contents to display - $area2 .= elgg_view('groups/profileitems',array('entity' => $group)); - - //group members - $area3 = elgg_view('groups/members',array('entity' => $group)); + if ($view_all) { + //group profile 'items' - these are not real widgets, just contents to display + $area2 .= elgg_view('groups/profileitems',array('entity' => $group)); + + //group members + $area3 = elgg_view('groups/members',array('entity' => $group)); + } + else + { + $area2 .= elgg_view('groups/closedmembership', array('entity' => $group, 'user' => $_SESSION['user'], 'full' => true)); + + } $body = elgg_view_layout('two_column_left_sidebar', $area1, $area2, $area3); } else { -- cgit v1.2.3