- Adds the following fields to the subscription payment form: - Cardholder Name - Country - Postal Code - Address Line 1 - City - State or Province - Stripe recommends Cardholder Name & Country for verification; Cardholder Name, Country, and State/Province for US/Canada selections are required fields - All fields are passed to Stripe for verification on submit - Fields are also captured on the customer record in Stripe, under Billing Details
31 lines
686 B
JavaScript
31 lines
686 B
JavaScript
import discourseComputed from "discourse-common/utils/decorators";
|
|
import { ajax } from "discourse/lib/ajax";
|
|
import EmberObject from "@ember/object";
|
|
|
|
const Subscription = EmberObject.extend({
|
|
@discourseComputed("status")
|
|
canceled(status) {
|
|
return status === "canceled";
|
|
},
|
|
|
|
save() {
|
|
const data = {
|
|
source: this.source,
|
|
plan: this.plan,
|
|
promo: this.promo,
|
|
cardholder_name: this.cardholderName,
|
|
cardholder_address: this.cardholderAddress,
|
|
};
|
|
|
|
return ajax("/s/create", { method: "post", data });
|
|
},
|
|
});
|
|
|
|
Subscription.reopenClass({
|
|
show(id) {
|
|
return ajax(`/s/${id}`, { method: "get" });
|
|
},
|
|
});
|
|
|
|
export default Subscription;
|