if($_POST["new_group"]){ // set the new group permission to approved $groupdata[$_POST["new_group"]] = PHORUM_USER_GROUP_APPROVED; } if(isset($_POST["group_perm"])){ foreach($_POST["group_perm"] as $group_id=>$perm){ // as long as we aren't removing them from the group, accept other values if ($perm != PHORUM_USER_GROUP_REMOVE){ $groupdata[$group_id] = $perm; } } } phorum_user_save_groups($_POST["user_id"], $groupdata); break; } if(isset($_POST['password1']) && !empty($_POST['password1']) && !empty($_POST['password2']) && $_POST['password1'] != $_POST['password2']) { $error="Passwords don't match!"; } elseif(!empty($_POST['password1']) && !empty($_POST['password2'])) { $user_data['password']=$_POST['password1']; } // clean up unset($user_data["module"]); unset($user_data["section"]); unset($user_data["password1"]); unset($user_data["password2"]);
} } // if changing the existing members of the group if (isset($_REQUEST["status"])){ foreach ($_REQUEST["status"] as $userid => $status){ // load the users groups, make the change, then save again $groups = phorum_user_get_groups($userid); // we can't set someone to be a moderator from here if ($status != PHORUM_USER_GROUP_MODERATOR){ $groups[$PHORUM["args"]["group"]] = $status; } if ($status == PHORUM_USER_GROUP_REMOVE){ unset($groups[$PHORUM["args"]["group"]]); } phorum_user_save_groups($userid, $groups); } $PHORUM["DATA"]["Message"] = $PHORUM["DATA"]["LANG"]["ChangesSaved"]; } $group = phorum_db_get_groups($PHORUM["args"]["group"]); $PHORUM["DATA"]["GROUP"]["name"] = $group[$PHORUM["args"]["group"]]["name"]; $PHORUM["DATA"]["USERS"] = array(); $PHORUM["DATA"]["GROUP"]["url"] = phorum_get_url(PHORUM_CONTROLCENTER_ACTION_URL, "panel=" . PHORUM_CC_GROUP_MODERATION, "group=" . $PHORUM["args"]["group"]); $PHORUM["DATA"]["FILTER"] = array(); $PHORUM["DATA"]["FILTER"][] = array("name" => $PHORUM["DATA"]["LANG"]["None"], "enable" => !(!isset($PHORUM["args"]["filter"])), "url" => phorum_get_url(PHORUM_CONTROLCENTER_ACTION_URL, "panel=" . PHORUM_CC_GROUP_MODERATION, "group=" . $PHORUM["args"]["group"])); $PHORUM["DATA"]["FILTER"][] = array("name" => $PHORUM["DATA"]["LANG"]["Approved"], "enable" => !(isset($PHORUM["args"]["filter"]) && $PHORUM["args"]["filter"] == PHORUM_USER_GROUP_APPROVED),
// if we have a request to join a group, try and do it if (isset($_POST["joingroup"]) && $_POST["joingroup"] > 0){ // get the group, and the group list of the user trying to join $group = phorum_db_get_groups($_POST["joingroup"]); $usergroup = phorum_user_get_groups($PHORUM["user"]["user_id"]); // the user can't already be a member of the group, and the group must allow join requests if (!isset($usergroup[$_POST["joingroup"]])){ if ($group[$_POST["joingroup"]]["open"] == PHORUM_GROUP_OPEN){ $usergroup[$_POST["joingroup"]] = PHORUM_USER_GROUP_APPROVED; phorum_user_save_groups($PHORUM["user"]["user_id"], $usergroup); $PHORUM['DATA']['Message'] = $PHORUM['DATA']['LANG']['GroupJoinSuccess']; } elseif ($group[$_POST["joingroup"]]["open"] == PHORUM_GROUP_REQUIRE_APPROVAL){ $usergroup[$_POST["joingroup"]] = PHORUM_USER_GROUP_UNAPPROVED; phorum_user_save_groups($PHORUM["user"]["user_id"], $usergroup); $PHORUM['DATA']['Message'] = $PHORUM['DATA']['LANG']['GroupJoinSuccessModerated']; } else { $PHORUM['DATA']['Message'] = $PHORUM['DATA']['LANG']['GroupJoinFail']; } } else{ $PHORUM['DATA']['Message'] = $PHORUM['DATA']['LANG']['GroupJoinFail']; } } $template = "cc_groups"; $PHORUM['DATA']['Groups'] = phorum_readable_groups(); $PHORUM['DATA']['JOINGROUP'] = phorum_joinable_groups();