Bugzilla – Attachment 146617 Details for
Bug 32932
Re-structure Vue router-links to use "name" instead of urls
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Bug_32932: Update router to use object references - agreements
Bug32932-Update-router-to-use-object-references---.patch (text/plain), 20.72 KB, created by
Matt Blenkinsop
on 2023-02-14 14:01:45 UTC
(
hide
)
Description:
Bug_32932: Update router to use object references - agreements
Filename:
MIME Type:
Creator:
Matt Blenkinsop
Created:
2023-02-14 14:01:45 UTC
Size:
20.72 KB
patch
obsolete
>From 472f50b09586fb760958b24af5fc2c84702ac9db Mon Sep 17 00:00:00 2001 >From: Matt Blenkinsop <matt.blenkinsop@ptfs-europe.com> >Date: Thu, 9 Feb 2023 16:18:10 +0000 >Subject: [PATCH] Bug_32932: Update router to use object references - > agreements > >This patch updates the Vue files for ERM to use router object links rather than urls - this will make it much simpler to maintain the router if urls need to be updated. This first patch only updates the files in the agreements section of ERM as a first step to introduce the topic for discussion. > >Test plan: >1) Apply patch >2) Navigate to the Agreements section of ERM and click on different navigation links/buttons >3) The links/buttons should all work as normal >4) Review the code to see that the component files now refer back to the router using objects rather than url strings >--- > .../vue/components/ERM/AgreementsFormAdd.vue | 6 ++-- > .../ERM/AgreementsFormConfirmDelete.vue | 4 +-- > .../js/vue/components/ERM/AgreementsList.vue | 11 +++++--- > .../js/vue/components/ERM/AgreementsShow.vue | 14 +++++----- > .../vue/components/ERM/AgreementsToolbar.vue | 2 +- > .../prog/js/vue/components/ERM/ERMMain.vue | 2 +- > koha-tmpl/intranet-tmpl/prog/js/vue/routes.js | 28 +++++++++++++++++++ > 7 files changed, 49 insertions(+), 18 deletions(-) > >diff --git a/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/AgreementsFormAdd.vue b/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/AgreementsFormAdd.vue >index b21340f562a..7a401e639cd 100644 >--- a/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/AgreementsFormAdd.vue >+++ b/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/AgreementsFormAdd.vue >@@ -171,7 +171,7 @@ > <fieldset class="action"> > <input type="submit" value="Submit" /> > <router-link >- to="/cgi-bin/koha/erm/agreements" >+ :to="{ name: 'AgreementsList' }" > role="button" > class="cancel" > >{{ $__("Cancel") }}</router-link >@@ -386,10 +386,10 @@ export default { > fetch(apiUrl, options) > .then(response => { > if (response.status == 200) { >- this.$router.push("/cgi-bin/koha/erm/agreements") >+ this.$router.push({ name: 'AgreementsList' }) > setMessage(this.$__("Agreement updated")) > } else if (response.status == 201) { >- this.$router.push("/cgi-bin/koha/erm/agreements") >+ this.$router.push({ name: 'AgreementsList' }) > setMessage(this.$__("Agreement created")) > } else { > setError(response.message || response.statusText) >diff --git a/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/AgreementsFormConfirmDelete.vue b/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/AgreementsFormConfirmDelete.vue >index 5a98d042046..0b1b45fed98 100644 >--- a/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/AgreementsFormConfirmDelete.vue >+++ b/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/AgreementsFormConfirmDelete.vue >@@ -24,7 +24,7 @@ > :value="$__('Yes, delete')" > /> > <router-link >- to="/cgi-bin/koha/erm/agreements" >+ :to="{ name: 'AgreementsList' }" > role="button" > class="cancel" > >{{ $__("No, do not delete") }}</router-link >@@ -73,7 +73,7 @@ export default { > .then(response => { > if (response.status == 204) { > setMessage(this.$__("Agreement deleted")) >- this.$router.push("/cgi-bin/koha/erm/agreements") >+ this.$router.push({ name: 'AgreementsList' }) > } else { > setError(response.message || response.statusText) > } >diff --git a/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/AgreementsList.vue b/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/AgreementsList.vue >index e376b3c3198..dd7ed2ae57c 100644 >--- a/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/AgreementsList.vue >+++ b/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/AgreementsList.vue >@@ -98,16 +98,18 @@ export default { > this.initialized = true > }, > show_agreement: function (agreement_id) { >- this.$router.push("/cgi-bin/koha/erm/agreements/" + agreement_id) >+ this.$router.push( >+ { name: 'AgreementsShow', params: { agreement_id: agreement_id }} >+ ) > }, > edit_agreement: function (agreement_id) { > this.$router.push( >- "/cgi-bin/koha/erm/agreements/edit/" + agreement_id >+ { name: 'AgreementsFormAddEdit', params: { agreement_id: agreement_id }} > ) > }, > delete_agreement: function (agreement_id) { > this.$router.push( >- "/cgi-bin/koha/erm/agreements/delete/" + agreement_id >+ { name: 'AgreementsFormConfirmDelete', params: { agreement_id: agreement_id }} > ) > }, > select_agreement: function (agreement_id) { >@@ -116,8 +118,9 @@ export default { > }, > filter_table: async function () { > if (this.before_route_entered) { >+ let { href } = this.$router.resolve({ name: 'AgreementsList' }) > let new_route = build_url( >- "/cgi-bin/koha/erm/agreements", >+ href, > this.filters > ) > this.$router.push(new_route) >diff --git a/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/AgreementsShow.vue b/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/AgreementsShow.vue >index df8afa093f7..49e86dac023 100644 >--- a/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/AgreementsShow.vue >+++ b/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/AgreementsShow.vue >@@ -5,13 +5,13 @@ > {{ $__("Agreement #%s").format(agreement.agreement_id) }} > <span class="action_links"> > <router-link >- :to="`/cgi-bin/koha/erm/agreements/edit/${agreement.agreement_id}`" >+ :to="{ name: 'AgreementsFormAddEdit', params: { agreement_id: agreement.agreement_id } }" > :title="$__('Edit')" > ><i class="fa fa-pencil"></i > ></router-link> > > <router-link >- :to="`/cgi-bin/koha/erm/agreements/delete/${agreement.agreement_id}`" >+ :to="{ name: 'AgreementsFormConfirmDelete', params: { agreement_id: agreement.agreement_id } }" > :title="$__('Delete')" > ><i class="fa fa-trash"></i > ></router-link> >@@ -159,7 +159,7 @@ > > > <td> > <router-link >- :to="`/cgi-bin/koha/erm/licenses/${agreement_license.license_id}`" >+ :to="{ name: 'LicensesShow', params: { license_id: agreement_license.license_id} }" > > > {{ agreement_license.license.name }} > </router-link> >@@ -196,7 +196,7 @@ > > > <span > ><router-link >- :to="`/cgi-bin/koha/erm/agreements/${relationship.related_agreement.agreement_id}`" >+ :to="{ name: 'AgreementsShow', params: { agreement_id: relationship.related_agreement.agreement_id } }" > >{{ > relationship.related_agreement.name > }}</router-link >@@ -228,7 +228,7 @@ > " > > > <router-link >- :to="`/cgi-bin/koha/erm/eholdings/ebsco/packages/${agreement_package.package.external_id}`" >+ :to="{ name: 'EHoldingsEBSCOPackagesShow', params: { package_id: agreement_package.package.external_id } }" > >{{ > agreement_package.package.name > }}</router-link >@@ -237,7 +237,7 @@ > > > <span v-else > ><router-link >- :to="`/cgi-bin/koha/erm/eholdings/local/packages/${agreement_package.package.package_id}`" >+ :to="{ name: 'EHoldingsLocalPackagesShow', params: { package_id: agreement_package.package.package_id } }" > >{{ > agreement_package.package.name > }}</router-link >@@ -288,7 +288,7 @@ > </fieldset> > <fieldset class="action"> > <router-link >- to="/cgi-bin/koha/erm/agreements" >+ :to="{ name: 'AgreementsList'}" > role="button" > class="cancel" > >{{ $__("Close") }}</router-link >diff --git a/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/AgreementsToolbar.vue b/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/AgreementsToolbar.vue >index 035c3266835..46b927187f6 100644 >--- a/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/AgreementsToolbar.vue >+++ b/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/AgreementsToolbar.vue >@@ -1,7 +1,7 @@ > <template> > <div id="toolbar" class="btn-toolbar"> > <router-link >- to="/cgi-bin/koha/erm/agreements/add" >+ :to="{ name: 'AgreementsFormAdd'}" > class="btn btn-default" > ><font-awesome-icon icon="plus" /> > {{ $__("New agreement") }}</router-link >diff --git a/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/ERMMain.vue b/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/ERMMain.vue >index e06683ed2cd..f7e24523a2f 100644 >--- a/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/ERMMain.vue >+++ b/koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/ERMMain.vue >@@ -18,7 +18,7 @@ > <ul> > <li> > <router-link >- to="/cgi-bin/koha/erm/agreements" >+ :to="{ name: 'AgreementsList'}" > > > <i class="fa fa-check-circle-o"></i> > {{ $__("Agreements") }}</router-link >diff --git a/koha-tmpl/intranet-tmpl/prog/js/vue/routes.js b/koha-tmpl/intranet-tmpl/prog/js/vue/routes.js >index 62421c2e612..f906f5222ac 100644 >--- a/koha-tmpl/intranet-tmpl/prog/js/vue/routes.js >+++ b/koha-tmpl/intranet-tmpl/prog/js/vue/routes.js >@@ -126,6 +126,7 @@ export const routes = [ > }, > { > path: "/cgi-bin/koha/erm/erm.pl", >+ name: "ERMHome", > component: ERMHome, > meta: { > breadcrumb: () => [breadcrumbs.home, breadcrumbs.erm_home], >@@ -136,6 +137,7 @@ export const routes = [ > children: [ > { > path: "", >+ name: "AgreementsList", > component: AgreementsList, > meta: { > breadcrumb: () => breadcrumb_paths.agreements, >@@ -143,6 +145,7 @@ export const routes = [ > }, > { > path: ":agreement_id", >+ name: "AgreementsShow", > component: AgreementsShow, > meta: { > breadcrumb: () => >@@ -154,6 +157,7 @@ export const routes = [ > }, > { > path: "delete/:agreement_id", >+ name: "AgreementsFormConfirmDelete", > component: AgreementsFormConfirmDelete, > meta: { > breadcrumb: () => >@@ -165,6 +169,7 @@ export const routes = [ > }, > { > path: "add", >+ name: "AgreementsFormAdd", > component: AgreementsFormAdd, > meta: { > breadcrumb: () => >@@ -176,6 +181,7 @@ export const routes = [ > }, > { > path: "edit/:agreement_id", >+ name: "AgreementsFormAddEdit", > component: AgreementsFormAdd, > meta: { > breadcrumb: () => >@@ -213,6 +219,7 @@ export const routes = [ > children: [ > { > path: "", >+ name: "EHoldingsLocalPackagesList", > component: EHoldingsLocalPackagesList, > meta: { > breadcrumb: () => >@@ -225,6 +232,7 @@ export const routes = [ > }, > { > path: ":package_id", >+ name: "EHoldingsLocalPackagesShow", > component: EHoldingsLocalPackagesShow, > meta: { > breadcrumb: () => >@@ -240,6 +248,7 @@ export const routes = [ > }, > { > path: "delete/:package_id", >+ name: "EHoldingsLocalPackagesFormConfirmDelete", > component: > EHoldingsLocalPackagesFormConfirmDelete, > meta: { >@@ -256,6 +265,7 @@ export const routes = [ > }, > { > path: "add", >+ name: "EHoldingsLocalPackagesFormAdd", > component: EHoldingsLocalPackagesFormAdd, > meta: { > breadcrumb: () => >@@ -271,6 +281,7 @@ export const routes = [ > }, > { > path: "edit/:package_id", >+ name: "EHoldingsLocalPackagesFormAddEdit", > component: EHoldingsLocalPackagesFormAdd, > meta: { > breadcrumb: () => >@@ -291,6 +302,7 @@ export const routes = [ > children: [ > { > path: "", >+ name: "EHoldingsLocalTitlesList", > component: EHoldingsLocalTitlesList, > meta: { > breadcrumb: () => >@@ -302,6 +314,7 @@ export const routes = [ > }, > { > path: ":title_id", >+ name: "EHoldingsLocalTitlesShow", > component: EHoldingsLocalTitlesShow, > meta: { > breadcrumb: () => >@@ -317,6 +330,7 @@ export const routes = [ > }, > { > path: "delete/:title_id", >+ name: "EHoldingsLocalTitlesFormConfirmDelete", > component: > EHoldingsLocalTitlesFormConfirmDelete, > meta: { >@@ -333,6 +347,7 @@ export const routes = [ > }, > { > path: "add", >+ name: "EHoldingsLocalTitlesFormAdd", > component: EHoldingsLocalTitlesFormAdd, > meta: { > breadcrumb: () => >@@ -348,6 +363,7 @@ export const routes = [ > }, > { > path: "edit/:title_id", >+ name: "EHoldingsLocalTitlesFormAddEdit", > component: EHoldingsLocalTitlesFormAdd, > meta: { > breadcrumb: () => >@@ -363,6 +379,7 @@ export const routes = [ > }, > { > path: "import", >+ name: "EHoldingsLocalTitlesFormImport", > component: EHoldingsLocalTitlesFormImport, > meta: { > breadcrumb: () => >@@ -380,6 +397,7 @@ export const routes = [ > }, > { > path: "resources/:resource_id", >+ name: "EHoldingsLocalResourcesShow", > component: EHoldingsLocalResourcesShow, > meta: { > breadcrumb: () => >@@ -408,6 +426,7 @@ export const routes = [ > children: [ > { > path: "", >+ name: "EHoldingsEBSCOPackagesList", > component: EHoldingsEBSCOPackagesList, > meta: { > breadcrumb: () => >@@ -420,6 +439,7 @@ export const routes = [ > }, > { > path: ":package_id", >+ name: "EHoldingsEBSCOPackagesShow", > component: EHoldingsEBSCOPackagesShow, > meta: { > breadcrumb: () => >@@ -440,6 +460,7 @@ export const routes = [ > children: [ > { > path: "", >+ name: "EHoldingsEBSCOTitlesList", > component: EHoldingsEBSCOTitlesList, > meta: { > breadcrumb: () => >@@ -451,6 +472,7 @@ export const routes = [ > }, > { > path: ":title_id", >+ name: "EHoldingsEBSCOTitlesShow", > component: EHoldingsEBSCOTitlesShow, > meta: { > breadcrumb: () => >@@ -468,6 +490,7 @@ export const routes = [ > }, > { > path: "resources/:resource_id", >+ name: "EHoldingsEBSCOResourcesShow", > component: EHoldingsEBSCOResourcesShow, > meta: { > breadcrumb: () => >@@ -489,6 +512,7 @@ export const routes = [ > children: [ > { > path: "", >+ name: "LicensesList", > component: LicensesList, > meta: { > breadcrumb: () => breadcrumb_paths.licenses, >@@ -496,6 +520,7 @@ export const routes = [ > }, > { > path: ":license_id", >+ name: "LicensesShow", > component: LicensesShow, > meta: { > breadcrumb: () => >@@ -507,6 +532,7 @@ export const routes = [ > }, > { > path: "delete/:license_id", >+ name: "LicensesFormConfirmDelete", > component: LicensesFormConfirmDelete, > meta: { > breadcrumb: () => >@@ -518,6 +544,7 @@ export const routes = [ > }, > { > path: "add", >+ name: "LicensesFormAdd", > component: LicensesFormAdd, > meta: { > breadcrumb: () => >@@ -529,6 +556,7 @@ export const routes = [ > }, > { > path: "edit/:license_id", >+ name: "LicensesFormAddEdit", > component: LicensesFormAdd, > meta: { > breadcrumb: () => >-- >2.37.1 (Apple Git-137.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 32932
:
146439
|
146442
|
146616
|
146617
|
146618
|
146624
|
146625
|
146965
|
146966
|
146967
|
146968
|
147119
|
147120
|
147121
|
147122
|
148115
|
148551
|
148552
|
148553
|
148554
|
148558
|
148559
|
148560
|
148561
|
149210
|
149707
|
149709
|
149934
|
149935
|
151529
|
152231