public function memberships_delete($params = null) { // aka join board if ($params && isset($params["__partial"])) { return null; } if ($params === null) { $this->requireRequestType("DELETE"); $current_user = $this->requireLogin("You must be logged in to delete a membership"); $params = $_GET; } if ($params["membershipid"]) { $membership = new SCMembership($params["membershipid"]); } else { if ($params["userid"] && $params["boardid"]) { $membership = new SCMembership($params["userid"], $params["boardid"]); } else { throw new APIException("Membership id or userid/boardid pair missing", 400); } } if (intval($membership->userid) != intval($current_user->userid)) { throw new APIException("You may only attempt to delete your own memberships", 403); } $membership->delete(); SC::updateSessionUser(); return true; }