diff options
author | Phil Hughes <me@iamphill.com> | 2016-10-20 10:54:33 +0300 |
---|---|---|
committer | Phil Hughes <me@iamphill.com> | 2016-10-20 10:54:33 +0300 |
commit | 29645f06e7889fe85bb155abaa0f361f8680311b (patch) | |
tree | 6dc442e40471790e0b74babc165618b4e095a068 /app/assets/javascripts/subscription.js | |
parent | 344154e9068945af2874d6cb253457fb90fef3f3 (diff) |
Hides/shows the boards sidebar
Rather than constructing & then deconstructing, we know just hide & show
the sidebar. This is done so we dont' have a memory leak on the frontend
with objects getting created.
Diffstat (limited to 'app/assets/javascripts/subscription.js')
-rw-r--r-- | app/assets/javascripts/subscription.js | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/app/assets/javascripts/subscription.js b/app/assets/javascripts/subscription.js index bfef9532d2b..bfa3663bca3 100644 --- a/app/assets/javascripts/subscription.js +++ b/app/assets/javascripts/subscription.js @@ -5,10 +5,10 @@ function Subscription(container) { this.toggleSubscription = bind(this.toggleSubscription, this); var $container; - $container = $(container); - this.url = $container.attr('data-url'); - this.subscribe_button = $container.find('.js-subscribe-button'); - this.subscription_status = $container.find('.subscription-status'); + this.$container = $(container); + this.url = this.$container.attr('data-url'); + this.subscribe_button = this.$container.find('.js-subscribe-button'); + this.subscription_status = this.$container.find('.subscription-status'); this.subscribe_button.unbind('click').click(this.toggleSubscription); } @@ -18,12 +18,17 @@ action = btn.find('span').text(); current_status = this.subscription_status.attr('data-status'); btn.addClass('disabled'); + + if ($('html').hasClass('issue-boards-page')) { + this.url = this.$container.attr('data-url'); + } + return $.post(this.url, (function(_this) { return function() { var status; btn.removeClass('disabled'); - if ($('body').data('page') === 'projects:boards:show') { + if ($('html').hasClass('issue-boards-page')) { Vue.set(gl.issueBoards.BoardsStore.detail.issue, 'subscribed', !gl.issueBoards.BoardsStore.detail.issue.subscribed); } else { status = current_status === 'subscribed' ? 'unsubscribed' : 'subscribed'; |