diff --git a/app/controllers/admin/invitations_controller.rb b/app/controllers/admin/invitations_controller.rb index d55e70eb8..701af3aa9 100644 --- a/app/controllers/admin/invitations_controller.rb +++ b/app/controllers/admin/invitations_controller.rb @@ -13,7 +13,6 @@ module Admin def create email = params.dig(:user, :email) - name = params.dig(:user, :name) if User.exists?(email: email.downcase, registered: true) flash[:error] = I18n.t("admin.invitations_controller.duplicate", email: email) @@ -21,9 +20,8 @@ module Admin return end - username = "#{name.downcase.tr(' ', '_').gsub(/[^0-9a-z ]/i, '')}_#{rand(1000)}" + username = "#{email.split('@').first.gsub(/[^0-9a-z ]/i, '')}_#{rand(1000)}" User.invite!(email: email, - name: name, username: username, remote_profile_image_url: ::Users::ProfileImageGenerator.call, registered: false) diff --git a/app/controllers/application_controller.rb b/app/controllers/application_controller.rb index 1fdc3e4fd..3e8089fd6 100644 --- a/app/controllers/application_controller.rb +++ b/app/controllers/application_controller.rb @@ -276,6 +276,7 @@ class ApplicationController < ActionController::Base def configure_permitted_parameters devise_parameter_sanitizer.permit(:sign_up, keys: %i[username name profile_image profile_image_url]) + devise_parameter_sanitizer.permit(:accept_invitation, keys: %i[name]) end def internal_nav_param diff --git a/app/controllers/invitations_controller.rb b/app/controllers/invitations_controller.rb index 3d6cbb8e1..5accc1a11 100644 --- a/app/controllers/invitations_controller.rb +++ b/app/controllers/invitations_controller.rb @@ -11,7 +11,7 @@ class InvitationsController < Devise::InvitationsController yield resource if block_given? if invitation_accepted - resource.update!(registered_at: Time.current, registered: true) + resource.update!(registered_at: Time.current, registered: true, name: params[:user][:name]) if resource.class.allow_insecure_sign_in_after_accept flash_message = resource.active_for_authentication? ? :updated : :updated_not_active set_flash_message :notice, flash_message if is_flashing_format? diff --git a/app/views/admin/invitations/index.html.erb b/app/views/admin/invitations/index.html.erb index 617432ecd..e1ffff655 100644 --- a/app/views/admin/invitations/index.html.erb +++ b/app/views/admin/invitations/index.html.erb @@ -28,7 +28,7 @@
<%= t("devise.mailer.invitation_instructions.hello", name: @resource.name) %>
+<%= t("devise.mailer.invitation_instructions.hello") %>
<%= t("devise.mailer.invitation_instructions.someone_invited_you", community_name: Settings::Community.community_name, url: root_url) %>
diff --git a/app/views/devise/mailer/invitation_instructions.text.erb b/app/views/devise/mailer/invitation_instructions.text.erb index 7c93bfd73..1763af0ad 100644 --- a/app/views/devise/mailer/invitation_instructions.text.erb +++ b/app/views/devise/mailer/invitation_instructions.text.erb @@ -1,4 +1,4 @@ -<%= t("devise.mailer.invitation_instructions.hello", name: @resource.name) %> +<%= t("devise.mailer.invitation_instructions.hello") %> <%= t("devise.mailer.invitation_instructions.someone_invited_you", community_name: Settings::Community.community_name, url: root_url) %> diff --git a/config/locales/devise_invitable.en.yml b/config/locales/devise_invitable.en.yml index 92b137390..b0e2cac2a 100644 --- a/config/locales/devise_invitable.en.yml +++ b/config/locales/devise_invitable.en.yml @@ -21,7 +21,7 @@ en: accept_instructions: You can accept the invitation by clicking this link accept: Accept Invitation accept_until: This invitation will expire after %{due_date}. - hello: Hello %{name} + hello: Hello ignore: If you don't want to accept the invitation, please ignore this email. Your account won't be created until you access the link above and set your password. someone_invited_you: You’ve been invited to join the %{community_name} community at %{url}. subject: Invitation instructions diff --git a/config/locales/devise_invitable.fr.yml b/config/locales/devise_invitable.fr.yml index 5e6d7f3e8..c8b6dc981 100644 --- a/config/locales/devise_invitable.fr.yml +++ b/config/locales/devise_invitable.fr.yml @@ -24,7 +24,7 @@ fr: accept_instructions: Vous pouvez accepter l'invitation en cliquant sur ce lien accept: Accepter l'invitation accept_until: Cette invitation expirera après %{due_date}. - hello: Bonjour %{name} + hello: Bonjour ignore: Si vous ne souhaitez pas accepter cette invitation, veuillez ignorer cet e-mail.