jam-cloud/web/app/assets/javascripts/react-components/stores/SubscriptionStore.js.coffee

48 lines
1.2 KiB
CoffeeScript
Raw Permalink Normal View History

2020-11-21 22:14:37 +00:00
$ = jQuery
context = window
logger = context.JK.logger
@SubscriptionStore = Reflux.createStore(
{
listenables: @SubscriptionActions
subscription: null
init: ->
this.listenTo(context.AppStore, this.onAppInit)
onAppInit: (@app) ->
onUpdateSubscription: (subscription) ->
2020-11-30 00:24:28 +00:00
console.log("refreshing subscription info")
2020-11-21 22:14:37 +00:00
rest.getSubscription().done (subscription) =>
@subscription = subscription
console.log("subscription store update", subscription)
@trigger(@subscription)
.fail(() =>
@app.layout.notify({
2020-11-30 00:24:28 +00:00
title: "Unable to fetch subscription status",
2020-11-21 22:14:37 +00:00
text: "Please contact support@jamkazam.com"
})
)
2020-11-30 00:24:28 +00:00
onForceUpdate: (subscription) ->
@subscription = subscription
@trigger(@subscription)
2020-11-21 22:14:37 +00:00
onCancelSubscription: () ->
rest.cancelSubscription().done((result) =>
@subscription = {}
console.log("cancelled successfully")
@trigger(@subscription)
)
.fail((jqXHR) =>
@app.layout.notify({
title: "Subscription Cancelled",
text: "Thanks for being a supporter!"
})
)
}
)