Bug 33408: Store sysprefs in a new ERM store
We need the sysprefs' values to be shared between the components
Signed-off-by: Pedro Amorim <pedro.amorim@ptfs-europe.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit a94178217b
)
Signed-off-by: Matt Blenkinsop <matt.blenkinsop@ptfs-europe.com>
This commit is contained in:
parent
33e19bc35c
commit
9d2efd3ad6
5 changed files with 36 additions and 11 deletions
|
@ -81,6 +81,9 @@ export default {
|
|||
storeToRefs(AVStore)
|
||||
const { get_lib_from_av, map_av_dt_filter } = AVStore
|
||||
|
||||
const ERMStore = inject("ERMStore")
|
||||
const { providers } = ERMStore
|
||||
|
||||
const table = ref()
|
||||
const filters = reactive({
|
||||
package_name: "",
|
||||
|
@ -95,7 +98,7 @@ export default {
|
|||
get_lib_from_av,
|
||||
escape_str,
|
||||
map_av_dt_filter,
|
||||
erm_providers,
|
||||
providers,
|
||||
table,
|
||||
}
|
||||
},
|
||||
|
@ -165,7 +168,7 @@ export default {
|
|||
this.show_table = true
|
||||
this.local_count_packages = null
|
||||
|
||||
if (this.erm_providers.includes("local")) {
|
||||
if (this.providers.includes("local")) {
|
||||
const client = APIClient.erm
|
||||
const query = this.filters
|
||||
? {
|
||||
|
|
|
@ -84,6 +84,9 @@ export default {
|
|||
const { av_title_publication_types } = storeToRefs(AVStore)
|
||||
const { get_lib_from_av } = AVStore
|
||||
|
||||
const ERMStore = inject("ERMStore")
|
||||
const { providers } = ERMStore
|
||||
|
||||
const table = ref()
|
||||
const filters = reactive({
|
||||
publication_title: "",
|
||||
|
@ -96,7 +99,7 @@ export default {
|
|||
av_title_publication_types,
|
||||
get_lib_from_av,
|
||||
escape_str,
|
||||
erm_providers,
|
||||
providers,
|
||||
table,
|
||||
}
|
||||
},
|
||||
|
@ -175,7 +178,7 @@ export default {
|
|||
"/api/v1/erm/eholdings/ebsco/titles"
|
||||
)
|
||||
}
|
||||
if (this.erm_providers.includes("local")) {
|
||||
if (this.providers.includes("local")) {
|
||||
const client = APIClient.erm
|
||||
|
||||
const q = this.filters
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
<template>
|
||||
<div v-if="initialized && ERMModule == 1">
|
||||
<div v-if="initialized && sysprefs.ERMModule == 1">
|
||||
<div id="sub-header">
|
||||
<Breadcrumb />
|
||||
<Help />
|
||||
|
@ -48,7 +48,7 @@
|
|||
<li>
|
||||
<ul>
|
||||
<li
|
||||
v-for="provider in erm_providers"
|
||||
v-for="provider in providers"
|
||||
:key="provider"
|
||||
>
|
||||
<router-link
|
||||
|
@ -136,9 +136,16 @@ export default {
|
|||
|
||||
const { loading, loaded, setError } = mainStore
|
||||
|
||||
const ERMStore = inject("ERMStore")
|
||||
|
||||
const { sysprefs, providers } = ERMStore
|
||||
|
||||
return {
|
||||
vendorStore,
|
||||
AVStore,
|
||||
ERMStore,
|
||||
sysprefs,
|
||||
providers,
|
||||
setError,
|
||||
loading,
|
||||
loaded,
|
||||
|
@ -148,8 +155,6 @@ export default {
|
|||
return {
|
||||
component: "agreement",
|
||||
initialized: false,
|
||||
ERMModule: null,
|
||||
erm_providers: [],
|
||||
}
|
||||
},
|
||||
beforeCreate() {
|
||||
|
@ -209,7 +214,8 @@ export default {
|
|||
promises.push(
|
||||
sysprefs_client.sysprefs.get("ERMProviders").then(
|
||||
providers => {
|
||||
this.erm_providers = providers.value.split(",")
|
||||
this.ERMStore.providers = providers.value.split(",")
|
||||
this.providers = this.ERMStore.providers
|
||||
},
|
||||
error => {}
|
||||
)
|
||||
|
@ -221,8 +227,8 @@ export default {
|
|||
sysprefs_client.sysprefs
|
||||
.get("ERMModule")
|
||||
.then(value => {
|
||||
this.ERMModule = value.value
|
||||
if (this.ERMModule != 1) {
|
||||
this.ERMStore.sysprefs.ERMModule = value.value
|
||||
if (this.sysprefs.ERMModule != 1) {
|
||||
return this.setError(
|
||||
this.$__(
|
||||
'The e-resource management module is disabled, turn on <a href="/cgi-bin/koha/admin/preferences.pl?tab=&op=search&searchfield=ERMModule">ERMModule</a> to use it'
|
||||
|
|
|
@ -28,6 +28,7 @@ const router = createRouter({
|
|||
import { useMainStore } from "../stores/main";
|
||||
import { useVendorStore } from "../stores/vendors";
|
||||
import { useAVStore } from "../stores/authorised-values";
|
||||
import { useERMStore } from "../stores/erm";
|
||||
|
||||
const pinia = createPinia();
|
||||
|
||||
|
@ -54,6 +55,8 @@ const mainStore = useMainStore(pinia);
|
|||
app.provide("mainStore", mainStore);
|
||||
const AVStore = useAVStore(pinia);
|
||||
app.provide("AVStore", AVStore);
|
||||
const ERMStore = useERMStore(pinia);
|
||||
app.provide("ERMStore", ERMStore);
|
||||
|
||||
app.mount("#erm");
|
||||
|
||||
|
|
10
koha-tmpl/intranet-tmpl/prog/js/vue/stores/erm.js
Normal file
10
koha-tmpl/intranet-tmpl/prog/js/vue/stores/erm.js
Normal file
|
@ -0,0 +1,10 @@
|
|||
import { defineStore } from "pinia";
|
||||
|
||||
export const useERMStore = defineStore("erm", {
|
||||
state: () => ({
|
||||
sysprefs: {
|
||||
ERMModule: false,
|
||||
},
|
||||
providers: [],
|
||||
}),
|
||||
});
|
Loading…
Reference in a new issue