diff options
author | Jacob Schatz <jschatz1@gmail.com> | 2016-03-22 19:45:25 +0000 |
---|---|---|
committer | Jacob Schatz <jschatz1@gmail.com> | 2016-03-22 19:45:25 +0000 |
commit | 5b2ce9adb46d85fe00bcd0ac4e174aabb990c485 (patch) | |
tree | 6f7edf6b34229aa6972be2bbddaa134f809fea64 | |
parent | 4896d49a25e9b96f50a52d1dc674efe730fcf1ac (diff) | |
parent | 07da8651132e2b622977039c170463a57a209a47 (diff) | |
download | gitlab-ce-5b2ce9adb46d85fe00bcd0ac4e174aabb990c485.tar.gz |
Merge branch 'label-dropdown-errors' into 'master'
Shows error messages when trying to create label in dropdown menu
Closes #14495
![Screen_Shot_2016-03-22_at_14.46.10](/uploads/cdcaa51f4d41237f8027efbd0f894bcd/Screen_Shot_2016-03-22_at_14.46.10.png)
See merge request !3345
-rw-r--r-- | app/assets/javascripts/api.js.coffee | 2 | ||||
-rw-r--r-- | app/assets/javascripts/labels_select.js.coffee | 12 | ||||
-rw-r--r-- | app/assets/stylesheets/pages/labels.scss | 7 | ||||
-rw-r--r-- | app/views/shared/issuable/_label_dropdown.html.haml | 1 |
4 files changed, 21 insertions, 1 deletions
diff --git a/app/assets/javascripts/api.js.coffee b/app/assets/javascripts/api.js.coffee index 2ddf8612db3..f3ed9a66715 100644 --- a/app/assets/javascripts/api.js.coffee +++ b/app/assets/javascripts/api.js.coffee @@ -74,6 +74,8 @@ dataType: "json" ).done (label) -> callback(label) + .error (message) -> + callback(message.responseJSON) # Return group projects list. Filtered by query groupProjects: (group_id, query, callback) -> diff --git a/app/assets/javascripts/labels_select.js.coffee b/app/assets/javascripts/labels_select.js.coffee index 4a0c18a99a6..f3cb1e3bc09 100644 --- a/app/assets/javascripts/labels_select.js.coffee +++ b/app/assets/javascripts/labels_select.js.coffee @@ -14,6 +14,9 @@ class @LabelsSelect defaultLabel = $dropdown.data('default-label') if newLabelField.length + $newLabelError = $dropdown.parent().find('.js-label-error') + $newLabelError.hide() + $('.suggest-colors-dropdown a').on 'click', (e) -> e.preventDefault() e.stopPropagation() @@ -27,6 +30,7 @@ class @LabelsSelect e.stopPropagation() if newLabelField.val() isnt '' and newColorField.val() isnt '' + $newLabelError.hide() $('.js-new-label-btn').disable() # Create new label with API @@ -35,7 +39,13 @@ class @LabelsSelect color: newColorField.val() }, (label) -> $('.js-new-label-btn').enable() - $('.dropdown-menu-back', $dropdown.parent()).trigger 'click' + + if label.message? + $newLabelError + .text label.message + .show() + else + $('.dropdown-menu-back', $dropdown.parent()).trigger 'click' $dropdown.glDropdown( data: (term, callback) -> diff --git a/app/assets/stylesheets/pages/labels.scss b/app/assets/stylesheets/pages/labels.scss index 61ee34b695e..3c13573c8fe 100644 --- a/app/assets/stylesheets/pages/labels.scss +++ b/app/assets/stylesheets/pages/labels.scss @@ -45,3 +45,10 @@ .label-subscription { display: inline-block; } + +.dropdown-labels-error { + padding: 5px 10px; + margin-bottom: 10px; + background-color: $gl-danger; + color: $white-light; +} diff --git a/app/views/shared/issuable/_label_dropdown.html.haml b/app/views/shared/issuable/_label_dropdown.html.haml index 87617315181..186087e8f89 100644 --- a/app/views/shared/issuable/_label_dropdown.html.haml +++ b/app/views/shared/issuable/_label_dropdown.html.haml @@ -27,6 +27,7 @@ .dropdown-page-two = dropdown_title("Create new label", back: true) = dropdown_content do + .dropdown-labels-error.js-label-error %input#new_label_color{type: "hidden"} %input#new_label_name.dropdown-input-field{type: "text", placeholder: "Name new label"} .dropdown-label-color-preview.js-dropdown-label-color-preview |