Skip to content

Commit

Permalink
chore: disable some emails to admin & user (#1568)
Browse files Browse the repository at this point in the history
* chore: disable emails to admin address (sell@)

* chore: disable submission emails to users
  • Loading branch information
anandaroop authored Feb 13, 2025
1 parent fc03aec commit f9b4610
Show file tree
Hide file tree
Showing 5 changed files with 96 additions and 94 deletions.
38 changes: 20 additions & 18 deletions app/mailers/admin_mailer.rb
Original file line number Diff line number Diff line change
Expand Up @@ -4,25 +4,27 @@ class AdminMailer < ApplicationMailer
helper :submissions, :url

def submission(submission:, user:, artist:)
@submission = submission
@user = user
@artist = artist
@utm_params =
utm_params(
source: "sendgrid",
campaign: "sell",
term: "cx",
content: "received"
)
Rails.logger.warn "[Consignments suspended] Declining to deliver admin email for Submission #{submission&.id}"

smtpapi category: %w[submission],
unique_args: {
submission_id: submission.id
}
mail(
to: Convection.config.admin_email_address,
subject: "Submission ##{@submission.id}"
) { |format| format.html { render layout: "mailer_no_footer" } }
# @submission = submission
# @user = user
# @artist = artist
# @utm_params =
# utm_params(
# source: "sendgrid",
# campaign: "sell",
# term: "cx",
# content: "received"
# )
#
# smtpapi category: %w[submission],
# unique_args: {
# submission_id: submission.id
# }
# mail(
# to: Convection.config.admin_email_address,
# subject: "Submission ##{@submission.id}"
# ) { |format| format.html { render layout: "mailer_no_footer" } }
end

def submission_approved(submission:, artist:)
Expand Down
42 changes: 22 additions & 20 deletions app/mailers/user_mailer.rb
Original file line number Diff line number Diff line change
Expand Up @@ -4,26 +4,28 @@ class UserMailer < ApplicationMailer
helper :url, :submissions, :offers

def submission_receipt(submission:, artist:)
@submission = submission
@artist = artist

@utm_params =
utm_params(
source: "sendgrid",
campaign: "sell",
term: "cx",
content: "received"
)

smtpapi category: %w[submission_receipt],
unique_args: {
submission_id: submission.id
}
mail(
to: submission.email,
subject: "Thank you for submitting your artwork to Artsy",
bcc: Convection.config.bcc_email_address
)
Rails.logger.warn "[Consignments suspended] Declining to deliver user email for Submission #{submission&.id}"

# @submission = submission
# @artist = artist
#
# @utm_params =
# utm_params(
# source: "sendgrid",
# campaign: "sell",
# term: "cx",
# content: "received"
# )
#
# smtpapi category: %w[submission_receipt],
# unique_args: {
# submission_id: submission.id
# }
# mail(
# to: submission.email,
# subject: "Thank you for submitting your artwork to Artsy",
# bcc: Convection.config.bcc_email_address
# )
end

def first_upload_reminder(submission:)
Expand Down
12 changes: 6 additions & 6 deletions spec/requests/api/submissions/update_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -125,15 +125,15 @@
expect(response.status).to eq 201
expect(@submission.reload.receipt_sent_at).to_not be_nil
emails = ActionMailer::Base.deliveries
expect(emails.length).to eq 3
expect(emails.length).to eq 1
admin_email = emails.detect { |e| e.to.include?("[email protected]") }
admin_copy = "We have received the following submission from: Jon"
expect(admin_email.html_part.body.to_s).to include(admin_copy)
expect(admin_email.text_part.body.to_s).to include(admin_copy)
expect(admin_email).to be_nil
# admin_copy = "We have received the following submission from: Jon"
# expect(admin_email.html_part.body.to_s).to include(admin_copy)
# expect(admin_email.text_part.body.to_s).to include(admin_copy)

user_email = emails.detect { |e| e.to.include?("[email protected]") }
user_copy =
"to evaluate whether we currently have a suitable market for it"
user_copy = "not accepting consignments"
expect(user_email.html_part.body.to_s).to include(user_copy)
expect(user_email.text_part.body.to_s).to include(user_copy)
end
Expand Down
20 changes: 10 additions & 10 deletions spec/requests/submission_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -51,10 +51,10 @@
expect(submission.reload.state).to eq "submitted"

emails = ActionMailer::Base.deliveries
expect(emails.length).to eq 4
expect(emails[1].to).to eq(%w[[email protected]])
expect(emails[1].subject).to include("You're Almost Done")
expect(emails[2].to).to eq(%w[[email protected]]) # sidekiq flushes everything at once
expect(emails.length).to eq 3
expect(emails[0].to).to eq(%w[[email protected]])
expect(emails[0].subject).to include("You're Almost Done")
expect(emails[1].to).to eq(%w[[email protected]]) # sidekiq flushes everything at once
expect(emails.map(&:subject)).to include(
"Artsy Consignments - complete your submission"
)
Expand Down Expand Up @@ -97,10 +97,10 @@
expect(response.status).to eq 201
expect(@submission.reload.state).to eq "submitted"
emails = ActionMailer::Base.deliveries
expect(emails.length).to eq 4
expect(emails[1].to).to eq(%w[[email protected]])
expect(emails[1].subject).to include("You're Almost Done")
expect(emails[2].to).to eq(%w[[email protected]]) # sidekiq flushes everything at once
expect(emails.length).to eq 3
expect(emails[0].to).to eq(%w[[email protected]])
expect(emails[0].subject).to include("You're Almost Done")
expect(emails[1].to).to eq(%w[[email protected]]) # sidekiq flushes everything at once
expect(emails.map(&:subject)).to include(
"Artsy Consignments - complete your submission"
)
Expand Down Expand Up @@ -190,8 +190,8 @@
expect(response.status).to eq 201
expect(submission.reload.state).to eq "submitted"
emails = ActionMailer::Base.deliveries
expect(emails.length).to eq 3
expect(emails[1].html_part.body).to include("https://new-image.jpg")
expect(emails.length).to eq 1
# expect(emails[0].html_part.body).to include("https://new-image.jpg")

# GET to retrieve the image url for the submission
get "/api/assets",
Expand Down
78 changes: 38 additions & 40 deletions spec/services/submission_service_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -328,7 +328,7 @@
.with(submission.id, "submitted")
SubmissionService.update_submission(submission, {state: "submitted"})
emails = ActionMailer::Base.deliveries
expect(emails.length).to eq 4
expect(emails.length).to eq 3
end

it "sends no reminders if the submission has images" do
Expand All @@ -338,7 +338,7 @@
Fabricate(:image, submission: submission)
SubmissionService.update_submission(submission, {state: "submitted"})
emails = ActionMailer::Base.deliveries
expect(emails.length).to eq 3
expect(emails.length).to eq 1
end

it "sends no emails if the state is not being changed" do
Expand Down Expand Up @@ -1078,22 +1078,22 @@
it "sends a receipt" do
SubmissionService.notify_user(submission.id)
emails = ActionMailer::Base.deliveries
expect(emails.length).to eq 1
expect(emails.first.html_part.body).to include(
"Our team of specialists will review your work to evaluate whether we currently have a suitable market for it. If your work is accepted, we’ll send you a sales offer and guide you in choosing the best option for selling it."
)
expect(emails.first.to).to eq(%w[[email protected]])
expect(submission.reload.receipt_sent_at).to_not be nil
expect(emails.length).to eq 0
# expect(emails.first.html_part.body).to include(
# "Our team of specialists will review your work to evaluate whether we currently have a suitable market for it. If your work is accepted, we’ll send you a sales offer and guide you in choosing the best option for selling it."
# )
# expect(emails.first.to).to eq(%w[[email protected]])
# expect(submission.reload.receipt_sent_at).to_not be nil
end

it "sends a receipt without a prompt to create an Artsy account for user submissions" do
SubmissionService.notify_user(submission.id)
emails = ActionMailer::Base.deliveries
expect(emails.length).to eq 1
expect(emails.first.html_part.body).to_not include(
"find your artwork in"
)
expect(submission.reload.receipt_sent_at).to_not be nil
expect(emails.length).to eq 0
# expect(emails.first.html_part.body).to_not include(
# "find your artwork in"
# )
# expect(submission.reload.receipt_sent_at).to_not be nil
end

it "does not send a receipt if one has already been sent" do
Expand Down Expand Up @@ -1186,10 +1186,9 @@
)
SubmissionService.notify_user(submission.id)
emails = ActionMailer::Base.deliveries
expect(emails.length).to eq 1

