diff --git a/app/controllers/public/invite_controller.rb b/app/controllers/public/invite_controller.rb index b5f71d5..b771d4d 100644 --- a/app/controllers/public/invite_controller.rb +++ b/app/controllers/public/invite_controller.rb @@ -58,9 +58,8 @@ class InviteController < PublicController def invite_registered_friend contacts_to_invite = params['q'].split(',') - mail_template = params[:mail_template] || environment.invitation_mail_template(profile) if !contacts_to_invite.empty? - Delayed::Job.enqueue InvitationJob.new(current_user.person.id, contacts_to_invite, mail_template, profile.id, nil, locale) + Delayed::Job.enqueue InvitationJob.new(current_user.person.id, contacts_to_invite, '', profile.id, nil, locale) session[:notice] = _('Your invitations are being sent.') if profile.person? redirect_to :controller => 'profile', :action => 'friends' diff --git a/app/models/invite_member.rb b/app/models/invite_member.rb index 5f9fefe..6858f79 100644 --- a/app/models/invite_member.rb +++ b/app/models/invite_member.rb @@ -39,6 +39,14 @@ class InviteMember < Invitation _('%{requestor} invited you to join %{community}.') % {:requestor => requestor.name, :community => community.name} end + def target_notification_message + if friend + _('%{requestor} is inviting you to join "%{community}" on %{system}.') % { :system => target.environment.name, :requestor => requestor.name, :community => community.name } + else + super + end + end + def expanded_message super.gsub //, community.name end diff --git a/app/views/invite/invite_friends.rhtml b/app/views/invite/invite_friends.rhtml index cbfd2bb..0234f31 100644 --- a/app/views/invite/invite_friends.rhtml +++ b/app/views/invite/invite_friends.rhtml @@ -13,8 +13,6 @@ { :hint_text => _('Type in your friend\'s ') + search_friend_fields, :focus => false }) %> - <%= render :partial => 'invite/personalize_invitation_mail', :locals => {:mail_template => @mail_template } %> - <% button_bar do %> <%= submit_button('save', _('Invite'))%> <%= button('cancel', _('Cancel'), profile.url)%> diff --git a/test/unit/invite_member_test.rb b/test/unit/invite_member_test.rb index 3ea4cff..4c51da5 100644 --- a/test/unit/invite_member_test.rb +++ b/test/unit/invite_member_test.rb @@ -76,11 +76,11 @@ class InviteMemberTest < ActiveSupport::TestCase task = InviteMember.create!(:person => p1, :friend_email => 'test@test.com', :message => '', :community_id => fast_create(Community).id) end - should 'not send e-mails to friend if target given (person being invited)' do + should 'send e-mails notification to friend if target given (person being invited)' do p1 = create_user('testuser1').person p2 = create_user('testuser2').person - TaskMailer.expects(:deliver_invitation_notification).never + TaskMailer.expects(:deliver_target_notification).once task = InviteMember.create!(:person => p1, :friend => p2, :community_id => fast_create(Community).id) end @@ -115,5 +115,29 @@ class InviteMemberTest < ActiveSupport::TestCase assert_match(/#{task.requestor.name} invited you to join #{community.name}/, email.subject) end -end + should 'have target notification message only if target given (person being invited)' do + p1 = create_user('testuser1').person + p2 = create_user('testuser2').person + + task = InviteMember.create!(:person => p1, :friend => p2, :community_id => fast_create(Community).id) + assert_nothing_raised NotImplementedError do + task.target_notification_message + end + + task = InviteMember.create!(:person => p1, :friend_email => 'test@test.com', :message => '', :community_id => fast_create(Community).id) + assert_raise NotImplementedError do + task.target_notification_message + end + end + should 'deliver target notification message if target given (person being invited)' do + p1 = create_user('testuser1').person + p2 = create_user('testuser2').person + + task = InviteMember.create!(:person => p1, :friend => p2, :community_id => fast_create(Community).id) + + email = TaskMailer.deliver_target_notification(task, task.target_notification_message) + assert_match(/#{task.requestor.name} invited you to join #{task.community.name}/, email.subject) + end + +end -- libgit2 0.21.2