<template>
  <div class="form-part">
    <div class="form-part-title">
      <h4>Gerekli Dokümanlar</h4>
    </div>
    <div class="form-part-content" v-if="piyangoDocumentStore.loaded">
      <template v-if="piyangoDocumentStore.piyangoDocumentsList.length > 0">
        <template v-for="(file, i) in piyangoDocumentStore.piyangoDocumentsList">
          <file-list-item
            :editable="false"
            :data="file"
            title="dokumanAdi"
            :filePath="file.url">
            <template #actionButtons v-if="usersStore.isPanelUser">
              <i
                class="ico-c ico-btn ico-section back-grad-alert"
                @click="DeleteDocumentPop(file)">
                <svg><use href="/src/assets/images/icons.svg#trash"></use></svg>
              </i>
            </template>
          </file-list-item>
        </template>
      </template>
      <template v-else>
        <div class="form-inner-comment" v-if="usersStore.isPanelUser">
          Eklenmiş dosya bulunamadı.
        </div>
        <div v-else>
          Eklenmiş dosya bulunamadı. Üstteki butonu kullanarak dosya ekleyebilirsiniz.
        </div>
      </template>
    </div>
  </div>
</template>
<script setup lang="ts">
  import { ref, onBeforeMount } from 'vue'

  import { useUsersStore } from '@/stores/usersStore'
  const usersStore = useUsersStore()
  import { usePiyangoDocumentStore } from '../../stores/piyangoDocumentStore'
  const piyangoDocumentStore = usePiyangoDocumentStore()
  import { usePiyangoDocumentService } from '../../service/piyangoDocumentService'
  const piyangoDocumentService = usePiyangoDocumentService()
  import { useDialogStore } from '@/components/global/dialogStore'
  const dialogStore = useDialogStore()
  import { useDataStore } from '@/stores/dataStore'
  const dataStore = useDataStore()

  const DeleteDocumentPop = (data: Record<string, any>) => {
    dialogStore.CreateDialog({
      title: 'Doküman Sil',
      id: 'deletedoc',
      content: 'Dokümanı silmek istediğinize emin misiniz? Bu işlem geri alınamaz.',
      closeText: 'Vazgeç',
      buttons: [
        {
          label: 'Doküman Sil',
          type: 'alert',
          function: () => DeleteDocument(data.id)
        }
      ]
    })
  }

  const DeleteDocument = async (id: number | string) => {
    var dt = await dataStore.dataDelete('Dokuman/' + id)

    if (dt !== 'errorfalse') {
      dialogStore.CloseDialog('deletedoc')
      await piyangoDocumentService.GetDocumentList()
    }
  }

  onBeforeMount(async () => {
    await piyangoDocumentService.GetDocumentList()
  })
</script>
