Bugzilla – Attachment 188951 Details for
Bug 39320
Create a 'landing page' for ERM
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Bug 39320: (QA follow-up): Use localStorage instead of vue-cookies
Bug-39320-QA-follow-up-Use-localStorage-instead-of.patch (text/plain), 4.71 KB, created by
Jonathan Druart
on 2025-11-03 14:39:32 UTC
(
hide
)
Description:
Bug 39320: (QA follow-up): Use localStorage instead of vue-cookies
Filename:
MIME Type:
Creator:
Jonathan Druart
Created:
2025-11-03 14:39:32 UTC
Size:
4.71 KB
patch
obsolete
>From 93bd617ebc493180a2ab781b851450d33f723e0a Mon Sep 17 00:00:00 2001 >From: Pedro Amorim <pedro.amorim@openfifth.co.uk> >Date: Fri, 17 Oct 2025 09:36:45 +0000 >Subject: [PATCH] Bug 39320: (QA follow-up): Use localStorage instead of > vue-cookies > >Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io> > >Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org> >--- > .../ModuleDashboard/ModuleDashboard.vue | 12 +++++------- > .../prog/js/vue/composables/base-widget.js | 16 +++++++--------- > package.json | 1 - > 3 files changed, 12 insertions(+), 17 deletions(-) > >diff --git a/koha-tmpl/intranet-tmpl/prog/js/vue/components/ModuleDashboard/ModuleDashboard.vue b/koha-tmpl/intranet-tmpl/prog/js/vue/components/ModuleDashboard/ModuleDashboard.vue >index 126944fcd53..de7828dc660 100644 >--- a/koha-tmpl/intranet-tmpl/prog/js/vue/components/ModuleDashboard/ModuleDashboard.vue >+++ b/koha-tmpl/intranet-tmpl/prog/js/vue/components/ModuleDashboard/ModuleDashboard.vue >@@ -56,13 +56,12 @@ > <script> > import { onMounted, ref, watch, inject } from "vue"; > import WidgetPicker from "./WidgetPicker.vue"; >-import VueCookies from "vue-cookies"; > import { $__ } from "@koha-vue/i18n"; > import { VueDraggableNext } from "vue-draggable-next"; > > export default { > props: { >- availableWidgets: Array >+ availableWidgets: Array, > }, > setup(props) { > const availableWidgets = props.availableWidgets; >@@ -186,9 +185,9 @@ export default { > }; > > onMounted(() => { >- const storedWidgets = VueCookies.get("dashboard-widgets"); >+ const storedWidgets = localStorage.getItem("dashboard-widgets"); > if (storedWidgets) { >- const { left, right } = storedWidgets; >+ const { left, right } = JSON.parse(storedWidgets); > left.forEach(widgetName => { > const widget = availableWidgets.find( > widget => widget.name === widgetName >@@ -215,13 +214,12 @@ export default { > ([left, right]) => { > const leftWidgetNames = left.map(widget => widget.name); > const rightWidgetNames = right.map(widget => widget.name); >- VueCookies.set( >+ localStorage.setItem( > "dashboard-widgets", > JSON.stringify({ > left: leftWidgetNames, > right: rightWidgetNames, >- }), >- "30d" >+ }) > ); > }, > { deep: true } >diff --git a/koha-tmpl/intranet-tmpl/prog/js/vue/composables/base-widget.js b/koha-tmpl/intranet-tmpl/prog/js/vue/composables/base-widget.js >index 102bb9e9e80..7dd41d7398f 100644 >--- a/koha-tmpl/intranet-tmpl/prog/js/vue/composables/base-widget.js >+++ b/koha-tmpl/intranet-tmpl/prog/js/vue/composables/base-widget.js >@@ -1,6 +1,5 @@ > // composables/useBaseWidget.js > import { ref, computed, watch, provide, onMounted, onBeforeMount } from "vue"; >-import VueCookies from "vue-cookies"; > > export function useBaseWidget(widgetConfig, emit) { > const loading = ref( >@@ -37,17 +36,17 @@ export function useBaseWidget(widgetConfig, emit) { > })); > > const getWidgetSavedSettings = () => { >- const cookie = VueCookies.get( >+ const savedSettings = localStorage.getItem( > "widget-" + widgetConfig.id + "-settings" > ); >- return cookie || null; >+ return savedSettings || null; > }; > > onBeforeMount(() => { > if (widgetConfig.display === "dashboard") { >- const cookie = getWidgetSavedSettings(); >- if (cookie) { >- settings.value = cookie; >+ const savedSettings = getWidgetSavedSettings(); >+ if (savedSettings) { >+ settings.value = savedSettings; > } > } > }); >@@ -74,10 +73,9 @@ export function useBaseWidget(widgetConfig, emit) { > settings, > newSettings => { > if (widgetConfig.display === "dashboard" && newSettings !== null) { >- VueCookies.set( >+ localStorage.setItem( > "widget-" + widgetConfig.id + "-settings", >- JSON.stringify(newSettings), >- "30d" >+ JSON.stringify(newSettings) > ); > } > }, >diff --git a/package.json b/package.json >index c26e457a80c..df9c29893bb 100644 >--- a/package.json >+++ b/package.json >@@ -40,7 +40,6 @@ > "sass": "^1.58.1", > "style-loader": "^3.3.1", > "vue": "^3.5.4", >- "vue-cookies": "^1.8.6", > "vue-draggable-next": "^2.2.1", > "vue-flatpickr-component": "^9", > "vue-router": "^4.0.14", >-- >2.34.1
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
|
Splinter Review
Attachments on
bug 39320
:
187513
|
187514
|
187515
|
187516
|
187517
|
187518
|
187519
|
187520
|
187521
|
187522
|
187563
|
187568
|
187635
|
187636
|
187637
|
187638
|
187639
|
187640
|
187641
|
187642
|
187643
|
187644
|
187645
|
188094
|
188095
|
188096
|
188097
|
188098
|
188099
|
188100
|
188101
|
188102
|
188103
|
188104
|
188151
|
188279
|
188280
|
188281
|
188282
|
188283
|
188284
|
188285
|
188312
|
188315
|
188372
|
188375
|
188376
|
188637
|
188638
|
188639
|
188640
|
188641
|
188830
|
188831
|
188832
|
188833
|
188834
|
188835
|
188836
|
188837
|
188838
|
188839
|
188840
|
188841
|
188842
|
188843
|
188844
|
188845
|
188846
|
188847
|
188848
|
188849
|
188850
|
188851
|
188852
|
188853
|
188854
|
188855
|
188856
|
188857
|
188858
|
188859
|
188860
|
188861
|
188862
|
188863
|
188864
|
188885
|
188886
|
188887
|
188888
|
188889
|
188890
|
188891
|
188892
|
188893
|
188894
|
188895
|
188896
|
188897
|
188898
|
188899
|
188900
|
188901
|
188902
|
188903
|
188904
|
188905
|
188906
|
188907
|
188908
|
188909
|
188910
|
188911
|
188912
|
188913
|
188914
|
188915
|
188916
|
188917
|
188918
|
188919
|
188932
|
188938
|
188939
|
188940
|
188941
|
188942
|
188943
|
188944
|
188945
|
188946
|
188947
|
188948
|
188949
|
188950
| 188951 |
188952
|
188953
|
188954
|
188955
|
188956
|
188957
|
188958
|
188959
|
188960
|
188961
|
188962
|
188963
|
188964
|
188965
|
188966
|
188967
|
188968
|
188969
|
188970
|
188971
|
188972
|
188973
|
188974
|
188980
|
188981
|
188982
|
188987