1<?php 2/** 3 * Leave a group action. 4 */ 5 6$user_guid = (int) get_input('user_guid', elgg_get_logged_in_user_guid()); 7$group_guid = (int) get_input('group_guid'); 8 9$user = get_user($user_guid); 10$group = get_entity($group_guid); 11 12if (!$user || !$group instanceof \ElggGroup) { 13 return elgg_error_response(elgg_echo('groups:cantleave')); 14} 15 16if (!$user->canEdit() && !$group->canEdit()) { 17 return elgg_error_response(elgg_echo('actionunauthorized')); 18} 19 20if ($group->getOwnerGUID() === $user->guid) { 21 // owner can't be removed 22 return elgg_error_response(elgg_echo('groups:cantleave')); 23} 24 25if (!$group->leave($user)) { 26 return elgg_error_response(elgg_echo('groups:cantleave')); 27} 28 29return elgg_ok_response('', elgg_echo('groups:left')); 30