From 9dc03345ffe6eebb60f7e0a69539f21c52048dd6 Mon Sep 17 00:00:00 2001 From: marcus Date: Mon, 7 Jul 2008 10:12:20 +0000 Subject: Closes #120 git-svn-id: https://code.elgg.org/elgg/trunk@1306 36083f99-b078-4883-b0ff-0f9b5a30f544 --- engine/lib/group.php | 12 ++++++++++++ mod/groups/actions/edit.php | 9 +++++++++ mod/groups/actions/join.php | 2 +- mod/groups/languages/en.php | 1 + mod/groups/views/default/forms/groups/edit.php | 9 ++++++++- mod/groups/views/default/groups/menu/actions.php | 2 +- 6 files changed, 32 insertions(+), 3 deletions(-) diff --git a/engine/lib/group.php b/engine/lib/group.php index 134206b02..5524461f5 100644 --- a/engine/lib/group.php +++ b/engine/lib/group.php @@ -147,6 +147,18 @@ return get_group_members($this->getGUID(), $limit, $offset, 0 , $count); } + /** + * Returns whether the current group is public membership or not. + * @return bool + */ + public function isPublicMembership() + { + if ($this->membership == 2) + return true; + + return false; + } + /** * Return whether a given user is a member of this group or not. * diff --git a/mod/groups/actions/edit.php b/mod/groups/actions/edit.php index b5502115b..7965625e8 100644 --- a/mod/groups/actions/edit.php +++ b/mod/groups/actions/edit.php @@ -54,6 +54,15 @@ exit; } + // Group membership + switch (get_input('membership')) + { + case 0: $group->membership = 0; + case 1 :$group->membership = 1; break; + case 2: + default: $group->membership = 2; + } + // Get access $group->access_id = get_input('access_id', 0); diff --git a/mod/groups/actions/join.php b/mod/groups/actions/join.php index 77d2e3021..84e770065 100644 --- a/mod/groups/actions/join.php +++ b/mod/groups/actions/join.php @@ -26,7 +26,7 @@ if (($user instanceof ElggUser) && ($group instanceof ElggGroup)) { - if ($group->access_id == 2) + if ($group->isPublicMembership()) { if ($group->join($user)) { diff --git a/mod/groups/languages/en.php b/mod/groups/languages/en.php index af3213fbf..13ab1b041 100644 --- a/mod/groups/languages/en.php +++ b/mod/groups/languages/en.php @@ -28,6 +28,7 @@ 'groups:interests' => 'Interests', 'groups:website' => 'Website', 'groups:membership' => "Membership", + 'groups:access' => "Access permissions", 'groups:owner' => "Owner", 'groups:noaccess' => 'No access to group', diff --git a/mod/groups/views/default/forms/groups/edit.php b/mod/groups/views/default/forms/groups/edit.php index abb226464..4fcaa80a3 100644 --- a/mod/groups/views/default/forms/groups/edit.php +++ b/mod/groups/views/default/forms/groups/edit.php @@ -47,7 +47,14 @@

+

+ +

+

diff --git a/mod/groups/views/default/groups/menu/actions.php b/mod/groups/views/default/groups/menu/actions.php index 8e1130871..4c27fea9b 100644 --- a/mod/groups/views/default/groups/menu/actions.php +++ b/mod/groups/views/default/groups/menu/actions.php @@ -17,7 +17,7 @@ } else { - if ($vars['entity']->access_id == 2) + if ($vars['entity']->isPublicMembership()) { ?>