diff --git a/app/controllers/api/v1/migrations/external_controller.rb b/app/controllers/api/v1/migrations/external_controller.rb index f5191878ad59f6cdadb7dce3b92981aba2cef0a6..717af9694ddfb6905e7dc3cf6a6f05e638cd3940 100644 --- a/app/controllers/api/v1/migrations/external_controller.rb +++ b/app/controllers/api/v1/migrations/external_controller.rb @@ -75,7 +75,7 @@ module Api end # POST /api/v1/migrations/users.json - # Expects: { user: { :name, :email, :external_id, :language, :role } } + # Expects: { user: { :name, :email, :password_digest, :provider, :external_id, :language, :role } } # Returns: { data: Array[serializable objects] , errors: Array[String] } # Does: Creates a user. def create_user @@ -103,10 +103,8 @@ module Api return render_error(status: :bad_request, errors: user&.errors&.to_a) unless user.save - if user_hash[:provider] != 'greenlight' - user.password_digest = nil - user.save(validations: false) - end + user.password_digest = user_hash[:provider] == 'greenlight' ? user_hash[:password_digest] : nil + user.save(validations: false) render_data status: :created end @@ -228,7 +226,7 @@ module Api end def user_params - decrypted_params.require(:user).permit(:name, :email, :provider, :external_id, :language, :role, :created_at) + decrypted_params.require(:user).permit(:name, :email, :password_digest, :provider, :external_id, :language, :role, :created_at) end def room_params