summaryrefslogtreecommitdiff
path: root/app/assets/javascripts/merge_request_tabs.js.coffee
diff options
context:
space:
mode:
authorDouwe Maan <douwe@gitlab.com>2015-12-08 13:04:24 +0100
committerDouwe Maan <douwe@gitlab.com>2015-12-08 13:11:41 +0100
commit1567572e79bbeace4a68f00c01e64ed0dad9106a (patch)
tree436fd256d1328f5810c58e50c5ae79bc37b989a0 /app/assets/javascripts/merge_request_tabs.js.coffee
parenta17ba43bfd05cd49bab18d6c7f80226004870bc2 (diff)
downloadgitlab-ce-1567572e79bbeace4a68f00c01e64ed0dad9106a.tar.gz
Add Builds tab to MR detail page
Diffstat (limited to 'app/assets/javascripts/merge_request_tabs.js.coffee')
-rw-r--r--app/assets/javascripts/merge_request_tabs.js.coffee22
1 files changed, 21 insertions, 1 deletions
diff --git a/app/assets/javascripts/merge_request_tabs.js.coffee b/app/assets/javascripts/merge_request_tabs.js.coffee
index 593a8f42130..69a12fdd045 100644
--- a/app/assets/javascripts/merge_request_tabs.js.coffee
+++ b/app/assets/javascripts/merge_request_tabs.js.coffee
@@ -43,6 +43,7 @@
#
class @MergeRequestTabs
diffsLoaded: false
+ buildsLoaded: false
commitsLoaded: false
constructor: (@opts = {}) ->
@@ -54,6 +55,12 @@ class @MergeRequestTabs
bindEvents: ->
$(document).on 'shown.bs.tab', '.merge-request-tabs a[data-toggle="tab"]', @tabShown
+ $(document).on 'click', '.js-show-tab', @showTab
+
+ showTab: (event) =>
+ event.preventDefault()
+
+ @activateTab $(event.target).data('action')
tabShown: (event) =>
$target = $(event.target)
@@ -61,6 +68,8 @@ class @MergeRequestTabs
if action == 'commits'
@loadCommits($target.attr('href'))
+ else if action == 'builds'
+ @loadBuilds($target.attr('href'))
else if action == 'diffs'
@loadDiff($target.attr('href'))
@@ -101,7 +110,7 @@ class @MergeRequestTabs
action = 'notes' if action == 'show'
# Remove a trailing '/commits' or '/diffs'
- new_state = @_location.pathname.replace(/\/(commits|diffs)(\.html)?\/?$/, '')
+ new_state = @_location.pathname.replace(/\/(commits|builds|diffs)(\.html)?\/?$/, '')
# Append the new action if we're on a tab other than 'notes'
unless action == 'notes'
@@ -129,6 +138,17 @@ class @MergeRequestTabs
@commitsLoaded = true
@scrollToElement("#commits")
+ loadBuilds: (source) ->
+ return if @buildsLoaded
+
+ @_get
+ url: "#{source}.json"
+ success: (data) =>
+ document.getElementById('builds').innerHTML = data.html
+ $('.js-timeago').timeago()
+ @buildsLoaded = true
+ @scrollToElement("#builds")
+
loadDiff: (source) ->
return if @diffsLoaded