Skip to content
Snippets Groups Projects
Select Git revision
  • e9f0ad28352ea4f1a252ad8c7874381ad0a42d62
  • master default protected
2 results

plugins.config

Blame
  • KolloquiumItem.vue 2.11 KiB
    <template>
        <ListItem
            :selected="selected"
        >
            <div class="flex flex-row w-full">
                <div v-if="!inEdit" class="w-full select-none text-left mr-1">
                    {{ title }}
                </div>
                <input v-if="inEdit" class="w-full rounded border p-1" v-model="title" placeholder="Neues Kolloquium..." />
                <client-only>
                    <button
                        v-if="inEdit"
                        @click="save()"
                        class="text-center text-white rounded-md select-none w-9 h-8 ml-1 bg-green-500 hover:bg-green-700 active:bg-green-900"
                    >
    
                    </button>
                    <button
                        v-if="!inEdit"
                        @click="edit()"
                        class="text-center text-white rounded-md select-none w-9 h-8 ml-1 bg-yellow-500 hover:bg-yellow-700 active:bg-yellow-900"
                    >
    
                    </button>            
                    <button
                        class="text-center text-white rounded-md select-none w-9 h-8 ml-1 bg-red-500 hover:bg-red-700 active:bg-red-900"
                        @click="deleteMe()"
                    >
    
                    </button>
                </client-only>
            </div>
        </ListItem>
    </template>
    
    <script>
    import ListItem from '~/components/ListItem'
    
    export default {
        components: {
            ListItem
        },
        props: {
            title: {
                type: String,
                required: true,
            },
            selected: {
                type: Boolean,
                required: false,
                default: false,
            },
            inEdit: {
                type: Boolean,
                required: false,
                default: false
            },
        },
        methods: {
            save() {
                this.$emit("update:inEdit", {inEdit: false, title: this.title});
                // this.$emit("update:title", this.title); // done in update:inEdit
            },
            edit() {
                this.$emit("update:inEdit", {inEdit: true, title: this.title});
            },
            deleteMe() {
                this.$emit("deleteKolloquium")
            }
        }
    }
    </script>