diff --git a/frontend/src/components/submission_notes/toolbars/AnnotatedSubmissionBottomToolbar.vue b/frontend/src/components/submission_notes/toolbars/AnnotatedSubmissionBottomToolbar.vue index 835ec918aa6802346c5f3990c6f2b8872d63318d..6ad3b94f6cbf643e4828f15c8ab2053376ba96f7 100644 --- a/frontend/src/components/submission_notes/toolbars/AnnotatedSubmissionBottomToolbar.vue +++ b/frontend/src/components/submission_notes/toolbars/AnnotatedSubmissionBottomToolbar.vue @@ -61,11 +61,7 @@ data () { return { scoreError: '', - initialIsFinal: this.$store.state.submissionNotes.origFeedback.isFinal || - !this.$store.getters['submissionNotes/isFeedbackCreation'] || this.$store.getters.isReviewer, - isFinal: this.$store.state.submissionNotes.origFeedback.isFinal || - !this.$store.getters['submissionNotes/isFeedbackCreation'] || this.$store.getters.isReviewer - + isFinal: this.initialFinalStatus() } }, props: { @@ -102,16 +98,23 @@ watch: { feedback: { handler: function (val) { - if (!val.hasOwnProperty('is_final')) { - this.isFinal = this.initialValue - } else { - this.isFinal = val.is_final - } + this.isFinal = this.initialFinalStatus() }, deep: true } }, methods: { + initialFinalStatus () { + if (this.$route.name === 'subscription') { + return !this.$store.getters['submissionNotes/isFeedbackCreation'] || this.$store.getters.isReviewer + } else { + if (this.feedback.hasOwnProperty('is_final')) { + return this.feedback.is_final + } else { + return !this.$store.getters['submissionNotes/isFeedbackCreation'] || this.$store.getters.isReviewer + } + } + }, emitScoreError (error, duration) { this.scoreError = error setTimeout(() => { this.scoreError = '' }, duration) @@ -130,7 +133,6 @@ }, submit () { this.$emit('submitFeedback', {isFinal: this.isFinal}) - this.isFinal = this.initialIsFinal } } } diff --git a/frontend/src/pages/SubscriptionWorkPage.vue b/frontend/src/pages/SubscriptionWorkPage.vue index 747fc714571fcb722599877ebb794e5fb9889881..42b73bdf19a649648d86c00425b52317ad2b7344 100644 --- a/frontend/src/pages/SubscriptionWorkPage.vue +++ b/frontend/src/pages/SubscriptionWorkPage.vue @@ -44,6 +44,9 @@ next() }) store.dispatch('getAssignmentForSubscription', {subscription}) + } else if (subscription['assignments'].length === 1) { + store.dispatch('getAssignmentForSubscription', {subscription}) + next() } else { next() }