summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJacob Schatz <jacobschatz@Jacobs-MBP.fios-router.home>2016-03-14 22:08:07 -0400
committerJacob Schatz <jacobschatz@Jacobs-MBP.fios-router.home>2016-03-25 08:07:57 -0400
commited517c5ab77c09fddb980d3b2933ea1488a449b0 (patch)
tree78893c34b34ce296485b4d34ffd18053cccf1d15
parentfdb703d790e1eb8e91bed1ffb2bba202d80708d3 (diff)
downloadgitlab-ce-ed517c5ab77c09fddb980d3b2933ea1488a449b0.tar.gz
Removes bugs with selection.
Adds deselect still a WIP.
-rw-r--r--app/assets/javascripts/gl_dropdown.js.coffee13
-rw-r--r--app/views/shared/issuable/_sidebar.html.haml3
2 files changed, 13 insertions, 3 deletions
diff --git a/app/assets/javascripts/gl_dropdown.js.coffee b/app/assets/javascripts/gl_dropdown.js.coffee
index f6de0136316..92d44321fcb 100644
--- a/app/assets/javascripts/gl_dropdown.js.coffee
+++ b/app/assets/javascripts/gl_dropdown.js.coffee
@@ -263,15 +263,24 @@ class GitLabDropdown
rowClicked: (el) ->
fieldName = @options.fieldName
- field = @dropdown.parent().find("input[name='#{fieldName}']")
+ field = @dropdown.parent().find("input[name='#{fieldName}']")
+ selectedIndex = el.parent().index()
+ if @renderedData
+ selectedObject = @renderedData[selectedIndex]
+ value = if @options.id then @options.id(selectedObject, el) else selectedObject.id
+ field = @dropdown.parent().find("input[name='#{fieldName}'][value='#{value}']")
if el.hasClass(ACTIVE_CLASS)
- field.remove()
+ if @options.multiSelect
+ console.log field.val(), value
+ else
+ field.remove()
else
fieldName = @options.fieldName
selectedIndex = el.parent().index()
if @renderedData
selectedObject = @renderedData[selectedIndex]
+ selectedObject.selected = true
value = if @options.id then @options.id(selectedObject, el) else selectedObject.id
if !value?
diff --git a/app/views/shared/issuable/_sidebar.html.haml b/app/views/shared/issuable/_sidebar.html.haml
index b92c7aaf0e4..0f0d0e4234a 100644
--- a/app/views/shared/issuable/_sidebar.html.haml
+++ b/app/views/shared/issuable/_sidebar.html.haml
@@ -85,8 +85,9 @@
- else
.light None
.selectbox.hide-collapsed
+ = f.hidden_field 'label_name', value: issuable.labels.map(&:id).join(',')
.dropdown
- %button.dropdown-menu-toggle.js-label-select.js-multiselect{type: "button", data: {toggle: "dropdown", field_name: "label_name", show_no: "true", show_any: "true", selected: issuable.label_names.join(","), project_id: (@project.id if @project), issue_update: namespace_project_issue_path(@project.namespace, @project, issuable.id, :json), labels: (namespace_project_labels_path(@project.namespace, @project, :json) if @project)}}
+ %button.dropdown-menu-toggle.js-label-select.js-multiselect{type: "button", data: {toggle: "dropdown", field_name: "issue[label_name]", show_no: "true", show_any: "true", selected: issuable.label_names.join(","), project_id: (@project.id if @project), issue_update: namespace_project_issue_path(@project.namespace, @project, issuable.id, :json), labels: (namespace_project_labels_path(@project.namespace, @project, :json) if @project)}}
%span.dropdown-toggle-text
Label
= icon('chevron-down')