Handle submissions with no feedback

This commit is contained in:
Christian Cueni 2019-11-19 15:32:13 +01:00
parent 3e606073e2
commit 735eae25e3
7 changed files with 32 additions and 12 deletions

View File

@ -10,9 +10,9 @@
<h4 class="assignment-with-submissions__heading">Lösung</h4> <h4 class="assignment-with-submissions__heading">Lösung</h4>
<p class="assignment-with-submissions__solution-text">{{assignment.solution}}</p> <p class="assignment-with-submissions__solution-text">{{assignment.solution}}</p>
</div> </div>
<p v-if="!assignment.submissions.length">Zu diesem Auftrag sind noch keine Ergebnisse vorhanden</p> <p class="assignment-with-submissions__no-submissions" v-if="!assignment.submissions.length">Zu diesem Auftrag sind noch keine Ergebnisse vorhanden</p>
<div class="assignment-with-submissions__submissions submissions"> <div v-if="assignment.submissions.length" class="assignment-with-submissions__submissions submissions">
<div class="submissions__header student-submission-row submission-header"> <div class="submissions__header student-submission-row submission-header">
<p class="submission-header__title">Lernende</p> <p class="submission-header__title">Lernende</p>
<p class="submission-header__title">Ergebnisse</p> <p class="submission-header__title">Ergebnisse</p>
@ -113,6 +113,14 @@
margin-top: 3rem; margin-top: 3rem;
} }
&__no-submissions {
margin-top: $large-spacing;
}
}
.submissions {
width: 100%;
} }
.submission-header { .submission-header {

View File

@ -9,7 +9,7 @@
<student-submission-document :document="submission.document" class="entry-document"></student-submission-document> <student-submission-document :document="submission.document" class="entry-document"></student-submission-document>
</p> </p>
</div> </div>
<div class="student-submission__feedback entry"> <div class="student-submission__feedback entry" v-if="submission.submissionfeedback">
<p class="entry__text" :class="{'entry__text--final': submission.submissionfeedback.final}">{{submission.submissionfeedback.text | trimToLength(50)}}</p> <p class="entry__text" :class="{'entry__text--final': submission.submissionfeedback.final}">{{submission.submissionfeedback.text | trimToLength(50)}}</p>
</div> </div>
</div> </div>

View File

@ -21,7 +21,7 @@
> >
</submission-form> </submission-form>
<div v-if="this.assignment.submission.submissionfeedback" class="submissionform-container__feedback"> <div v-if="this.assignment.submission.submissionfeedback" class="assignment__feedback">
<p>{{feedbackText}}</p> <p>{{feedbackText}}</p>
</div> </div>
</template> </template>
@ -254,6 +254,10 @@
color: $color-charcoal-dark; color: $color-charcoal-dark;
} }
} }
&__feedback {
margin-top: $medium-spacing;
}
} }
</style> </style>

View File

@ -55,7 +55,15 @@
DocumentBlock DocumentBlock
}, },
props: ['userInput', 'saved', 'placeholder', 'action', 'reopen', 'document', 'sharedMsg'], props: {
userInput: Object,
saved: Boolean,
placeholder: String,
action: String,
reopen: Function,
document: String,
sharedMsg: String
},
computed: { computed: {
final() { final() {
@ -105,10 +113,6 @@
align-items: center; align-items: center;
} }
&__feedback {
margin-top: $medium-spacing;
}
&__document { &__document {
&:hover { &:hover {
cursor: pointer; cursor: pointer;

View File

@ -9,6 +9,7 @@ fragment AssignmentParts on AssignmentNode {
final final
document document
submissionfeedback { submissionfeedback {
id
text text
teacher { teacher {
firstName firstName

View File

@ -19,7 +19,7 @@
@turnIn="turnIn" @turnIn="turnIn"
@saveInput="saveInput" @saveInput="saveInput"
@reopen="reopen" @reopen="reopen"
:user-input="studentSubmission.submissionfeedback" :user-input="feedback"
:placholder="'Feedback erfassen'" :placholder="'Feedback erfassen'"
:action="'Feedback teilen'" :action="'Feedback teilen'"
:shared-msg="'Dieses Feedback wurde geteilt.'" :shared-msg="'Dieses Feedback wurde geteilt.'"
@ -60,6 +60,9 @@
}, },
fullName() { fullName() {
return `${this.studentSubmission.student.firstName} ${this.studentSubmission.student.lastName}` return `${this.studentSubmission.student.firstName} ${this.studentSubmission.student.lastName}`
},
feedback() {
return this.studentSubmission.submissionfeedback ? this.studentSubmission.submissionfeedback : {text: '', final: false};
} }
}, },
@ -78,7 +81,7 @@
methods: { methods: {
addEmoji(emoji) { addEmoji(emoji) {
const feedbackText = this.studentSubmission.submissionfeedback.text + emoji; const feedbackText = this.feedback.text + emoji;
this.updateFeedbackText(feedbackText); this.updateFeedbackText(feedbackText);
}, },
_save: debounce(function () { _save: debounce(function () {

View File

@ -1,5 +1,5 @@
<template> <template>
<div class="submissions-page skillbox__content"> <div class="submissions-page">
<h2 class="submissions-page__heading">Aufgabe</h2> <h2 class="submissions-page__heading">Aufgabe</h2>
<assignment-with-submissions v-if="!$apollo.queries.assignment.loading" <assignment-with-submissions v-if="!$apollo.queries.assignment.loading"
:assignment="assignment" :assignment="assignment"