diff --git a/app/mailers/group_smtp_mailer.rb b/app/mailers/group_smtp_mailer.rb index 367297d4a5a..15e20959e10 100644 --- a/app/mailers/group_smtp_mailer.rb +++ b/app/mailers/group_smtp_mailer.rb @@ -77,7 +77,7 @@ class GroupSmtpMailer < ActionMailer::Base list = [] post.topic.allowed_groups.each do |g| - list.push("[#{g.name_full_preferred}](#{Discourse.base_url}/groups/#{g.name})") + list.push("[#{g.name_full_preferred}](#{g.full_url})") end post.topic.allowed_users.each do |u| diff --git a/app/mailers/user_notifications.rb b/app/mailers/user_notifications.rb index 892f407b987..8ca231a5f30 100644 --- a/app/mailers/user_notifications.rb +++ b/app/mailers/user_notifications.rb @@ -556,7 +556,7 @@ class UserNotifications < ActionMailer::Base participant_list = [] post.topic.allowed_groups.each do |g| - participant_list.push "[#{g.name} (#{g.users.count})](#{Discourse.base_url}/groups/#{g.name})" + participant_list.push "[#{g.name} (#{g.users.count})](#{g.full_url})" end post.topic.allowed_users.each do |u| diff --git a/app/models/group.rb b/app/models/group.rb index 72eae6ab167..d0a401a8d6e 100644 --- a/app/models/group.rb +++ b/app/models/group.rb @@ -936,6 +936,10 @@ class Group < ActiveRecord::Base TopicAllowedGroup.where(group_id: self.id).joins(:topic).count end + def full_url + "#{Discourse.base_url}/g/#{UrlHelper.encode_component(self.name)}" + end + protected def name_format_validator diff --git a/spec/mailers/user_notifications_spec.rb b/spec/mailers/user_notifications_spec.rb index 25ade90edbf..0f1518cd7a2 100644 --- a/spec/mailers/user_notifications_spec.rb +++ b/spec/mailers/user_notifications_spec.rb @@ -606,7 +606,7 @@ describe UserNotifications do notification_data_hash: notification.data_hash ) - expect(mail.body).to include("[group1 (2)](http://test.localhost/groups/group1), [group2 (1)](http://test.localhost/groups/group2), [one](http://test.localhost/u/one), [two](http://test.localhost/u/two)") + expect(mail.body).to include("[group1 (2)](http://test.localhost/g/group1), [group2 (1)](http://test.localhost/g/group2), [one](http://test.localhost/u/one), [two](http://test.localhost/u/two)") end context "when SiteSetting.group_name_in_subject is true" do