<template>
  <v-row justify="center">
    <v-dialog v-model="show" max-width="250">
      <v-card>
        <DialogHeading title="Delete Section">
          <v-btn icon class="ma-0 pa-0" @click="show = false">
            <v-icon color="white">clear</v-icon>
          </v-btn>
        </DialogHeading>

        <v-card-text>
          Really delete catalog section?
          <div class="subheading font-weight-medium mt-2">
            {{ name }}
          </div>
        </v-card-text>

        <v-card-actions>
          <v-spacer/>
          <v-btn text @click="show = false">Cancel</v-btn>
          <v-btn color="primary" text @click="doDelete()">OK</v-btn>
          <v-spacer/>
        </v-card-actions>
      </v-card>
    </v-dialog>
  </v-row>
</template>

<script>
import DialogHeading from './DialogHeading'
import { mapGetters, mapActions } from 'vuex'

export default {
  components: {
    DialogHeading,
  },
  props: {
    value: Boolean,
    section: {
      type: Number,
      required: false,
      default: null,
    }
  },
  data: () => ({
  }),
  computed: {
    show: {
      get() {
        return this.value
      },
      set(value) {
        this.$emit('input', value)
      }
    },
    name: {
      get() {
        let section = this.selectedSection()
        return section ? section.name : '(none)'
      }
    }
  },
  methods: {
    doDelete() {
      this.deleteSection(this.selectedSection())
      this.show = false
    },
    ...mapGetters([
      'selectedSection',
    ]),
    ...mapActions([
      'deleteSection',
    ]),
  },
}
</script>

<style>

</style>
