From bf8f7b471ca4e61f61a37280fa852d1e01b57991 Mon Sep 17 00:00:00 2001 From: Sebastian Serth Date: Sun, 22 Oct 2023 15:32:54 +0200 Subject: [PATCH] Keep existing programming group memberships during update --- app/models/programming_group.rb | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/app/models/programming_group.rb b/app/models/programming_group.rb index fb530b40..dbec341f 100644 --- a/app/models/programming_group.rb +++ b/app/models/programming_group.rb @@ -69,13 +69,14 @@ class ProgrammingGroup < ApplicationRecord end def users=(users) - self.internal_users = [] - self.external_users = [] users&.each do |user| next erroneous_users << user unless user.is_a?(User) add(user) end + + # Remove all users that are no longer part of the programming group. + programming_group_memberships.where.not(user: users).destroy_all end def self.ransackable_associations(_auth_object = nil)