BBP_Forums_Group_Extension::update_group_forum_visibility( BP_Groups_Group $group )

Set forums’ status to match the privacy status of the associated group


Description Description

Fired whenever a group is saved


Parameters Parameters

$group

(Required) Group object.


Top ↑

Source Source

File: includes/extend/buddypress/groups.php

	public static function update_group_forum_visibility( BP_Groups_Group $group ) {

		// Get group forum IDs
		$forum_ids = bbp_get_group_forum_ids( $group->id );

		// Bail if no forum IDs available
		if ( empty( $forum_ids ) ) {
			return;
		}

		// Loop through forum IDs
		foreach ( $forum_ids as $forum_id ) {

			// Get forum from ID
			$forum = bbp_get_forum( $forum_id );

			// Check for change
			if ( $group->status !== $forum->post_status ) {
				switch ( $group->status ) {

					// Changed to hidden
					case 'hidden' :
						bbp_hide_forum( $forum_id, $forum->post_status );
						break;

					// Changed to private
					case 'private' :
						bbp_privatize_forum( $forum_id, $forum->post_status );
						break;

					// Changed to public
					case 'public' :
					default :
						bbp_publicize_forum( $forum_id, $forum->post_status );
						break;
				}
			}
		}
	}

Top ↑

User Contributed Notes User Contributed Notes

You must log in before being able to contribute a note or feedback.