BP_REST_Topics_Actions_Endpoint::rest_update_close( integer $topic_id, boolean $value )

Update status for the topic.

Description

Parameters

$topic_id

(Required) Topic ID.

$value

(Required) Action value.

Return

(bool|WP_Error)

Source

File: bp-forums/classes/class-bp-rest-topics-actions-endpoint.php

	protected function rest_update_close( $topic_id, $value ) {
		// What is the user doing here?
		if ( ! current_user_can( 'moderate', $topic_id ) ) {
			return new WP_Error(
				'bp_rest_authorization_required',
				__( 'You do not have permission to do this.', 'buddyboss' ),
				array(
					'status' => 404,
				)
			);
		}

		$is_open = bbp_is_topic_open( $topic_id );
		$status  = true;

		if ( true === $is_open && ! empty( $value ) ) {
			$status = bbp_close_topic( $topic_id );

		} elseif ( false === $is_open && empty( $value ) ) {
			$status = bbp_open_topic( $topic_id );
		}

		return $status;
	}

Questions?

We're always happy to help with code or other questions you might have! Search our developer docs, contact support, or connect with our sales team.