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