} }); } } </script>'; $show_message = null; // easy links if (is_array($_GET) && count($_GET) > 0) { foreach ($_GET as $key => $value) { switch ($key) { case 'accept': $user_role = GroupPortalManager::get_user_group_role( api_get_user_id(), $value ); if (in_array( $user_role, array( GROUP_USER_PERMISSION_PENDING_INVITATION_SENT_BY_USER, GROUP_USER_PERMISSION_PENDING_INVITATION ) ) ) { GroupPortalManager::update_user_role( api_get_user_id(), $value, GROUP_USER_PERMISSION_READER ); $show_message = get_lang('UserIsSubscribedToThisGroup');
if (empty($group_id)) { api_not_allowed(true); } else { $group_info = GroupPortalManager::get_group_data($group_id); if (empty($group_info)) { api_not_allowed(true); } $is_member = GroupPortalManager::is_group_member($group_id); if ($group_info['visibility'] == GROUP_PERMISSION_CLOSED && !$is_member) { api_not_allowed(true); } } if (isset($_REQUEST['action']) && $_REQUEST['action'] == 'delete') { $group_role = GroupPortalManager::get_user_group_role( api_get_user_id(), $group_id ); if (api_is_platform_admin() || in_array( $group_role, array(GROUP_USER_PERMISSION_ADMIN, GROUP_USER_PERMISSION_MODERATOR) ) ) { GroupPortalManager::delete_topic($group_id, $topic_id); header( "Location: groups.php?id=$group_id&action=show_message&msg=topic_deleted" ); } } // save message group
/** * @param int $group_id * @param int $user_id * @return bool */ public static function is_group_member($group_id, $user_id = 0) { if (empty($user_id)) { $user_id = api_get_user_id(); } $user_role = GroupPortalManager::get_user_group_role($user_id, $group_id); $permissions = array(GROUP_USER_PERMISSION_ADMIN, GROUP_USER_PERMISSION_MODERATOR, GROUP_USER_PERMISSION_READER, GROUP_USER_PERMISSION_HRM); if (in_array($user_role, $permissions)) { return true; } else { return false; } }