Skip to content

tp TouchPointWP Meeting_GroupingSettings

James K. edited this page Oct 5, 2026 · 1 revision

tp\TouchPointWP\Meeting_GroupingSettings

The Meeting Grouping settings for one TouchPoint Involvement Type (or for all other Involvement Types). Determines which grouping types are used when meetings are imported, Editions and Clusters, and whether child involvements' meetings are included.

All settings are stored together in the mc_grouping_json setting.


  • Full name: \tp\TouchPointWP\Meeting_GroupingSettings

Constants

Constant Visibility Type Value
DEFAULT_EDITION_GAP public 25 * DAY_IN_SECONDS
DEFAULT_CLUSTER_GAP public 2 * HOUR_IN_SECONDS

Methods

__get

public __get(mixed $what): mixed

Parameters:

Parameter Type Description
$what mixed

defaultsForNewSite

The settings for a new installation, which has never collected meetings. Back-to-back meetings are grouped into Clusters.

public static defaultsForNewSite(): object
  • This method is static.

forInvolvementType

Get the Meeting Grouping settings that apply to a given TouchPoint Involvement Type. If the type doesn't have its own settings, the settings for all other types are returned.

public static forInvolvementType(?int $invTypeId): \tp\TouchPointWP\Meeting_GroupingSettings

Note that when an involvement is included in its parent's structure (the parent's settings include child involvements), the parent's settings apply, not the child's.

  • This method is static. Parameters:
Parameter Type Description
$invTypeId ?int The TouchPoint Involvement Type ID.

forOtherTypes

Get the Meeting Grouping settings for Involvement Types that don't have their own settings.

public static forOtherTypes(): \tp\TouchPointWP\Meeting_GroupingSettings
  • This method is static.

legacyAvailable

Whether the previous behavior (collecting meetings less than 23 hours apart) can be selected. Only sites that used it before upgrading can select it. It stays available even after other options are chosen.

public static legacyAvailable(): bool
  • This method is static.

keepHiddenChildren

Whether archived meetings of child involvements are kept after the child involvement's "Show in Sites" is turned off in TouchPoint. If false, the child involvement's posts are removed when "Show in Sites" is turned off. If true, its archived meetings are kept, but not its upcoming ones.

public static keepHiddenChildren(): bool
  • This method is static.

involvementQueryParameters

Get the parameters the TouchPoint Involvement query needs to find structure owners and their child involvements.

public static involvementQueryParameters(): array{childTypes: string, listedTypes: string, childOther: int, keepHidden: int}
  • childTypes: the Involvement Type IDs whose settings include child involvements.
  • listedTypes: the Involvement Type IDs that have their own settings.
  • childOther: 1 if the settings for all other Involvement Types include child involvements. This applies to types that aren't listed, and to involvements without a type.
  • keepHidden: 1 if hidden child involvements should still be returned. See keepHiddenChildren().
  • This method is static.

editionGap

The gap, in seconds, after which a new Edition starts. Measured from the end of one meeting to the start of the next.

public static editionGap(): int
  • This method is static.

clusterGap

The maximum gap, in seconds, between back-to-back meetings in a Cluster. Measured from the end of one meeting to the start of the next.

public static clusterGap(): int
  • This method is static.

toObject

Get the current settings as an object suitable for the settings form or for storage.

public static toObject(): object
  • This method is static.

validateNewSettings

Validate and normalize the settings submitted from the settings form.

public static validateNewSettings(mixed $new): string
  • This method is static. Parameters:
Parameter Type Description
$new mixed The JSON string submitted.

Return Value:

The JSON string to store.


Clone this wiki locally