Skip to content

Commit 389c02b

Browse files
Merge pull request #312 from travis-ci/credit_card_expiration_am
Credit card expiration email
2 parents 12f2e56 + 11bc069 commit 389c02b

File tree

3 files changed

+32
-0
lines changed

3 files changed

+32
-0
lines changed

lib/travis/addons/plan/mailer/plan_mailer.rb

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,15 @@ def plan_change_reminder(receivers, owner, params)
5858
mail(from: from, to: receivers, reply_to: reply_to, subject: subject, template_path: 'plan_mailer')
5959
end
6060

61+
def credit_card_expiration_reminder(receivers, owner, params)
62+
@owner = owner
63+
@payment_details_url = payment_details_url(owner)
64+
@plan = params.fetch(:plan, '').to_s
65+
@cc_expiration_date = params.fetch(:cc_expiration_date, '')
66+
subject = 'Your credit card expires soon'
67+
mail(from: from, to: receivers, reply_to: reply_to, subject: subject, template_path: 'plan_mailer')
68+
end
69+
6170
private
6271

6372
def from
@@ -105,6 +114,11 @@ def signup_url(owner)
105114
"https://#{config.host}/organizations/#{owner[:login]}"
106115
end
107116

117+
def payment_details_url(owner)
118+
return "https://#{config.host}/account/#{config.payment_details_path}" if user?(owner)
119+
"https://#{config.host}/organizations/#{owner[:login]}/#{config.payment_details_path}"
120+
end
121+
108122
def filter_receivers(receivers)
109123
receivers = receivers.flatten.uniq.compact
110124
receivers.reject { |email| email.include?("[") || email.include?(" ") || email.ends_with?(".home") }
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
<!-- Credit Card Expiration Reminder Section -->
2+
<tr>
3+
<td id="plan-message-section" align="center" valign="top" style="padding-bottom: 40px;">
4+
<h1 id="plan-message-header">
5+
Hi!
6+
</h1>
7+
<p id="plan-message" style="margin: 0px; font-size: 18px; margin-bottom: 10px;">
8+
The credit card on file is expiring on <%= @cc_expiration_date %>.
9+
</p>
10+
<p id="plan-message" style="margin: 0px; font-size: 18px; margin-bottom: 10px;">
11+
Please verify or update your payment details in <a href="<%= @payment_details_url %>"><%= @payment_details_url %></a> in order to continue using Travis CI.
12+
</p>
13+
<p id="plan-message" style="margin: 0px; font-size: 18px; margin-bottom: 10px;">
14+
Documentation: <%= link_to('https://app.travis-ci.com/account/plan', 'https://app.travis-ci.com/account/plan', id: 'documentation-link') %>
15+
</p>
16+
</td>
17+
</tr>

lib/travis/tasks/config.rb

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,7 @@ def http_basic_auth
5252
plan_path: 'plan',
5353
purchase_path: 'purchase',
5454
settings_path: 'settings',
55+
payment_details_path: 'payment-details',
5556
intercom: { token: 'token' }
5657

5758

0 commit comments

Comments
 (0)