summaryrefslogtreecommitdiff
path: root/app
diff options
context:
space:
mode:
authorPhil Hughes <me@iamphill.com>2016-06-16 12:53:58 +0100
committerPhil Hughes <me@iamphill.com>2016-06-18 21:49:20 +0100
commit68c9981013b1aa87dde7421ffe5db0a342d55ee8 (patch)
tree147a9af9a77e0606649923c5a1e421989aca8b45 /app
parent3c8c9129654d49281024bfb444d95e5d7c35bcbd (diff)
downloadgitlab-ce-68c9981013b1aa87dde7421ffe5db0a342d55ee8.tar.gz
Correctly adds commit ID into dropdown
Removes un-used method Fixes other Ruby issues
Diffstat (limited to 'app')
-rw-r--r--app/assets/javascripts/project.js.coffee2
-rw-r--r--app/controllers/projects_controller.rb14
-rw-r--r--app/helpers/application_helper.rb16
-rw-r--r--app/views/shared/_ref_switcher.html.haml3
4 files changed, 10 insertions, 25 deletions
diff --git a/app/assets/javascripts/project.js.coffee b/app/assets/javascripts/project.js.coffee
index 3b608cbd2a0..54c539d5f9b 100644
--- a/app/assets/javascripts/project.js.coffee
+++ b/app/assets/javascripts/project.js.coffee
@@ -61,6 +61,8 @@ class @Project
data: (term, callback) ->
$.ajax(
url: $dropdown.data('refs-url')
+ data:
+ ref: $dropdown.data('ref')
).done (refs) ->
callback(refs)
selectable: true
diff --git a/app/controllers/projects_controller.rb b/app/controllers/projects_controller.rb
index 5155ae1b104..e2311971f70 100644
--- a/app/controllers/projects_controller.rb
+++ b/app/controllers/projects_controller.rb
@@ -252,20 +252,18 @@ class ProjectsController < Projects::ApplicationController
end
def refs
- repository = @project.repository
- tags = VersionSorter.rsort(repository.tag_names)
-
options = {
- 'Branches' => repository.branch_names,
+ 'Branches' => @repository.branch_names,
}
- if tags.any?
- options['Tags'] = tags
+ unless @repository.tag_count.zero?
+ options['Tags'] = VersionSorter.rsort(@repository.tag_names)
end
# If reference is commit id - we should add it to branch/tag selectbox
- if @ref && !options.flatten.include?(@ref) && @ref =~ /\A[0-9a-zA-Z]{6,52}\z/
- options['Commits'] = @ref
+ ref = params[:ref]
+ if ref && !options.flatten.include?(ref) && ref =~ /\A[0-9a-zA-Z]{6,52}\z/
+ options['Commits'] = [ref]
end
render json: options.to_json
diff --git a/app/helpers/application_helper.rb b/app/helpers/application_helper.rb
index 439b015b3b8..82421d74de9 100644
--- a/app/helpers/application_helper.rb
+++ b/app/helpers/application_helper.rb
@@ -101,22 +101,6 @@ module ApplicationHelper
'Never'
end
- def grouped_options_refs
- repository = @project.repository
-
- options = [
- ['Branches', repository.branch_names],
- ['Tags', VersionSorter.rsort(repository.tag_names)]
- ]
-
- # If reference is commit id - we should add it to branch/tag selectbox
- if @ref && !options.flatten.include?(@ref) && @ref =~ /\A[0-9a-zA-Z]{6,52}\z/
- options << ['Commit', [@ref]]
- end
-
- grouped_options_for_select(options, @ref || @project.default_branch)
- end
-
# Define whenever show last push event
# with suggestion to create MR
def show_last_push_widget?(event)
diff --git a/app/views/shared/_ref_switcher.html.haml b/app/views/shared/_ref_switcher.html.haml
index b474ed00777..947968074e1 100644
--- a/app/views/shared/_ref_switcher.html.haml
+++ b/app/views/shared/_ref_switcher.html.haml
@@ -1,3 +1,4 @@
+- dropdown_toggle_text = @ref || @project.default_branch
= form_tag switch_namespace_project_refs_path(@project.namespace, @project), method: :get, class: "project-refs-form" do
= hidden_field_tag :destination, destination
- if defined?(path)
@@ -5,7 +6,7 @@
- @options && @options.each do |key, value|
= hidden_field_tag key, value, id: nil
.dropdown
- = dropdown_toggle @ref || @project.default_branch, { toggle: "dropdown", selected: @ref || @project.default_branch, refs_url: refs_namespace_project_path(@project.namespace, @project) }, { toggle_class: "js-project-refs-dropdown" }
+ = dropdown_toggle dropdown_toggle_text, { toggle: "dropdown", selected: @ref || @project.default_branch, ref: @ref, refs_url: refs_namespace_project_path(@project.namespace, @project) }, { toggle_class: "js-project-refs-dropdown" }
.dropdown-menu.dropdown-menu-selectable{ class: ("dropdown-menu-align-right" if local_assigns[:align_right]) }
= dropdown_title "Switch branch/tag"
= dropdown_filter "Search branches and tags"