1
0
mirror of https://github.com/bitwarden/server.git synced 2025-05-30 15:50:33 -05:00

dont remove owners when syncing directory

This commit is contained in:
Kyle Spearrin 2019-05-14 13:09:56 -04:00
parent 889d770cec
commit 92505a2d4f

View File

@ -1186,24 +1186,24 @@ namespace Bit.Core.Services
.Select(ru => existingUsersDict[ru]); .Select(ru => existingUsersDict[ru]);
foreach(var user in usersToRemove) foreach(var user in usersToRemove)
{
if(user.Type != OrganizationUserType.Owner)
{ {
await _organizationUserRepository.DeleteAsync(new OrganizationUser { Id = user.Id }); await _organizationUserRepository.DeleteAsync(new OrganizationUser { Id = user.Id });
existingExternalUsersIdDict.Remove(user.ExternalId); existingExternalUsersIdDict.Remove(user.ExternalId);
} }
} }
}
if(overwriteExisting) if(overwriteExisting)
{ {
// Remove existing external users that are not in new user set // Remove existing external users that are not in new user set
foreach(var user in existingExternalUsers) foreach(var user in existingExternalUsers)
{ {
if(!newUsersSet.Contains(user.ExternalId) && if(user.Type != OrganizationUserType.Owner && !newUsersSet.Contains(user.ExternalId) &&
existingExternalUsersIdDict.ContainsKey(user.ExternalId)) existingExternalUsersIdDict.ContainsKey(user.ExternalId))
{ {
await _organizationUserRepository.DeleteAsync(new OrganizationUser await _organizationUserRepository.DeleteAsync(new OrganizationUser { Id = user.Id });
{
Id = user.Id
});
existingExternalUsersIdDict.Remove(user.ExternalId); existingExternalUsersIdDict.Remove(user.ExternalId);
} }
} }