diff options
author | Phil Hughes <me@iamphill.com> | 2016-03-23 19:44:09 +0300 |
---|---|---|
committer | Phil Hughes <me@iamphill.com> | 2016-03-29 13:57:04 +0300 |
commit | 7ff6af19cc2d0f300a184de3887e4e5163bc9a00 (patch) | |
tree | 0a27ae9bf8b185ae657c7624aec31ad94f23453f /app/assets/javascripts/gl_dropdown.js.coffee | |
parent | f4238634d3a2661ef5998d3c0df6a6fb90174013 (diff) |
Dropdown bug fixes
Added back upcoming to milestone filter
Fixed bug that would cause the currently selected value to disappear on filters
Fixed bug that throw an error when filtering by upcoming when there is only a milestone in the past
Diffstat (limited to 'app/assets/javascripts/gl_dropdown.js.coffee')
-rw-r--r-- | app/assets/javascripts/gl_dropdown.js.coffee | 17 |
1 files changed, 12 insertions, 5 deletions
diff --git a/app/assets/javascripts/gl_dropdown.js.coffee b/app/assets/javascripts/gl_dropdown.js.coffee index 2b56ab2e6de..b03a95a80e8 100644 --- a/app/assets/javascripts/gl_dropdown.js.coffee +++ b/app/assets/javascripts/gl_dropdown.js.coffee @@ -145,11 +145,10 @@ class GitLabDropdown selector = ".dropdown-page-one .dropdown-content a" @dropdown.on "click", selector, (e) -> - e.preventDefault() - self.rowClicked $(@) + selected = self.rowClicked $(@) if self.options.clicked - self.options.clicked.call(@,e) + self.options.clicked(selected) toggleLoading: -> $('.dropdown-menu', @dropdown).toggleClass LOADING_CLASS @@ -288,6 +287,10 @@ class GitLabDropdown if el.hasClass(ACTIVE_CLASS) el.removeClass(ACTIVE_CLASS) field.remove() + + # Toggle the dropdown label + if @options.toggleLabel + $(@el).find(".dropdown-toggle-text").text @options.toggleLabel else fieldName = @options.fieldName selectedIndex = el.parent().index() @@ -304,7 +307,7 @@ class GitLabDropdown @dropdown.parent().find("input[name='#{fieldName}']").remove() # Toggle active class for the tick mark - el.toggleClass "is-active" + el.addClass ACTIVE_CLASS # Toggle the dropdown label if @options.toggleLabel @@ -313,11 +316,15 @@ class GitLabDropdown if !field.length # Create hidden input for form input = "<input type='hidden' name='#{fieldName}' value='#{value}' />" - if @options.inputId? + if @options.inputId? input = $(input) .attr('id', @options.inputId) @dropdown.before input + @dropdown.parent().find("input[name='#{fieldName}']").val value + + return selectedObject + selectFirstRow: -> selector = '.dropdown-content li:first-child a' if @dropdown.find(".dropdown-toggle-page").length |