expect(emails.first.html_part.body).to include("find your artwork in")
expect(submission.reload.receipt_sent_at).to_not be nil
expect(emails.length).to eq 0
# expect(emails.first.html_part.body).to include("find your artwork in")
# expect(submission.reload.receipt_sent_at).to_not be nil
end

it "does not send a receipt with a prompt to create an Artsy account when config does not allow" do
Expand All @@ -1198,10 +1197,9 @@
)
SubmissionService.notify_user(submission.id)
emails = ActionMailer::Base.deliveries
expect(emails.length).to eq 1

expect(emails.first.html_part.body).to_not include("find your artwork in")
expect(submission.reload.receipt_sent_at).to_not be nil
expect(emails.length).to eq 0
# expect(emails.first.html_part.body).to_not include("find your artwork in")
# expect(submission.reload.receipt_sent_at).to_not be nil
end
end

Expand All @@ -1212,10 +1210,10 @@
.with(submission.id, "submitted")
SubmissionService.notify_admin(submission.id)
emails = ActionMailer::Base.deliveries
expect(emails.length).to eq 1
expect(emails.first.html_part.body).to include("My Artwork")
expect(emails.first.to).to eq(%w[[email protected]])
expect(submission.reload.admin_receipt_sent_at).to_not be nil
expect(emails.length).to eq 0
# expect(emails.first.html_part.body).to include("My Artwork")
# expect(emails.first.to).to eq(%w[[email protected]])
# expect(submission.reload.admin_receipt_sent_at).to_not be nil
end

