aboutsummaryrefslogtreecommitdiff
path: root/resources/vue/components/courseware/structural-element/CoursewareStructuralElementDiscussion.vue
blob: 419b8b02d11f05cbe3bc9b8116e6fbdf82c678dc (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
<template>
    <div class="cw-structural-element-discussion">
        <courseware-collapsible-box
            :title="text.comments"
            :open="hasComments"
        >
            <courseware-structural-element-comments
            :structuralElement="structuralElement"
            @hasComments="hasComments = true"
            />
        </courseware-collapsible-box>

        <courseware-collapsible-box
            v-if="canEdit || userIsTeacher"
            :title="text.feedback"
            :open="hasFeedback"
        >
            <courseware-structural-element-feedback
                :structuralElement="structuralElement"
                :canEdit="canEdit"
                @hasFeedback="hasFeedback = true"
            />
        </courseware-collapsible-box>
    </div>
</template>

<script>
import CoursewareCollapsibleBox from '../layouts/CoursewareCollapsibleBox.vue';
import CoursewareStructuralElementComments from './CoursewareStructuralElementComments.vue';
import CoursewareStructuralElementFeedback from './CoursewareStructuralElementFeedback.vue';
import { mapGetters } from 'vuex';

export default {
    name: 'courseware-structural-element-discussion',
    components: {
        CoursewareCollapsibleBox,
        CoursewareStructuralElementComments,
        CoursewareStructuralElementFeedback,
    },
    props: {
        structuralElement: Object,
        canEdit: Boolean
    },
    data() {
        return {
            hasComments: false,
            hasFeedback: false,
            text: {
                comments: this.$gettext('Kommentare zur Seite'),
                feedback: this.$gettext('Anmerkungen zur Seite')
            }
        }
    },
    computed: {
        ...mapGetters({
            userIsTeacher: 'userIsTeacher',
        }),
    }
}
</script>