src_js/iconolab-bundle/src/components/editor/CommentList.vue
author Alexandre Segura <mex.zktk@gmail.com>
Mon, 20 Feb 2017 18:43:34 +0100
changeset 326 b962ae792616
parent 323 55c024fc7c60
child 328 c23659daa42d
permissions -rw-r--r--
Make CommentList more isolated.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
323
55c024fc7c60 Roughly implement annotation navigator.
Alexandre Segura <mex.zktk@gmail.com>
parents:
diff changeset
     1
<template>
55c024fc7c60 Roughly implement annotation navigator.
Alexandre Segura <mex.zktk@gmail.com>
parents:
diff changeset
     2
    <div v-show="comments.length > 0">
55c024fc7c60 Roughly implement annotation navigator.
Alexandre Segura <mex.zktk@gmail.com>
parents:
diff changeset
     3
        <label class="form-label">Commentaires</label>
326
b962ae792616 Make CommentList more isolated.
Alexandre Segura <mex.zktk@gmail.com>
parents: 323
diff changeset
     4
        <comment
323
55c024fc7c60 Roughly implement annotation navigator.
Alexandre Segura <mex.zktk@gmail.com>
parents:
diff changeset
     5
            v-for="comment in comments"
55c024fc7c60 Roughly implement annotation navigator.
Alexandre Segura <mex.zktk@gmail.com>
parents:
diff changeset
     6
            v-bind:comment="comment.comment"
55c024fc7c60 Roughly implement annotation navigator.
Alexandre Segura <mex.zktk@gmail.com>
parents:
diff changeset
     7
            v-bind:username="comment.user_name"
55c024fc7c60 Roughly implement annotation navigator.
Alexandre Segura <mex.zktk@gmail.com>
parents:
diff changeset
     8
            v-bind:date="comment.submit_date"></comment>
55c024fc7c60 Roughly implement annotation navigator.
Alexandre Segura <mex.zktk@gmail.com>
parents:
diff changeset
     9
    </div>
55c024fc7c60 Roughly implement annotation navigator.
Alexandre Segura <mex.zktk@gmail.com>
parents:
diff changeset
    10
</template>
55c024fc7c60 Roughly implement annotation navigator.
Alexandre Segura <mex.zktk@gmail.com>
parents:
diff changeset
    11
55c024fc7c60 Roughly implement annotation navigator.
Alexandre Segura <mex.zktk@gmail.com>
parents:
diff changeset
    12
<script>
55c024fc7c60 Roughly implement annotation navigator.
Alexandre Segura <mex.zktk@gmail.com>
parents:
diff changeset
    13
55c024fc7c60 Roughly implement annotation navigator.
Alexandre Segura <mex.zktk@gmail.com>
parents:
diff changeset
    14
    import Comment from './Comment.vue'
55c024fc7c60 Roughly implement annotation navigator.
Alexandre Segura <mex.zktk@gmail.com>
parents:
diff changeset
    15
55c024fc7c60 Roughly implement annotation navigator.
Alexandre Segura <mex.zktk@gmail.com>
parents:
diff changeset
    16
    export default {
326
b962ae792616 Make CommentList more isolated.
Alexandre Segura <mex.zktk@gmail.com>
parents: 323
diff changeset
    17
        props: ['annotation', 'fetch'],
323
55c024fc7c60 Roughly implement annotation navigator.
Alexandre Segura <mex.zktk@gmail.com>
parents:
diff changeset
    18
        components: {
55c024fc7c60 Roughly implement annotation navigator.
Alexandre Segura <mex.zktk@gmail.com>
parents:
diff changeset
    19
            Comment
55c024fc7c60 Roughly implement annotation navigator.
Alexandre Segura <mex.zktk@gmail.com>
parents:
diff changeset
    20
        },
55c024fc7c60 Roughly implement annotation navigator.
Alexandre Segura <mex.zktk@gmail.com>
parents:
diff changeset
    21
        data() {
55c024fc7c60 Roughly implement annotation navigator.
Alexandre Segura <mex.zktk@gmail.com>
parents:
diff changeset
    22
            return {
55c024fc7c60 Roughly implement annotation navigator.
Alexandre Segura <mex.zktk@gmail.com>
parents:
diff changeset
    23
                'comments': []
55c024fc7c60 Roughly implement annotation navigator.
Alexandre Segura <mex.zktk@gmail.com>
parents:
diff changeset
    24
            }
55c024fc7c60 Roughly implement annotation navigator.
Alexandre Segura <mex.zktk@gmail.com>
parents:
diff changeset
    25
        },
326
b962ae792616 Make CommentList more isolated.
Alexandre Segura <mex.zktk@gmail.com>
parents: 323
diff changeset
    26
        computed: {
b962ae792616 Make CommentList more isolated.
Alexandre Segura <mex.zktk@gmail.com>
parents: 323
diff changeset
    27
            commentsURL: function() {
b962ae792616 Make CommentList more isolated.
Alexandre Segura <mex.zktk@gmail.com>
parents: 323
diff changeset
    28
                return this.fetch.replace(':annotation_guid', this.annotation.annotation_guid);
b962ae792616 Make CommentList more isolated.
Alexandre Segura <mex.zktk@gmail.com>
parents: 323
diff changeset
    29
            }
b962ae792616 Make CommentList more isolated.
Alexandre Segura <mex.zktk@gmail.com>
parents: 323
diff changeset
    30
        },
b962ae792616 Make CommentList more isolated.
Alexandre Segura <mex.zktk@gmail.com>
parents: 323
diff changeset
    31
        watch: {
b962ae792616 Make CommentList more isolated.
Alexandre Segura <mex.zktk@gmail.com>
parents: 323
diff changeset
    32
            annotation: function(annotation) {
b962ae792616 Make CommentList more isolated.
Alexandre Segura <mex.zktk@gmail.com>
parents: 323
diff changeset
    33
                if (annotation) {
b962ae792616 Make CommentList more isolated.
Alexandre Segura <mex.zktk@gmail.com>
parents: 323
diff changeset
    34
                    $.getJSON(this.commentsURL).then((comments) => this.comments = comments);
b962ae792616 Make CommentList more isolated.
Alexandre Segura <mex.zktk@gmail.com>
parents: 323
diff changeset
    35
                } else {
b962ae792616 Make CommentList more isolated.
Alexandre Segura <mex.zktk@gmail.com>
parents: 323
diff changeset
    36
                    this.comments = [];
b962ae792616 Make CommentList more isolated.
Alexandre Segura <mex.zktk@gmail.com>
parents: 323
diff changeset
    37
                }
b962ae792616 Make CommentList more isolated.
Alexandre Segura <mex.zktk@gmail.com>
parents: 323
diff changeset
    38
            }
b962ae792616 Make CommentList more isolated.
Alexandre Segura <mex.zktk@gmail.com>
parents: 323
diff changeset
    39
        }
323
55c024fc7c60 Roughly implement annotation navigator.
Alexandre Segura <mex.zktk@gmail.com>
parents:
diff changeset
    40
    }
55c024fc7c60 Roughly implement annotation navigator.
Alexandre Segura <mex.zktk@gmail.com>
parents:
diff changeset
    41
55c024fc7c60 Roughly implement annotation navigator.
Alexandre Segura <mex.zktk@gmail.com>
parents:
diff changeset
    42
</script>