FIX: Return a proper error message when sync sso fails.

This commit is contained in:
Guo Xiang Tan
2016-03-26 13:28:49 +08:00
parent 4648c0ee19
commit 9a5ded48cf
2 changed files with 57 additions and 39 deletions

View File

@ -282,9 +282,13 @@ class Admin::UsersController < Admin::AdminController
return render nothing: true, status: 404 unless SiteSetting.enable_sso
sso = DiscourseSingleSignOn.parse("sso=#{params[:sso]}&sig=#{params[:sig]}")
user = sso.lookup_or_create_user
render_serialized(user, AdminDetailedUserSerializer, root: false)
begin
user = sso.lookup_or_create_user
render_serialized(user, AdminDetailedUserSerializer, root: false)
rescue ActiveRecord::RecordInvalid => ex
render json: failed_json.merge(message: ex.message), status: 403
end
end
def delete_other_accounts_with_same_ip