Skip to content

Commit

Permalink
Move form buttons for question management to top row, rework SC/MC blur
Browse files Browse the repository at this point in the history
  • Loading branch information
rschlaefli committed Sep 19, 2019
1 parent 6fe8e19 commit 2ce0bb4
Show file tree
Hide file tree
Showing 3 changed files with 46 additions and 45 deletions.
52 changes: 24 additions & 28 deletions src/components/forms/questionManagement/QuestionCreationForm.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -213,6 +213,27 @@ function QuestionCreationForm({

return (
<Form error={!_isEmpty(errors)} onSubmit={handleSubmit}>
<div className="questionActions">
<Button className="discard" size="large" type="reset" onClick={onDiscard}>
{_some(touched) ? (
<FormattedMessage defaultMessage="Discard Changes" id="common.button.discard" />
) : (
<FormattedMessage defaultMessage="Return to Question Pool" id="createQuestion.button.backToPool" />
)}
</Button>

<Button
primary
className="save"
disabled={!_isEmpty(errors) || (!isInitialValid && _isEmpty(touched))}
loading={isSubmitting}
size="large"
type="submit"
>
<FormattedMessage defaultMessage="Save" id="common.button.save" />
</Button>
</div>

<div className="questionInput questionTitle">
<FormikInput
autoFocus
Expand Down Expand Up @@ -297,26 +318,6 @@ function QuestionCreationForm({
/>
</div>

<div className="questionActions">
<Button className="discard" type="reset" onClick={onDiscard}>
{_some(touched) ? (
<FormattedMessage defaultMessage="Discard Changes" id="common.button.discard" />
) : (
<FormattedMessage defaultMessage="Return to Question Pool" id="createQuestion.button.backToPool" />
)}
</Button>

<Button
primary
className="save"
disabled={!_isEmpty(errors) || (!isInitialValid && _isEmpty(touched))}
loading={isSubmitting}
type="submit"
>
<FormattedMessage defaultMessage="Save" id="common.button.save" />
</Button>
</div>

{_some(errors) && (
<Message error>
<List>
Expand Down Expand Up @@ -354,26 +355,21 @@ function QuestionCreationForm({
margin-bottom: 0.5rem !important;
}
.questionActions {
margin-top: 1rem;
}
@supports (grid-gap: 1rem) {
@include desktop-tablet-only {
display: grid;
align-content: start;
grid-gap: 1rem;
grid-template-columns: repeat(3, 1fr);
grid-template-rows: 5rem auto auto auto;
grid-template-rows: auto auto auto auto;
grid-template-areas:
'actions actions actions'
'title title preview'
'type tags preview'
'content content content'
'files files files'
'options options options'
'actions actions actions';
'options options options';
.questionInput,
.questionPreview {
margin: 0;
Expand Down
35 changes: 18 additions & 17 deletions src/components/forms/questionManagement/QuestionEditForm.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -174,6 +174,22 @@ function QuestionEditForm({

return (
<Form error={success === false} success={success === true} onSubmit={handleFormSubmit}>
<div className="actionArea">
<Button className="discard" size="large" type="reset" onClick={handleDiscard}>
<FormattedMessage defaultMessage="Discard" id="common.button.discard" />
</Button>
<Button
primary
className="save"
disabled={!_isEmpty(errors) || _isEmpty(touched)}
loading={loading && isSubmitting}
size="large"
type="submit"
>
<FormattedMessage defaultMessage="Save" id="common.button.save" />
</Button>
</div>

<div className="infoMessage">
<Message success>
<FormattedMessage defaultMessage="Successfully modified question." id="editQuestion.sucess" />
Expand Down Expand Up @@ -306,21 +322,6 @@ function QuestionEditForm({
}}
/>
</div>

<div className="actionArea">
<Button className="discard" type="reset" onClick={handleDiscard}>
<FormattedMessage defaultMessage="Discard" id="common.button.discard" />
</Button>
<Button
primary
className="save"
disabled={!_isEmpty(errors) || _isEmpty(touched)}
loading={loading && isSubmitting}
type="submit"
>
<FormattedMessage defaultMessage="Save" id="common.button.save" />
</Button>
</div>
</Form>
)
}}
Expand Down Expand Up @@ -376,14 +377,14 @@ function QuestionEditForm({
grid-template-columns: 1fr 4fr;
grid-template-rows: auto;
grid-template-areas:
'actions actions'
'message message'
'type title'
'tags tags'
'version version'
'content content'
'files files'
'options options'
'actions actions';
'options options';
.questionInput {
margin-bottom: 0;
Expand Down
4 changes: 4 additions & 0 deletions src/components/questionTypes/SC/SCCreationPlaceholder.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,10 @@ function SCCreationPlaceholder({ handleSave }: Props): React.ReactElement {
}
const onNameChange = (e): void => setName(e.target.value)
const onSave = (): void => {
if (!name || name.length === 0) {
setInputMode(false)
return
}
handleSave({ correct, name })
setCorrect(false)
setInputMode(false)
Expand Down

0 comments on commit 2ce0bb4

Please sign in to comment.