diff --git a/bemade_sports_clinic/models/res_users.py b/bemade_sports_clinic/models/res_users.py index fa825ae..0fa392b 100644 --- a/bemade_sports_clinic/models/res_users.py +++ b/bemade_sports_clinic/models/res_users.py @@ -29,9 +29,10 @@ class User(models.Model): for rec in self: removed_teams = rec.partner_id.teams_served_ids - rec.accessible_team_ids added_teams = rec.accessible_team_ids - rec.partner_id.teams_served_ids - rec.partner_id.teams_served_ids.filtered( + removed_teams = rec.partner_id.teams_served_ids.filtered( lambda team: team in removed_teams - ).unlink() + ) + removed_teams.remove_access(self) self.env["sports.team.staff"].create( [ { diff --git a/bemade_sports_clinic/models/sports_team.py b/bemade_sports_clinic/models/sports_team.py index c8ff2f6..91300bd 100644 --- a/bemade_sports_clinic/models/sports_team.py +++ b/bemade_sports_clinic/models/sports_team.py @@ -118,6 +118,9 @@ class SportsTeam(models.Model): ] ) + def remove_access(self, user): + self.staff_ids.filtered(lambda staff: user in staff.user_ids).unlink() + class TeamStaff(models.Model): _name = "sports.team.staff"