Bug 32991: Licenses: Add delete dialog to list and show. Removed FormConfirmDelete...
[koha.git] / koha-tmpl / intranet-tmpl / prog / js / vue / components / ERM / AgreementsFormConfirmDelete.vue
1 <template>
2     <div v-if="!initialized">{{ $__("Loading") }}</div>
3     <div v-else id="agreements_confirm_delete">
4         <h2>{{ $__("Delete agreement") }}</h2>
5         <div>
6             <form @submit="onSubmit($event)">
7                 <fieldset class="rows">
8                     <ol>
9                         <li>
10                             {{ $__("Agreement name") }}:
11                             {{ agreement.name }}
12                         </li>
13                         <li>{{ $__("Vendor") }}: {{ agreement.vendor_id }}</li>
14                         <li>
15                             {{ $__("Description") }}:
16                             {{ agreement.description }}
17                         </li>
18                     </ol>
19                 </fieldset>
20                 <fieldset class="action">
21                     <ButtonSubmit :text="$__('Yes, delete')" />
22                     <router-link
23                         to="/cgi-bin/koha/erm/agreements"
24                         role="button"
25                         class="cancel"
26                         >{{ $__("No, do not delete") }}</router-link
27                     >
28                 </fieldset>
29             </form>
30         </div>
31     </div>
32 </template>
33
34 <script>
35 import { APIClient } from "../../fetch/api-client.js"
36 import { setMessage } from "../../messages"
37 import ButtonSubmit from "../ButtonSubmit.vue"
38
39 export default {
40     data() {
41         return {
42             agreement: {},
43             initialized: false,
44         }
45     },
46     beforeRouteEnter(to, from, next) {
47         next(vm => {
48             vm.getAgreement(to.params.agreement_id)
49         })
50     },
51     methods: {
52         async getAgreement(agreement_id) {
53             const client = APIClient.erm
54             client.agreements.get(agreement_id).then(data => {
55                 this.agreement = data
56                 this.initialized = true
57             })
58         },
59         onSubmit(e) {
60             e.preventDefault()
61
62             const client = APIClient.erm
63             client.agreements.delete(this.agreement.agreement_id).then(
64                 success => {
65                     setMessage(this.$__("Agreement deleted"))
66                     this.$router.push("/cgi-bin/koha/erm/agreements")
67                 },
68                 error => {}
69             )
70         },
71     },
72     components: {
73         ButtonSubmit,
74     },
75     name: "AgreementsFormConfirmDelete",
76 }
77 </script>