View | Details | Raw Unified | Return to bug 32991
Collapse All | Expand All

(-)a/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/EHoldingsLocalPackagesFormConfirmDelete.vue (-76 lines)
Lines 1-76 Link Here
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 { setMessage, setError } from "../../messages"
35
import { APIClient } from "../../fetch/api-client.js"
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
        getPackage(package_id) {
51
            const client = APIClient.erm
52
            client.localPackages.get(package_id).then(
53
                erm_package => {
54
                    this.erm_package = erm_package
55
                    this.initialized = true
56
                },
57
                error => {}
58
            )
59
        },
60
        onSubmit(e) {
61
            e.preventDefault()
62
            const client = APIClient.erm
63
            client.localPackages.delete(this.erm_package.package_id).then(
64
                success => {
65
                    setMessage(this.$__("Package deleted"))
66
                    this.$router.push(
67
                        "/cgi-bin/koha/erm/eholdings/local/packages"
68
                    )
69
                },
70
                error => {}
71
            )
72
        },
73
    },
74
    name: "EHoldingsLocalPackagesFormConfirmDelete",
75
}
76
</script>
(-)a/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/EHoldingsLocalPackagesList.vue (-5 / +38 lines)
Lines 32-37 export default { Link Here
32
        const AVStore = inject("AVStore")
32
        const AVStore = inject("AVStore")
33
        const { get_lib_from_av, map_av_dt_filter } = AVStore
33
        const { get_lib_from_av, map_av_dt_filter } = AVStore
34
34
35
        const { setConfirmationDialog, setMessage } = inject("mainStore")
36
35
        const table_id = "package_list"
37
        const table_id = "package_list"
36
        useDataTable(table_id)
38
        useDataTable(table_id)
37
39
Lines 40-45 export default { Link Here
40
            get_lib_from_av,
42
            get_lib_from_av,
41
            map_av_dt_filter,
43
            map_av_dt_filter,
42
            table_id,
44
            table_id,
45
            setConfirmationDialog,
46
            setMessage,
43
        }
47
        }
44
    },
48
    },
45
    data: function () {
49
    data: function () {
Lines 78-87 export default { Link Here
78
                "/cgi-bin/koha/erm/eholdings/local/packages/edit/" + package_id
82
                "/cgi-bin/koha/erm/eholdings/local/packages/edit/" + package_id
79
            )
83
            )
80
        },
84
        },
81
        delete_package: function (package_id) {
85
        delete_package: function (package_id, package_name) {
82
            this.$router.push(
86
            this.setConfirmationDialog(
83
                "/cgi-bin/koha/erm/eholdings/local/packages/delete/" +
87
                {
84
                    package_id
88
                    title: this.$__(
89
                        "Are you sure you want to remove this package?"
90
                    ),
91
                    message: package_name,
92
                    accept_label: this.$__("Yes, delete"),
93
                    cancel_label: this.$__("No, do not delete"),
94
                },
95
                () => {
96
                    const client = APIClient.erm
97
                    client.localPackages.delete(package_id).then(
98
                        success => {
99
                            this.setMessage(
100
                                this.$__("Local package %s deleted").format(
101
                                    package_name
102
                                )
103
                            )
104
                            $("#" + this.table_id)
105
                                .DataTable()
106
                                .ajax.url(
107
                                    "/api/v1/erm/eholdings/local/packages"
108
                                )
109
                                .draw()
110
                        },
111
                        error => {}
112
                    )
113
                }
85
            )
114
            )
86
        },
115
        },
