/** * Remove given user from project members * * Error codes: * * 3000, Invalid project id * * 3201, Permission denied: need to be project admin * * 3202, Invalid user login * * 3203, User not member of project * * @param String $sessionKey The project admin session hash * @param Integer $groupId Project ID * @param String $userLogin User login name * * @return Boolean */ public function removeProjectMember($sessionKey, $groupId, $userLogin) { $project = $this->getProjectIfUserIsAdmin($groupId, $sessionKey); $userToAdd = $this->getProjectMember($project, $userLogin); $result = account_remove_user_from_group($groupId, $userToAdd->getId()); return $this->returnFeedbackToSoapFault($result); }
/** * Object oriented wrapper for account_remove_user_from_group * * @param Integer $groupId Project id * @param Integer $userId User id * * @return Boolean */ function removeUserFromGroup($groupId, $userId) { include_once 'account.php'; return account_remove_user_from_group($groupId, $userId); }
private function removeUserFromUserGroup(ProjectUGroup $user_group, PFUser $user) { if ($user_group->getId() == ProjectUGroup::PROJECT_MEMBERS) { return account_remove_user_from_group($user_group->getProjectId(), $user->getId()); } return $user_group->removeUser($user); }
$vFunc = new Valid_WhiteList('func', array('adduser', 'rmuser', 'change_group_type', 'member_req_notif_group', 'member_req_notif_message')); $vFunc->required(); if ($request->isPost() && $request->valid($vFunc)) { /* updating the database */ switch ($request->get('func')) { case 'adduser': // add user to this project $form_unix_name = $request->get('form_unix_name'); $res = account_add_user_to_group($group_id, $form_unix_name); break; case 'rmuser': // remove a user from this portal $rm_id = $request->getValidated('rm_id', 'uint', 0); account_remove_user_from_group($group_id, $rm_id); break; case 'change_group_type': $form_project_type = $request->getValidated('form_project_type', 'uint', 0); if (user_is_super_user() && $group->getType() != $form_project_type) { group_add_history('group_type', $group->getType(), $group_id); $template = TemplateSingleton::instance(); $group->setType($form_project_type); //set also flag on trackers to be copied or not on project instanciation if ($template->isTemplate($form_project_type)) { db_query("UPDATE artifact_group_list SET instantiate_for_new_projects='1' WHERE group_id='{$group_id}'"); } else { db_query("UPDATE artifact_group_list SET instantiate_for_new_projects='0' WHERE group_id='{$group_id}'"); } // get current information, force update on group and project objects $group = $pm->getProject($group_id, true);
// require_once 'pre.php'; require_once 'common/mail/Mail.class.php'; require_once 'www/include/account.php'; require_once 'www/project/admin/ugroup_utils.php'; if (user_isloggedin()) { $user_id = user_getid(); $vGroupId = new Valid_GroupId(); $vGroupId->required(); if ($request->valid($vGroupId)) { $group_id = $request->get('group_id'); } else { exit_no_group(); } //Process MEMBERSHIP_DELETE event account_remove_user_from_group($group_id, $user_id, false); /********* mail the changes so the admins know what happened *********/ $res_admin = db_query("SELECT user.user_id AS user_id, user.email AS email, user.user_name AS user_name FROM user,user_group " . "WHERE user_group.user_id=user.user_id AND user_group.group_id=" . db_ei($group_id) . " AND " . "user_group.admin_flags = 'A'"); $to = ''; while ($row_admin = db_fetch_array($res_admin)) { $to .= "{$row_admin['email']},"; } if (strlen($to) > 0) { $to = substr($to, 0, -1); $project = new Project($group_id); $project_name = $project->getPublicName(); list($host, $port) = explode(':', $GLOBALS['sys_default_domain']); $link_members = get_server_url() . "/project/memberlist.php?group_id={$group_id}"; $subject = $Language->getText('bookmark_rmproject', 'mail_subject', array($GLOBALS['sys_name'], user_getname($user_id), $project_name)); $body = stripcslashes($Language->getText('bookmark_rmproject', 'mail_body', array($project_name, user_getname($user_id), $link_members))); $mail = new Mail();