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
| Event | Signature | When |
|---|---|---|
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
}