set the dollar amount
This commit is contained in:
parent
1074d84901
commit
b0a4665bf4
|
@ -2,10 +2,16 @@ import computed from "ember-addons/ember-computed-decorators";
|
||||||
import { ajax } from "discourse/lib/ajax";
|
import { ajax } from "discourse/lib/ajax";
|
||||||
|
|
||||||
const Plan = Discourse.Model.extend({
|
const Plan = Discourse.Model.extend({
|
||||||
@computed("amount")
|
amountDollars: Ember.computed("amount", {
|
||||||
amountDollars(amount) {
|
get() {
|
||||||
return parseFloat(amount / 100).toFixed(2);
|
return parseFloat(this.get("amount") / 100).toFixed(2);
|
||||||
},
|
},
|
||||||
|
set(key, value) {
|
||||||
|
const decimal = parseFloat(value) * 100;
|
||||||
|
this.set("amount", decimal);
|
||||||
|
return value;
|
||||||
|
}
|
||||||
|
}),
|
||||||
|
|
||||||
@computed("amountDollars", "currency", "interval")
|
@computed("amountDollars", "currency", "interval")
|
||||||
subscriptionRate(amountDollars, currency, interval) {
|
subscriptionRate(amountDollars, currency, interval) {
|
||||||
|
|
|
@ -22,7 +22,7 @@
|
||||||
</p>
|
</p>
|
||||||
<p>
|
<p>
|
||||||
<label for="amount">{{i18n 'discourse_patrons.admin.plans.plan.amount'}}</label>
|
<label for="amount">{{i18n 'discourse_patrons.admin.plans.plan.amount'}}</label>
|
||||||
{{input type="text" name="name" value=model.plan.amount disabled=planFieldDisabled}}
|
{{input type="text" name="name" value=model.plan.amountDollars disabled=planFieldDisabled}}
|
||||||
</p>
|
</p>
|
||||||
<p>
|
<p>
|
||||||
<label for="trial">
|
<label for="trial">
|
||||||
|
|
|
@ -4,7 +4,7 @@ QUnit.module("discourse-patrons:model:plan");
|
||||||
|
|
||||||
QUnit.test("subscriptionRate", assert => {
|
QUnit.test("subscriptionRate", assert => {
|
||||||
const plan = Plan.create({
|
const plan = Plan.create({
|
||||||
amount: 2399,
|
amount: "2399",
|
||||||
currency: 'aud',
|
currency: 'aud',
|
||||||
interval: 'month'
|
interval: 'month'
|
||||||
});
|
});
|
||||||
|
@ -22,6 +22,16 @@ QUnit.test("amountDollars", assert => {
|
||||||
assert.equal(
|
assert.equal(
|
||||||
plan.get("amountDollars"),
|
plan.get("amountDollars"),
|
||||||
23.99,
|
23.99,
|
||||||
"it returns the formatted amount"
|
"it returns the formatted dollar amount"
|
||||||
|
);
|
||||||
|
});
|
||||||
|
|
||||||
|
QUnit.test("amount", assert => {
|
||||||
|
const plan = Plan.create({ amountDollars: "22.12" });
|
||||||
|
|
||||||
|
assert.equal(
|
||||||
|
plan.get("amount"),
|
||||||
|
2212,
|
||||||
|
"it returns the cents amount"
|
||||||
);
|
);
|
||||||
});
|
});
|
||||||
|
|
Loading…
Reference in New Issue