aboutsummaryrefslogtreecommitdiff
path: root/mod/groups/actions
diff options
context:
space:
mode:
authorJeff Tilson <jrtilson@gmail.com>2011-06-13 14:38:46 -0400
committerJeff Tilson <jrtilson@gmail.com>2011-06-13 14:38:46 -0400
commit6547efb9ae89c1477930c69ac2dbe73350673a66 (patch)
tree0201e0fc170701a7e8e71e87394897f3b4298d30 /mod/groups/actions
parenta420910a8b782bae53fbd7f86102db9f9b831388 (diff)
downloadelgg-6547efb9ae89c1477930c69ac2dbe73350673a66.tar.gz
elgg-6547efb9ae89c1477930c69ac2dbe73350673a66.tar.bz2
Added 'remove from group' link to the user hover menu (only appears when the page owner is a group)
Diffstat (limited to 'mod/groups/actions')
-rw-r--r--mod/groups/actions/groups/membership/remove.php31
1 files changed, 31 insertions, 0 deletions
diff --git a/mod/groups/actions/groups/membership/remove.php b/mod/groups/actions/groups/membership/remove.php
new file mode 100644
index 000000000..6f0698371
--- /dev/null
+++ b/mod/groups/actions/groups/membership/remove.php
@@ -0,0 +1,31 @@
+<?php
+/**
+ * Remove a user from a group
+ *
+ * @package ElggGroups
+ */
+
+$user_guid = get_input('user_guid');
+$group_guid = get_input('group_guid');
+
+$user = get_entity($user_guid);
+$group = get_entity($group_guid);
+
+elgg_set_page_owner_guid($group->guid);
+
+if (($user instanceof ElggUser) && ($group instanceof ElggGroup) && $group->canEdit()) {
+ // Don't allow removeing group owner
+ if ($group->getOwnerGUID() != $user->getGUID()) {
+ if ($group->leave($user)) {
+ system_message(elgg_echo("groups:removed"));
+ } else {
+ register_error(elgg_echo("groups:cantremove"));
+ }
+ } else {
+ register_error(elgg_echo("groups:cantremove"));
+ }
+} else {
+ register_error(elgg_echo("groups:cantremove"));
+}
+
+forward(REFERER);