FIX: Show invite validation errors to users (#12717)

The server used to respond with a generic 'error, contact admin' message
which did not offer any hint what the error was. This happened even when
the error could be easily corrected by the user (for example, if they
chose a very common password).
This commit is contained in:
Dan Ungureanu
2021-04-15 15:23:49 +03:00
committed by GitHub
parent 4d87360f84
commit bfa301bd7b
3 changed files with 1 additions and 5 deletions

View File

@@ -228,9 +228,7 @@ class InvitesController < ApplicationController
end
user = invite.redeem(**attrs)
rescue ActiveRecord::RecordInvalid, ActiveRecord::RecordNotSaved => e
return render json: failed_json.merge(errors: e.record&.errors&.to_hash, message: I18n.t('invite.error_message')), status: 412
rescue Invite::UserExists => e
rescue ActiveRecord::RecordInvalid, ActiveRecord::RecordNotSaved, Invite::UserExists => e
return render json: failed_json.merge(message: e.message), status: 412
end