Просмотр исходного кода

fix no user in collaborator update

Mohammed Nafees 3 лет назад
Родитель
Сommit
c5c96befa3
1 измененных файлов с 13 добавлено и 4 удалено
  1. 13 4
      api/server/handlers/project/update_collaborator_roles.go

+ 13 - 4
api/server/handlers/project/update_collaborator_roles.go

@@ -169,11 +169,20 @@ func (p *UpdateCollaboratorRolesHandler) ServeHTTP(w http.ResponseWriter, r *htt
 				}
 			}
 
-			err = p.Repo().ProjectRole().UpdateUsersInProjectRole(proj.ID, uid, newUserIDs)
+			if len(newUserIDs) == 0 {
+				err = p.Repo().ProjectRole().ClearUsersInProjectRole(proj.ID, uid)
 
-			if err != nil {
-				p.HandleAPIError(w, r, apierrors.NewErrInternal(err))
-				return
+				if err != nil {
+					p.HandleAPIError(w, r, apierrors.NewErrInternal(err))
+					return
+				}
+			} else {
+				err = p.Repo().ProjectRole().UpdateUsersInProjectRole(proj.ID, uid, newUserIDs)
+
+				if err != nil {
+					p.HandleAPIError(w, r, apierrors.NewErrInternal(err))
+					return
+				}
 			}
 		}
 	}