about summary refs log tree commit diff
path: root/app
diff options
context:
space:
mode:
Diffstat (limited to 'app')
-rw-r--r--app/controllers/auth/registrations_controller.rb1
-rw-r--r--app/views/auth/registrations/rules.html.haml3
2 files changed, 3 insertions, 1 deletions
diff --git a/app/controllers/auth/registrations_controller.rb b/app/controllers/auth/registrations_controller.rb
index f31677f64..edef0d5bb 100644
--- a/app/controllers/auth/registrations_controller.rb
+++ b/app/controllers/auth/registrations_controller.rb
@@ -153,6 +153,7 @@ class Auth::RegistrationsController < Devise::RegistrationsController
     return if @rules.empty? || (session[:accept_token].present? && params[:accept] == session[:accept_token])
 
     @accept_token = session[:accept_token] = SecureRandom.hex
+    @invite_code  = invite_code
 
     set_locale { render :rules }
   end
diff --git a/app/views/auth/registrations/rules.html.haml b/app/views/auth/registrations/rules.html.haml
index a41581b32..8e7a90cbe 100644
--- a/app/views/auth/registrations/rules.html.haml
+++ b/app/views/auth/registrations/rules.html.haml
@@ -14,7 +14,8 @@
         .rules-list__text= rule.text
 
   .stacked-actions
-    = link_to t('auth.rules.accept'), new_user_registration_path(accept: @accept_token), class: 'button'
+    - accept_path = @invite_code.present? ? public_invite_url(invite_code: @invite_code, accept: @accept_token) : new_user_registration_path(accept: @accept_token)
+    = link_to t('auth.rules.accept'), accept_path, class: 'button'
     = link_to t('auth.rules.back'), root_path, class: 'button button-tertiary'
 
 .form-footer= render 'auth/shared/links'