diff --git a/app/components/donation/credit-card.js b/app/components/donation/credit-card.js index 6e63db185..192bd33ef 100644 --- a/app/components/donation/credit-card.js +++ b/app/components/donation/credit-card.js @@ -3,7 +3,7 @@ import Ember from 'ember'; const { Component, computed, - computed: { and, not, or }, + computed: { and, not }, inject: { service } } = Ember; @@ -20,10 +20,8 @@ export default Component.extend({ */ stripe: service(), - cardInvalid: not('cardValid'), cardValid: and('isCardNumberValid', 'isCVCValid', 'isExpiryValid'), - - isBusyOrInvalid: or('isBusy', 'cardInvalid'), + isInvalid: not('cardValid'), date: computed('month', 'year', function() { let month = this.get('month'); @@ -81,7 +79,6 @@ export default Component.extend({ actions: { submit() { - this.set('isSubmitting', true); let cardAttrs = this.getProperties('cvc', 'cardNumber', 'year', 'month'); let onSubmit = this.get('submit'); diff --git a/app/styles/app.scss b/app/styles/app.scss index 51adbcd7e..2583f44cc 100644 --- a/app/styles/app.scss +++ b/app/styles/app.scss @@ -36,6 +36,7 @@ @import "components/comment-item"; @import "components/create-comment-form"; @import "components/donation/card-item"; +@import "components/donation/donation-container"; @import "components/donations/donation-progress"; @import "components/donations/donation-status"; @import "components/donation-goal"; diff --git a/app/styles/components/donation/donation-container.scss b/app/styles/components/donation/donation-container.scss new file mode 100644 index 000000000..62ee4be01 --- /dev/null +++ b/app/styles/components/donation/donation-container.scss @@ -0,0 +1,10 @@ +.donation-container { + .loading-indicator { + text-align: center; + + div { + display: inline-block; + vertical-align: middle; + } + } +} diff --git a/app/templates/components/donation/credit-card.hbs b/app/templates/components/donation/credit-card.hbs index 9f781a467..2f931ff7a 100644 --- a/app/templates/components/donation/credit-card.hbs +++ b/app/templates/components/donation/credit-card.hbs @@ -17,7 +17,6 @@
-
- -{{#unless isBusy}} - {{!validation errors can be passed in from parent, using a block}} - {{yield}} -{{/unless}} + +{{!validation errors can be passed in from parent, using a block}} +{{yield}} + diff --git a/app/templates/components/donation/donation-container.hbs b/app/templates/components/donation/donation-container.hbs index 458dd032a..0af816eae 100644 --- a/app/templates/components/donation/donation-container.hbs +++ b/app/templates/components/donation/donation-container.hbs @@ -11,21 +11,27 @@

-{{#if card}} - {{donation/card-item card=card}} +{{#if isBusy}} +
+
+
Processing...
+
{{else}} - {{#donation/credit-card isBusy=isBusy submit=(action saveAndDonate)}} + {{#if card}} + {{donation/card-item card=card}} + {{else}} + {{#donation/credit-card submit=(action saveAndDonate)}} + {{!show errors}} + {{yield}} + {{/donation/credit-card}} + {{/if}} + + {{#if card}} + {{!show errors}} {{yield}} - {{/donation/credit-card}} -{{/if}} - -{{#if card}} - - {{!show errors}} - {{yield}} + {{/if}} {{/if}} -