Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
24 changes: 23 additions & 1 deletion app/controlplane/pkg/data/group.go
Original file line number Diff line number Diff line change
Expand Up @@ -458,6 +458,13 @@ func (g GroupRepo) AddMemberToGroup(ctx context.Context, orgID uuid.UUID, groupI
return fmt.Errorf("failed to add user to group: %w", err)
}

// Update the group's updated_at timestamp
if _, err := tx.Group.UpdateOneID(groupID).
SetUpdatedAt(time.Now()).
Save(ctx); err != nil {
return fmt.Errorf("failed to update group timestamp: %w", err)
}

// Update the user membership with the role of maintainer
if maintainer {
_, err = tx.Membership.Create().
Expand Down Expand Up @@ -513,6 +520,13 @@ func (g GroupRepo) RemoveMemberFromGroup(ctx context.Context, orgID uuid.UUID, g
return fmt.Errorf("failed to remove user from group: %w", err)
}

// Update the group's updated_at timestamp
if _, err := tx.Group.UpdateOneID(groupID).
SetUpdatedAt(now).
Save(ctx); err != nil {
return fmt.Errorf("failed to update group timestamp: %w", err)
}

if existingMembership.Maintainer {
// Also remove the user membership if it exists
if _, err := tx.Membership.Delete().Where(
Expand Down Expand Up @@ -569,14 +583,22 @@ func (g GroupRepo) UpdateMemberMaintainerStatus(ctx context.Context, orgID uuid.
}

// Update the group membership with the new maintainer status
now := time.Now()
_, err = tx.GroupMembership.UpdateOne(existingMembership).
SetMaintainer(isMaintainer).
SetUpdatedAt(time.Now()).
SetUpdatedAt(now).
Save(ctx)
if err != nil {
return fmt.Errorf("failed to update group membership maintainer status: %w", err)
}

// Update the group's updated_at timestamp
if _, err := tx.Group.UpdateOneID(groupID).
SetUpdatedAt(now).
Save(ctx); err != nil {
return fmt.Errorf("failed to update group timestamp: %w", err)
}

// Update the membership table as well
if isMaintainer {
// If becoming a maintainer, create the membership record if it doesn't exist
Expand Down
Loading