aboutsummaryrefslogtreecommitdiffstats
path: root/webui/src/pages/bug/CommentForm.tsx
diff options
context:
space:
mode:
authorSascha <GlancingMind@outlook.com>2021-05-25 14:07:27 +0200
committerSascha <GlancingMind@outlook.com>2021-05-25 14:14:57 +0200
commit098bcd0c1f26d0896e7ede3edb4040b01bc3126a (patch)
treec651ca503969df4c2146cb12c705c2c5c7bef661 /webui/src/pages/bug/CommentForm.tsx
parent3d4385483e1a2e43814e4b3d83221f1a3477cb88 (diff)
downloadgit-bug-098bcd0c1f26d0896e7ede3edb4040b01bc3126a.tar.gz
WebUI: Add comment-and-close of a bug in one step
When a user has some text entered in the comment field, the close bug button will change to "Close bug with comment". This way the user does not have to comment and close a bug in two separate steps.
Diffstat (limited to 'webui/src/pages/bug/CommentForm.tsx')
-rw-r--r--webui/src/pages/bug/CommentForm.tsx17
1 files changed, 10 insertions, 7 deletions
diff --git a/webui/src/pages/bug/CommentForm.tsx b/webui/src/pages/bug/CommentForm.tsx
index a8ce4319..fb33a8be 100644
--- a/webui/src/pages/bug/CommentForm.tsx
+++ b/webui/src/pages/bug/CommentForm.tsx
@@ -6,6 +6,7 @@ import { makeStyles, Theme } from '@material-ui/core/styles';
import CommentInput from '../../components/CommentInput/CommentInput';
import CloseBugButton from 'src/components/CloseBugButton/CloseBugButton';
+import CloseBugWithCommentButton from 'src/components/CloseBugWithCommentButton/CloseBugWithCommentButton';
import ReopenBugButton from 'src/components/ReopenBugButton/ReopenBugButton';
import { BugFragment } from './Bug.generated';
@@ -77,12 +78,14 @@ function CommentForm({ bug }: Props) {
if (issueComment.length > 0) submit();
};
- function getCloseButton() {
- return <CloseBugButton bug={bug} disabled={issueComment.length > 0} />;
- }
-
- function getReopenButton() {
- return <ReopenBugButton bug={bug} disabled={issueComment.length > 0} />;
+ function getBugStatusButton() {
+ if (bug.status === 'OPEN' && issueComment.length > 0) {
+ return <CloseBugWithCommentButton bug={bug} comment={issueComment} />;
+ } else if (bug.status === 'OPEN') {
+ return <CloseBugButton bug={bug} />;
+ } else {
+ return <ReopenBugButton bug={bug} disabled={issueComment.length > 0} />;
+ }
}
return (
@@ -94,7 +97,7 @@ function CommentForm({ bug }: Props) {
onChange={(comment: string) => setIssueComment(comment)}
/>
<div className={classes.actions}>
- {bug.status === 'OPEN' ? getCloseButton() : getReopenButton()}
+ {getBugStatusButton()}
<Button
className={classes.greenButton}
variant="contained"