it "does not send an email if one has already been sent" do
Expand Down Expand Up @@ -1256,19 +1254,19 @@
SubmissionService.deliver_submission_receipt(submission.id)
emails = ActionMailer::Base.deliveries

expect(emails.length).to eq 1
expect(emails.first.bcc).to include("[email protected]")
expect(emails.first.html_part.body).to include(
"Thank you for submitting an artwork"
)
expect(emails.first.html_part.body).to include(
"Our team of specialists will review your work to evaluate whether we currently have a suitable market for it"
)

expect(emails.first.html_part.body).to include("utm_source=sendgrid")
expect(emails.first.html_part.body).to include("utm_medium=email")
expect(emails.first.html_part.body).to include("utm_campaign=sell")
expect(emails.first.html_part.body).to include("utm_content=received")
expect(emails.length).to eq 0
# expect(emails.first.bcc).to include("[email protected]")
# expect(emails.first.html_part.body).to include(
# "Thank you for submitting an artwork"
# )
# expect(emails.first.html_part.body).to include(
# "Our team of specialists will review your work to evaluate whether we currently have a suitable market for it"
# )

# expect(emails.first.html_part.body).to include("utm_source=sendgrid")
# expect(emails.first.html_part.body).to include("utm_medium=email")
# expect(emails.first.html_part.body).to include("utm_campaign=sell")
# expect(emails.first.html_part.body).to include("utm_content=received")
end
end

Expand Down Expand Up @@ -1298,8 +1296,8 @@
Fabricate(:unprocessed_image, submission: submission)
SubmissionService.deliver_submission_notification(submission.id)
emails = ActionMailer::Base.deliveries
expect(emails.length).to eq 1
expect(emails.first.html_part.body).to include("My Artwork")
expect(emails.length).to eq 0
# expect(emails.first.html_part.body).to include("My Artwork")
end
end
end

0 comments on commit f9b4610

Please sign in to comment.