summaryrefslogtreecommitdiff
path: root/app/assets/javascripts/star.js.coffee
diff options
context:
space:
mode:
authorDouwe Maan <douwe@gitlab.com>2015-12-24 21:19:17 +0100
committerDouwe Maan <douwe@gitlab.com>2015-12-24 21:19:17 +0100
commitef8b1dbf21a90f719c2e8b8c052e16f6107193c6 (patch)
tree6138768916e7b65a7955e8e8c4ed1eb1541e8ced /app/assets/javascripts/star.js.coffee
parent32543f3bd94b1b66dd949b0fb1f57bff3732eb45 (diff)
parente3befaed82f9aa52c79a1d4c437fe4fc63f8d07a (diff)
downloadgitlab-ce-ef8b1dbf21a90f719c2e8b8c052e16f6107193c6.tar.gz
Merge branch 'master' into milestone-ref
Diffstat (limited to 'app/assets/javascripts/star.js.coffee')
-rw-r--r--app/assets/javascripts/star.js.coffee22
1 files changed, 22 insertions, 0 deletions
diff --git a/app/assets/javascripts/star.js.coffee b/app/assets/javascripts/star.js.coffee
new file mode 100644
index 00000000000..d849b2e7950
--- /dev/null
+++ b/app/assets/javascripts/star.js.coffee
@@ -0,0 +1,22 @@
+class @Star
+ constructor: ->
+ $('.project-home-panel .toggle-star').on('ajax:success', (e, data, status, xhr) ->
+ $this = $(this)
+ $starSpan = $this.find('span')
+ $starIcon = $this.find('i')
+
+ toggleStar = (isStarred) ->
+ $this.parent().find('span.count').text data.star_count
+ if isStarred
+ $starSpan.removeClass('starred').text 'Star'
+ $starIcon.removeClass('fa-star').addClass 'fa-star-o'
+ else
+ $starSpan.addClass('starred').text 'Unstar'
+ $starIcon.removeClass('fa-star-o').addClass 'fa-star'
+ return
+
+ toggleStar $starSpan.hasClass('starred')
+ return
+ ).on 'ajax:error', (e, xhr, status, error) ->
+ new Flash('Star toggle failed. Try again later.', 'alert')
+ return \ No newline at end of file