Skip to main content

Team events

Fired by Service\Download\TeamManager whenever the per-download team membership changes. Team management UI lives on the download edit page; these events fire on every change made through it (or through the API).

Events

EventSignatureWhen
mc_dm_team_member_added(Download $download, TeamMember $member, User $byUser)After a co-owner is added. $byUser is the visitor who made the change.
mc_dm_team_member_updated(Download $download, TeamMember $member, array $changedFlags, User $byUser)After a member's flag set is updated. $changedFlags is an associative array of flag_name => new_value.
mc_dm_team_member_removed(Download $download, int $removedUserId, User $byUser)After a member is removed. The entity is gone by this point — only the user_id is passed.

Flag vocabulary

TeamMember carries five permission flags: can_edit, can_publish, can_manage_team, can_view_stats, can_respond_to_reviews. The $changedFlags array on team_member_updated will contain whichever of these changed in the update.

Example

public static function teamMemberAdded(
\MC\DownloadsManager\Entity\Download $download,
\MC\DownloadsManager\Entity\TeamMember $member,
\XF\Entity\User $byUser
)
{
// log to your audit trail or mirror to an external CRM
}