aboutsummaryrefslogtreecommitdiff
path: root/resources/vue/components/courseware/CoursewareContentBookmarkFilterWidget.vue
blob: 515796f2c067f3505767fc4d7ed3e0d46940e6e3 (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
<template>
    <select v-model="bookmarkFilter" class="sidebar-selectlist">
        <option value="all">
            {{ $gettext('alle') }}
        </option>
        <option value="contents">
            {{ $gettext('Arbeitsplatz') }}
        </option>
        <option v-for="course in courses" :key="course.id" :value="course.id">
            {{ course.attributes.title }}
        </option>
    </select>
    
</template>

<script>
import { mapActions, mapGetters } from 'vuex';

export default {
    name: 'courseware-content-bookmark-filter-widget',
    data() {
        return {
            bookmarkFilter: 'all'
        };
    },
    computed: {
        ...mapGetters({
            courses: 'courses/all',
        }),
    },
    methods: {
        ...mapActions({
            setBookmarkFilter: 'setBookmarkFilter',
        }),
        setFilter() {
            this.setBookmarkFilter(this.bookmarkFilter);
        }
    },
    watch: {
        bookmarkFilter() {
            this.setFilter();
        }
    }
}
</script>