summaryrefslogtreecommitdiff
path: root/app/assets/javascripts/subscription.js.coffee
blob: afc17338b26ed4baefe61af1d83ce97ed45fcc40 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
class @Subscription
  constructor: (@url, container) ->
    @subscribe_button = $(container).find(".subscribe-button")
    @subscription_status = $(container).find(".subscription-status")
    @subscribe_button.unbind("click").click(@toggleSubscription)

  toggleSubscription: (event) =>
    btn = $(event.currentTarget)
    action = btn.find("span").text()
    current_status = @subscription_status.attr("data-status")
    btn.prop("disabled", true)

    $.post @url, =>
      btn.prop("disabled", false)
      status = if current_status == "subscribed" then "unsubscribed" else "subscribed"
      @subscription_status.attr("data-status", status)
      action = if status == "subscribed" then "Unsubscribe" else "Subscribe"
      btn.find("span").text(action)
      @subscription_status.find(">div").toggleClass("hidden")