diff options
Diffstat (limited to 'app/controllers/registrations_controller.rb')
-rw-r--r-- | app/controllers/registrations_controller.rb | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/app/controllers/registrations_controller.rb b/app/controllers/registrations_controller.rb index 0800d635d92..ed0e019d02b 100644 --- a/app/controllers/registrations_controller.rb +++ b/app/controllers/registrations_controller.rb @@ -115,6 +115,7 @@ class RegistrationsController < Devise::RegistrationsController def after_request_hook(user) return unless user.persisted? + track_creation user: user Gitlab::Tracking.event(self.class.name, 'successfully_submitted_form', user: user) end @@ -145,6 +146,11 @@ class RegistrationsController < Devise::RegistrationsController users_sign_up_welcome_path(glm_tracking_params) end + def track_creation(user:) + label = user_invited? ? 'invited' : 'signup' + Gitlab::Tracking.event(self.class.name, 'create_user', label: label, user: user) + end + def ensure_destroy_prerequisites_met if current_user.solo_owned_groups.present? redirect_to profile_account_path, @@ -252,9 +258,15 @@ class RegistrationsController < Devise::RegistrationsController end end - def after_pending_invitations_hook - member_id = session.delete(:originating_member_id) + def user_invited? + !!member_id + end + def member_id + @member_id ||= session.delete(:originating_member_id) + end + + def after_pending_invitations_hook return unless member_id # if invited multiple times to different projects, only the email clicked will be counted as accepted |