mirror of
https://github.com/openfoodfoundation/openfoodnetwork
synced 2026-01-24 20:36:49 +00:00
Adding message about having no saved cards to account/cards UI
This commit is contained in:
@@ -12,6 +12,10 @@
|
||||
}
|
||||
}
|
||||
|
||||
.saved_cards, .no_cards {
|
||||
margin-bottom: 1em;
|
||||
}
|
||||
|
||||
.new_card {
|
||||
opacity: 0;
|
||||
-webkit-transition: opacity 0.4s linear;
|
||||
|
||||
@@ -2,11 +2,11 @@
|
||||
.credit_cards{"ng-controller" => "CreditCardsCtrl"}
|
||||
.row
|
||||
.small-12.medium-6.columns
|
||||
%span{ ng: { hide: 'savedCreditCards.length > 0' } }
|
||||
|
||||
%h3= t(:saved_cards)
|
||||
.saved_cards{ ng: { show: 'savedCreditCards.length > 0' } }
|
||||
%h3= t(:saved_cards)
|
||||
= render 'saved_cards'
|
||||
.no_cards{ ng: { hide: 'savedCreditCards.length > 0' } }
|
||||
= t(:you_have_no_saved_cards)
|
||||
%button.button.primary{ ng: { click: 'showForm()', hide: 'CreditCard.visible' } }
|
||||
= t(:add_a_card)
|
||||
|
||||
|
||||
@@ -10,4 +10,4 @@
|
||||
%td.expiry{ ng: { bind: '::card.expiry' } }
|
||||
%td.actions
|
||||
%a{"rel" => "nofollow", "data-method" => "delete", "ng-href" => "{{card.delete_link}}" }
|
||||
Delete
|
||||
= t(:delete)
|
||||
|
||||
@@ -872,6 +872,7 @@ en:
|
||||
saved_cards: Saved cards
|
||||
add_a_card: Add a Card
|
||||
add_card: Add Card
|
||||
you_have_no_saved_cards: You haven't saved any cards yet
|
||||
saving_credit_card: Saving credit card...
|
||||
card_has_been_removed: "Your card has been removed (number: %{number})"
|
||||
|
||||
@@ -1536,6 +1537,7 @@ Please follow the instructions there to make your enterprise visible on the Open
|
||||
edit_order_cycle: "Edit Order Cycle"
|
||||
roles: "Roles"
|
||||
update: "Update"
|
||||
delete: Delete
|
||||
add_producer_property: "Add producer property"
|
||||
in_progress: "In Progress"
|
||||
started_at: "Started at"
|
||||
|
||||
@@ -4,10 +4,16 @@ feature "Credit Cards", js: true do
|
||||
include AuthenticationWorkflow
|
||||
describe "as a logged in user" do
|
||||
let(:user) { create(:user) }
|
||||
let!(:card) { create(:credit_card, user_id: user.id) }
|
||||
let!(:card) { create(:credit_card, user_id: user.id, gateway_customer_profile_id: 'cus_AZNMJ') }
|
||||
|
||||
before do
|
||||
quick_login_as user
|
||||
|
||||
stub_request(:get, "https://api.stripe.com/v1/customers/cus_AZNMJ").
|
||||
to_return(:status => 200, :body => JSON.generate({id: "cus_AZNMJ"}))
|
||||
|
||||
stub_request(:delete, "https://api.stripe.com/v1/customers/cus_AZNMJ").
|
||||
to_return(:status => 200, :body => JSON.generate({deleted: true, id: "cus_AZNMJ"}))
|
||||
end
|
||||
|
||||
it "lists saved cards, shows interface for adding new cards" do
|
||||
@@ -22,10 +28,17 @@ feature "Credit Cards", js: true do
|
||||
expect(page).to have_content card.last_digits
|
||||
end
|
||||
|
||||
# Shows the interface for adding a card
|
||||
click_button I18n.t(:add_a_card)
|
||||
expect(page).to have_field 'first_name'
|
||||
expect(page).to have_field 'card_number'
|
||||
expect(page).to have_field 'card_month'
|
||||
|
||||
# Allows deletion of cards
|
||||
click_link I18n.t(:delete)
|
||||
|
||||
expect(page).to have_content I18n.t(:card_has_been_removed, number: "x-#{card.last_digits}")
|
||||
expect(page).to have_content I18n.t(:you_have_no_saved_cards)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user