diff options
author | Douwe Maan <douwe@gitlab.com> | 2016-05-04 16:33:15 +0300 |
---|---|---|
committer | Douwe Maan <douwe@gitlab.com> | 2016-05-04 16:33:15 +0300 |
commit | 622ad2355a5b780091def7f7752ac88c97520dbb (patch) | |
tree | f838cd6bd9a4051a8e28b7ff76399599bdc3279e /app/controllers/registrations_controller.rb | |
parent | a4df822b2e759db05c37e00eec9e128b31c05974 (diff) | |
parent | a6ba8647f919cca5f37f663502186d8b6b7642ec (diff) |
Merge branch 'rs-unique-signup-fields' into 'master'
Improve uniqueness of field names on the signup form
Closes https://gitlab.com/gitlab-org/gitlab-ce/issues/15075
See merge request !3826
Diffstat (limited to 'app/controllers/registrations_controller.rb')
-rw-r--r-- | app/controllers/registrations_controller.rb | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/app/controllers/registrations_controller.rb b/app/controllers/registrations_controller.rb index 059b88e2253..352bff19383 100644 --- a/app/controllers/registrations_controller.rb +++ b/app/controllers/registrations_controller.rb @@ -8,6 +8,13 @@ class RegistrationsController < Devise::RegistrationsController def create if !Gitlab::Recaptcha.load_configurations! || verify_recaptcha + # To avoid duplicate form fields on the login page, the registration form + # names fields using `new_user`, but Devise still wants the params in + # `user`. + if params["new_#{resource_name}"].present? && params[resource_name].blank? + params[resource_name] = params.delete(:"new_#{resource_name}") + end + super else flash[:alert] = "There was an error with the reCAPTCHA code below. Please re-enter the code." |