Bug 32030: Add Notes field to erm_eholdings_packages table
[koha-ffzg.git] / koha-tmpl / intranet-tmpl / prog / js / vue / components / ERM / EHoldingsLocalPackagesShow.vue
1 <template>
2     <div v-if="!initialized">{{ $t("Loading") }}</div>
3     <div v-else-if="erm_package" id="packages_show">
4         <h2>
5             {{ $t("Package .id", { id: erm_package.package_id }) }}
6             <span class="action_links">
7                 <router-link
8                     :to="`/cgi-bin/koha/erm/eholdings/local/packages/edit/${erm_package.package_id}`"
9                     :title="$t('Edit')"
10                     ><i class="fa fa-pencil"></i
11                 ></router-link>
12
13                 <router-link
14                     :to="`/cgi-bin/koha/erm/eholdings/local/packages/delete/${erm_package.package_id}`"
15                     :title="$t('Delete')"
16                     ><i class="fa fa-trash"></i
17                 ></router-link>
18             </span>
19         </h2>
20         <div>
21             <fieldset class="rows">
22                 <ol>
23                     <li>
24                         <label>{{ $t("Package name") }}:</label>
25                         <span>
26                             {{ erm_package.name }}
27                         </span>
28                     </li>
29                     <li v-if="erm_package.vendor">
30                         <label>{{ $t("Vendor") }}:</label>
31                         <span>
32                             <a
33                                 :href="`/cgi-bin/koha/acqui/booksellers.pl?booksellerid=${erm_package.vendor_id}`"
34                                 >{{ erm_package.vendor.name }}</a
35                             >
36                         </span>
37                     </li>
38                     <li>
39                         <label>{{ $t("Package type") }}:</label>
40                         <span>{{
41                             get_lib_from_av(
42                                 "av_package_types",
43                                 erm_package.package_type
44                             )
45                         }}</span>
46                     </li>
47                     <li>
48                         <label>{{ $t("Content type") }}:</label>
49                         <span>{{
50                             get_lib_from_av(
51                                 "av_package_content_types",
52                                 erm_package.content_type
53                             )
54                         }}</span>
55                     </li>
56                     <li>
57                         <label>{{ $t("Notes") }}:</label>
58                         <span>{{ erm_package.notes }}</span>
59                     </li>
60                     <li v-if="erm_package.created_on">
61                         <label>{{ $t("Created on") }}:</label>
62                         <span>{{ format_date(erm_package.created_on) }}</span>
63                     </li>
64                     <li v-if="erm_package.package_agreements.length">
65                         <label>{{ $t("Agreements") }}</label>
66                         <div
67                             v-for="package_agreement in erm_package.package_agreements"
68                             :key="package_agreement.agreement_id"
69                         >
70                             <router-link
71                                 :to="`/cgi-bin/koha/erm/agreements/${package_agreement.agreement.agreement_id}`"
72                                 >{{
73                                     package_agreement.agreement.name
74                                 }}</router-link
75                             >
76                         </div>
77                     </li>
78                     <li>
79                         <label>{{
80                             $t("Titles ({count})", {
81                                 count: erm_package.resources_count,
82                             })
83                         }}</label>
84                         <div v-if="erm_package.resources_count">
85                             <EHoldingsPackageTitlesList
86                                 :package_id="erm_package.package_id.toString()"
87                             />
88                         </div>
89                     </li>
90
91                     <li></li>
92                 </ol>
93             </fieldset>
94             <fieldset class="action">
95                 <router-link
96                     to="/cgi-bin/koha/erm/eholdings/local/packages"
97                     role="button"
98                     class="cancel"
99                     >{{ $t("Close") }}</router-link
100                 >
101             </fieldset>
102         </div>
103     </div>
104 </template>
105
106 <script>
107 import EHoldingsPackageTitlesList from "./EHoldingsLocalPackageTitlesList.vue"
108 import { useAVStore } from "../../stores/authorised_values"
109 import { fetchLocalPackage } from "../../fetch"
110
111 export default {
112     setup() {
113         const format_date = $date
114
115         const AVStore = useAVStore()
116         const { get_lib_from_av } = AVStore
117
118         return {
119             format_date,
120             get_lib_from_av,
121         }
122     },
123     data() {
124         return {
125             erm_package: {
126                 package_id: null,
127                 vendor_id: null,
128                 name: '',
129                 external_id: '',
130                 package_type: '',
131                 content_type: '',
132                 created_on: null,
133                 resources: null,
134                 package_agreements: [],
135             },
136             initialized: false,
137         }
138     },
139     beforeRouteEnter(to, from, next) {
140         next(vm => {
141             vm.getPackage(to.params.package_id)
142         })
143     },
144     beforeRouteUpdate(to, from) {
145         this.erm_package = this.getPackage(to.params.package_id)
146     },
147     methods: {
148         async getPackage(package_id) {
149             const erm_package = await fetchLocalPackage(package_id)
150             this.erm_package = erm_package
151             this.initialized = true
152         },
153     },
154     components: {
155         EHoldingsPackageTitlesList,
156     },
157     name: "EHoldingsLocalPackagesShow",
158 }
159 </script>
160 <style scoped>
161 .action_links a {
162     padding-left: 0.2em;
163     font-size: 11px;
164 }
165 fieldset.rows label {
166     width: 25rem;
167 }
168 </style>