Skip to content

Commit e946626

Browse files
authored
Merge pull request #2289 from davidmillen50/issue-1922-add-description-to-invitation-emails
Issue 1922 add description to invitation emails
2 parents a93f2d9 + 36c67f0 commit e946626

File tree

9 files changed

+37
-19
lines changed

9 files changed

+37
-19
lines changed

app/controllers/admin/chapters/organisers_controller.rb

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -12,11 +12,6 @@ def index
1212
def create
1313
authorize :organiser
1414

15-
if params[:organiser].blank? || params[:organiser][:organiser].blank?
16-
flash[:alert] = 'Please select a member to make organiser.'
17-
redirect_to admin_chapter_organisers_path(@chapter) and return
18-
end
19-
2015
member = Member.find(params[:organiser][:organiser])
2116
member.add_role(:organiser, @chapter)
2217

app/views/layouts/_messages.html.haml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
- unless (name.eql?('notice') && @suppress_notices) || (name.eql?('warning') && @suppress_warnings)
33
- name = name.eql?('notice') ? 'info' : name
44
- if msg.is_a?(String)
5-
.alert.alert-dismissible.fade.show.mb-0.text-center.bg-warning{ 'data-alert': '', class: "alert-#{name}", role: 'alert' }
5+
.alert.alert-dismissible.fade.show.mb-0{ 'data-alert': '', class: "alert-#{name}", role: 'alert' }
66
= content_tag :div, msg.html_safe
77
%button.btn-close{ type: 'button', 'data-bs-dismiss': 'alert', 'aria-label': 'Close' }
88
- elsif msg.is_a?(Array)

app/views/workshop_invitation_mailer/attending.html.haml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,10 @@
3737
Workshop
3838
%p #{humanize_date(@workshop.date_and_time, @workshop.ends_at, with_time: true)}
3939
= link_to 'Update your attendance', full_url_for(invitation_url(@invitation)), class: 'btn'
40+
- if @workshop.description.present?
41+
%p{ style: 'margin-top: 10px;' }
42+
%strong Description:
43+
= @workshop.description
4044

4145
.content
4246
%table

app/views/workshop_invitation_mailer/attending_reminder.html.haml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,10 @@
3232
%br
3333
%p #{humanize_date(@workshop.date_and_time, @workshop.ends_at, with_time: true)}
3434
= link_to 'Update your attendance', full_url_for(invitation_url(@invitation)), class: 'btn'
35+
- if @workshop.description.present?
36+
%p{ style: 'margin-top: 10px;' }
37+
%strong Description:
38+
= @workshop.description
3539

3640
.content
3741
%table

app/views/workshop_invitation_mailer/invite_coach.html.haml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,10 @@
3838
%br
3939
%small #{humanize_date(@workshop.date_and_time, @workshop.ends_at, with_time: true)}
4040
= link_to 'View invitation and RSVP', full_url_for(invitation_url(@invitation)), class: 'btn'
41+
- if @workshop.description.present?
42+
%p{ style: 'margin-top: 15px;' }
43+
%strong Description:
44+
= @workshop.description
4145
%td{ width: '40%', style: 'vertical-align: top;'}
4246
%h4
4347
Venue

app/views/workshop_invitation_mailer/invite_student.html.haml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,10 @@
3535
%br
3636
%small #{humanize_date(@workshop.date_and_time, @workshop.ends_at, with_time: true)}
3737
= link_to 'View invitation and RSVP', full_url_for(invitation_url(@invitation)), class: 'btn'
38+
- if @workshop.description.present?
39+
%p{ style: 'margin-top: 15px;' }
40+
%strong Description:
41+
= @workshop.description
3842
%td{ width: '40%', style: 'vertical-align: top;'}
3943
%h4
4044
Venue

spec/features/admin/managing_organisers_spec.rb

Lines changed: 0 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -39,19 +39,6 @@
3939
end
4040
end
4141

42-
scenario 'show flash alert warning message if user clicks add organiser without selecting an organiser from the dropdown' do
43-
chapter_subscriber = Fabricate(:member)
44-
chapter = Fabricate(:chapter_with_groups)
45-
Fabricate(:subscription, member: chapter_subscriber, group: chapter.groups.first)
46-
visit admin_chapter_organisers_path(chapter)
47-
48-
click_on 'Add organiser'
49-
50-
expect(page).to have_content('Please select a member to make organiser.')
51-
expect(current_path).to eq(admin_chapter_organisers_path(chapter))
52-
expect(page.status_code).to eq(200)
53-
end
54-
5542
scenario 'can remove an organiser from a chapter' do
5643
visit admin_chapter_organisers_path(chapter)
5744
organiser_name = chapter.organisers.first.full_name

spec/mailers/virtual_workshop_invitation_mailer_spec.rb

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,16 @@
2929
expect(email.body.encoded).to match('Accept the invitation')
3030
end
3131

32+
it '#attending includes the workshop description' do
33+
description = "This is a test workshop description."
34+
workshop = Fabricate(:workshop, description: description)
35+
invitation = Fabricate(:workshop_invitation, workshop: workshop, member: member)
36+
37+
WorkshopInvitationMailer.attending(workshop, member, invitation).deliver_now
38+
39+
expect(email.body.encoded).to include(description)
40+
end
41+
3242
it '#invite_coach' do
3343
email_subject = "Virtual Workshop Coach Invitation #{humanize_date(workshop.date_and_time, with_time: true)}"
3444

spec/mailers/workshop_invitation_mailer_spec.rb

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -60,4 +60,14 @@
6060
expect(email.body.encoded).to match("the workshop on #{humanize_date(workshop.date_and_time, with_time: true)}")
6161
expect(email.body.encoded).to match(workshop.chapter.email)
6262
end
63+
64+
it '#attending includes the workshop description' do
65+
description = "This is a test workshop description."
66+
workshop = Fabricate(:workshop, description: description)
67+
invitation = Fabricate(:workshop_invitation, workshop: workshop, member: member)
68+
69+
WorkshopInvitationMailer.attending(workshop, member, invitation).deliver_now
70+
71+
expect(email.body.encoded).to include(description)
72+
end
6373
end

0 commit comments

Comments
 (0)