Bug 32030: Add users to licenses - Preparation
[koha-ffzg.git] / koha-tmpl / intranet-tmpl / prog / js / vue / components / ERM / LicensesFormConfirmDelete.vue
1 <template>
2     <div v-if="!initialized">{{ $__("Loading") }}</div>
3     <div v-else id="licenses_confirm_delete">
4         <h2>{{ $__("Delete license") }}</h2>
5         <div>
6             <form @submit="onSubmit($event)">
7                 <fieldset class="rows">
8                     <ol>
9                         <li>
10                             {{ $__("License name") }}:
11                             {{ license.name }}
12                         </li>
13                         <li>
14                             {{ $__("Description") }}:
15                             {{ license.description }}
16                         </li>
17                     </ol>
18                 </fieldset>
19                 <fieldset class="action">
20                     <input
21                         type="submit"
22                         variant="primary"
23                         :value="$__('Yes, delete')"
24                     />
25                     <router-link
26                         to="/cgi-bin/koha/erm/licenses"
27                         role="button"
28                         class="cancel"
29                         >{{ $__("No, do not delete") }}</router-link
30                     >
31                 </fieldset>
32             </form>
33         </div>
34     </div>
35 </template>
36
37 <script>
38 import { fetchLicense } from "../../fetch"
39 import { setMessage, setError } from "../../messages"
40
41 export default {
42     data() {
43         return {
44             license: {},
45             initialized: false,
46         }
47     },
48     beforeRouteEnter(to, from, next) {
49         next(vm => {
50             vm.license = vm.getLicense(to.params.license_id)
51             vm.initialized = true
52         })
53     },
54     methods: {
55         async getLicense(license_id) {
56             const license = await fetchLicense(license_id)
57             this.license = license
58             this.initialized = true
59         },
60         onSubmit(e) {
61             e.preventDefault()
62
63             let apiUrl = "/api/v1/erm/licenses/" + this.license.license_id
64
65             const options = {
66                 method: "DELETE",
67                 headers: {
68                     "Content-Type": "application/json;charset=utf-8",
69                 },
70             }
71
72             fetch(apiUrl, options)
73                 .then(response => {
74                     if (response.status == 204) {
75                         this.$router.push("/cgi-bin/koha/erm/licenses")
76                         setMessage(this.$__("License deleted"))
77                     } else {
78                         setError(response.message || response.statusText)
79                     }
80                 })
81                 .catch(error => {
82                     setError(error)
83                 })
84         },
85     },
86     name: "LicensesFormConfirmDelete",
87 }
88 </script>