87
        build_datatable: function () {
116
        build_datatable: function () {
Lines 205-210 export default { Link Here
205
                            function (index, e) {
234
                            function (index, e) {
206
                                let tr = $(this).parent().parent()
235
                                let tr = $(this).parent().parent()
207
                                let package_id = api.row(tr).data().package_id
236
                                let package_id = api.row(tr).data().package_id
237
                                let package_name = api.row(tr).data().name
208
                                let editButton = createVNode(
238
                                let editButton = createVNode(
209
                                    "a",
239
                                    "a",
210
                                    {
240
                                    {
Lines 229-235 export default { Link Here
229
                                        class: "btn btn-default btn-xs",
259
                                        class: "btn btn-default btn-xs",
230
                                        role: "button",
260
                                        role: "button",
231
                                        onClick: () => {
261
                                        onClick: () => {
232
                                            delete_package(package_id)
262
                                            delete_package(
263
                                                package_id,
264
                                                package_name
265
                                            )
233
                                        },
266
                                        },
234
                                    },
267
                                    },
235
                                    [
268
                                    [
(-)a/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/EHoldingsLocalPackagesShow.vue (-4 / +38 lines)
Lines 10-20 Link Here
10
                    ><i class="fa fa-pencil"></i
10
                    ><i class="fa fa-pencil"></i
11
                ></router-link>
11
                ></router-link>
12
12
13
                <router-link
13
                <a
14
                    :to="`/cgi-bin/koha/erm/eholdings/local/packages/delete/${erm_package.package_id}`"
14
                    @click="
15
                    :title="$__('Delete')"
15
                        delete_package(erm_package.package_id, erm_package.name)
16
                    "
16
                    ><i class="fa fa-trash"></i
17
                    ><i class="fa fa-trash"></i
17
                ></router-link>
18
                ></a>
18
            </span>
19
            </span>
19
        </h2>
20
        </h2>
20
        <div>
21
        <div>
Lines 112-123 export default { Link Here
112
    setup() {
113
    setup() {
113
        const format_date = $date
114
        const format_date = $date
114
115
116
        const { setConfirmationDialog, setMessage } = inject("mainStore")
117
115
        const AVStore = inject("AVStore")
118
        const AVStore = inject("AVStore")
116
        const { get_lib_from_av } = AVStore
119
        const { get_lib_from_av } = AVStore
117
120
118
        return {
121
        return {
119
            format_date,
122
            format_date,
120
            get_lib_from_av,
123
            get_lib_from_av,
124
            setConfirmationDialog,
125
            setMessage,
121
        }
126
        }
122
    },
127
    },
123
    data() {
128
    data() {
Lines 155-160 export default { Link Here
155
                error => {}
160
                error => {}
156
            )
161
            )
157
        },
162
        },
163
        delete_package: function (package_id, package_name) {
164
            this.setConfirmationDialog(
165
                {
166
                    title: this.$__(
167
                        "Are you sure you want to remove this package?"
168
                    ),
169
                    message: package_name,
170
                    accept_label: this.$__("Yes, delete"),
171
                    cancel_label: this.$__("No, do not delete"),
172
                },
173
                () => {
174
                    const client = APIClient.erm
175
                    client.localPackages.delete(package_id).then(
176
                        success => {
177
                            this.setMessage(
178
                                this.$__("Local package %s deleted").format(
179
                                    package_name
180
                                )
181
                            )
182
                            this.$router.push(
183
                                "/cgi-bin/koha/erm/eholdings/local/packages"
184
                            )
185
                        },
186
                        error => {}
187
                    )
188
                }
189
            )
190
        },
158
    },
191
    },
159
    components: {
192
    components: {
160
        EHoldingsPackageTitlesList,
193
        EHoldingsPackageTitlesList,
Lines 166-171 export default { Link Here
166
.action_links a {
199
.action_links a {
167
    padding-left: 0.2em;
200
    padding-left: 0.2em;
168
    font-size: 11px;
201
    font-size: 11px;
202
    cursor: pointer;
169
}
203
}
170
fieldset.rows label {
204
fieldset.rows label {
171
    width: 25rem;
205
    width: 25rem;
(-)a/koha-tmpl/intranet-tmpl/prog/js/vue/routes/erm.js (-18 lines)
Lines 8-14 import EHoldingsLocalTitlesFormAdd from "../components/ERM/EHoldingsLocalTitlesF Link Here
8
import EHoldingsLocalTitlesFormImport from "../components/ERM/EHoldingsLocalTitlesFormImport.vue";
8
import EHoldingsLocalTitlesFormImport from "../components/ERM/EHoldingsLocalTitlesFormImport.vue";
9
import EHoldingsLocalPackagesList from "../components/ERM/EHoldingsLocalPackagesList.vue";
9
import EHoldingsLocalPackagesList from "../components/ERM/EHoldingsLocalPackagesList.vue";
10
import EHoldingsLocalPackagesShow from "../components/ERM/EHoldingsLocalPackagesShow.vue";
10
import EHoldingsLocalPackagesShow from "../components/ERM/EHoldingsLocalPackagesShow.vue";
11
import EHoldingsLocalPackagesFormConfirmDelete from "../components/ERM/EHoldingsLocalPackagesFormConfirmDelete.vue";
12
import EHoldingsLocalResourcesShow from "../components/ERM/EHoldingsLocalResourcesShow.vue";
11
import EHoldingsLocalResourcesShow from "../components/ERM/EHoldingsLocalResourcesShow.vue";
13
import EHoldingsLocalTitlesList from "../components/ERM/EHoldingsLocalTitlesList.vue";
12
import EHoldingsLocalTitlesList from "../components/ERM/EHoldingsLocalTitlesList.vue";
14
import EHoldingsLocalTitlesShow from "../components/ERM/EHoldingsLocalTitlesShow.vue";
13
import EHoldingsLocalTitlesShow from "../components/ERM/EHoldingsLocalTitlesShow.vue";
Lines 236-257 export const routes = [ Link Here
236
                                        ),
235
                                        ),
237
                                },
236
                                },
238
                            },
237
                            },
239
                            {
240
                                path: "delete/:package_id",
241
                                component:
242
                                    EHoldingsLocalPackagesFormConfirmDelete,
243
                                meta: {
244
                                    breadcrumb: () =>
245
                                        build_breadcrumb(
246
                                            [
247
                                                breadcrumb_paths.eholdings_local,
248
                                                breadcrumbs.eholdings.local
249
                                                    .packages,
250
                                            ],
251
                                            "Delete package" // $t("Delete package")
252
                                        ),
253
                                },
254
                            },
255
                            {
238
                            {
256
                                path: "add",
239
                                path: "add",
257
                                component: EHoldingsLocalPackagesFormAdd,
240
                                component: EHoldingsLocalPackagesFormAdd,
258
- 

Return to bug 32991