stable

Clone or download

Read-only

Revert "Add to project members in bound ugroups"

This reverts commit ba172e8899460c503ccb4836b2a63da63d104cbc. Part of story #13490 have a consistent management of project & groups members How to test: Given Project A with ugroup "Source" and Project B with ugroup "Destination". - When I create a binding from Destination to Source, members of Source will no longer be added as project members of Project B. - When I add a regular user to ugroup Source, they will no longer be added as project member of Project B. - If Project B is private, when I add a user to ugroup Source and they are NOT project members of B, they will NOT be added in ugroup Destination - If Project B is private and a user is already project member of B, when I add that user to ugroup Source, they will be added in ugroup Destination. - When I switch Project B from Public to Private, all members of Destination that were not project members of B will be removed from Destination. - When I switch Project B from Private to Public, all members of Source that were not project members of B will be added to Destination. This commit introduced several problems: - It spams feedback when adding a binding, adding or removing project members. Bound ugroups are refreshed on these operations. - When I remove a project member that is also a member of a bound ugroup, they are re-added immediately. Since bound ugroups are refreshed, and user is no longer project members, the refresh re-adds them. That means there is no way to remove someone from the project when they come from a bound ugroup. - In the case above, given the project member was also member of a second, non-bound ugroup, when I remove them from project members, they would be removed from the non-bound ugroup, but not from the bound ugroup, leading to inconsistencies. Change-Id: I1dda12cd54fcce8d3e86ce090944f4ff4e66a287

Modified Files

Name
M site-content/en_US/project/project.tab +1 −0 Go to diff View file
M site-content/fr_FR/LC_MESSAGES/tuleap-core.po +0 −8 Go to diff View file
M site-content/fr_FR/project/project.tab +1 −0 Go to diff View file
M src/common/Project/ProjectUGroup.php +6 −2 Go to diff View file
M src/common/Project/UGroupBinding.class.php +1 −26 Go to diff View file
M src/common/Project/UGroupManager.class.php +3 −1 Go to diff View file
M src/common/Project/UGroups/Binding/BoundUGroupRefresher.php +8 −31 Go to diff View file
M src/common/Project/UGroups/Membership/DynamicUGroups/ProjectMemberAdderWithStatusCheckAndNotifications.php +11 −0 Go to diff View file
M src/common/Project/UGroups/Membership/DynamicUGroups/ProjectMemberAdderWithoutStatusCheckAndNotifications.php +11 −0 Go to diff View file
M src/common/Project/UGroups/Membership/MemberAdder.php +0 −1 Go to diff View file
M src/common/Request/RouteCollector.php +3 −1 Go to diff View file
M src/common/dao/UGroupUserDao.class.php +3 −4 Go to diff View file
M src/www/project/admin/editugroup.php +1 −1 Go to diff View file
M tests/phpunit/common/Project/UGroups/Binding/BoundUGroupRefresherTest.php +5 −54 Go to diff View file