summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPhil Hughes <me@iamphill.com>2016-10-05 14:58:29 +0100
committerPhil Hughes <me@iamphill.com>2016-10-06 11:00:01 +0100
commit2f53a8d08f3b1595dfa48c308e408083b89651f4 (patch)
tree210d058bb75aed5f89e8d8fa66b4edc116de9a8d
parenta68f1fdd2975a9e7cab39ab7d40e3eae2cc676db (diff)
downloadgitlab-ce-issue-boards-new-issue.tar.gz
Shows error if response returns an errorissue-boards-new-issue
Added validation so the user shouldnt be able to submit the form without the title present
-rw-r--r--app/assets/javascripts/boards/components/board_new_issue.js.es621
-rw-r--r--app/views/projects/boards/components/_board.html.haml3
2 files changed, 22 insertions, 2 deletions
diff --git a/app/assets/javascripts/boards/components/board_new_issue.js.es6 b/app/assets/javascripts/boards/components/board_new_issue.js.es6
index 315c16ee242..58cc30b05af 100644
--- a/app/assets/javascripts/boards/components/board_new_issue.js.es6
+++ b/app/assets/javascripts/boards/components/board_new_issue.js.es6
@@ -8,7 +8,8 @@
},
data() {
return {
- title: ''
+ title: '',
+ error: false
};
},
watch: {
@@ -19,6 +20,10 @@
methods: {
submit(e) {
e.preventDefault();
+ if (this.title.trim() === '') return;
+
+ this.error = false;
+
const labels = this.list.label ? [this.list.label] : [];
const issue = new ListIssue({
title: this.title,
@@ -26,9 +31,21 @@
});
this.list.newIssue(issue)
- .then(() => {
+ .then((data) => {
+ // Need this because our jQuery very kindly disables buttons on ALL form submissions
+ $(this.$els.submitButton).enable();
+ })
+ .catch(() => {
// Need this because our jQuery very kindly disables buttons on ALL form submissions
$(this.$els.submitButton).enable();
+
+ // Remove issue with no ID
+ const issue = this.list.findIssue(undefined);
+ this.list.removeIssue(issue);
+
+ // Show error message
+ this.error = true;
+ this.showIssueForm = true;
});
this.cancel();
diff --git a/app/views/projects/boards/components/_board.html.haml b/app/views/projects/boards/components/_board.html.haml
index 26b2236b581..ba1502c97b6 100644
--- a/app/views/projects/boards/components/_board.html.haml
+++ b/app/views/projects/boards/components/_board.html.haml
@@ -46,6 +46,9 @@
"v-show" => "list.type !== 'done' && showIssueForm" }
.card.board-new-issue-form
%form{ "@submit" => "submit($event)" }
+ .flash-container{ "v-if" => "error" }
+ .flash-alert
+ An error occured. Please try again.
%label.label-light{ ":for" => "list.id + '-title'" }
Title
%input.form-control{ type: "text",