Avoid deleting a user if it has shared entities

pull/16424/head
cgonzalez 2 years ago
parent 64bc263488
commit 0427b991ec

@ -121,8 +121,8 @@ module Carto
force_destroy = params[:force].present?
if !force_destroy && @user.has_shared_entities?
error_message = "Can't delete @user. 'Has shared entities"
render_jsonp(error_message, 410 ) and return
error_message = "Can't delete user. Has shared entities"
render_jsonp(error_message, 401) and return
end
@user.set_force_destroy if force_destroy

@ -111,7 +111,13 @@ module Carto
deletion_password_confirmation = params[:deletion_password_confirmation]
if user.needs_password_confirmation? && !user.validate_old_password(deletion_password_confirmation)
render_jsonp({ message: "Error deleting user: #{PASSWORD_DOES_NOT_MATCH_MESSAGE}" }, 400) and return
render_jsonp({ message: "Error deleting user: #{PASSWORD_DOES_NOT_MATCH_MESSAGE}" }, 400)
return
end
if user.has_shared_entities?
render_jsonp({ message: "User can't be deleted because there are shared entities. Please, unshare or delete them and try again." }, 401)
return
end
user.destroy_account

Loading…
Cancel
Save