diff --git a/Koha/Schema/Result/ErmAgreement.pm b/Koha/Schema/Result/ErmAgreement.pm
index 643f6189c1..b2b97e4f3e 100644
--- a/Koha/Schema/Result/ErmAgreement.pm
+++ b/Koha/Schema/Result/ErmAgreement.pm
@@ -270,6 +270,13 @@ __PACKAGE__->many_to_many("packages", "erm_eholdings_packages_agreements", "pack
# Created by DBIx::Class::Schema::Loader v0.07049 @ 2022-11-11 11:52:09
# DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:N93LnvdKirtuV6BSrTGzVg
+__PACKAGE__->has_many(
+ "user_roles",
+ "Koha::Schema::Result::ErmUserRole",
+ { "foreign.agreement_id" => "self.agreement_id" },
+ { cascade_copy => 0, cascade_delete => 0 },
+);
+
__PACKAGE__->add_columns(
'+is_perpetual' => { is_boolean => 1 }
);
diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/erm/erm.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/erm/erm.tt
index 9bf3ee0080..e356e85dd8 100644
--- a/koha-tmpl/intranet-tmpl/prog/en/modules/erm/erm.tt
+++ b/koha-tmpl/intranet-tmpl/prog/en/modules/erm/erm.tt
@@ -42,6 +42,8 @@
const logged_in_user_lists = [% To.json(logged_in_user.virtualshelves.unblessed) | $raw %];
+ const logged_in_user = [% To.json(logged_in_user.unblessed) | $raw %];
+
[% Asset.js("js/vue/dist/erm.js") | $raw %]
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 7bec5c2c6a..1f1ff88250 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
@@ -17,6 +17,14 @@
:config="fp_config"
/>
+
+
+
{
e["_id"] = e["id"]
@@ -203,11 +215,17 @@ export default {
{ _id: 1, _str: _("Yes") },
]
+ let additional_filters = {
+ "user_roles.user_id": function () {
+ return filters.by_mine ? logged_in_user.borrowernumber : ""
+ },
+ }
const table = $("#" + table_id).kohaTable(
{
ajax: {
url: datatable_url,
},
+ embed: ["user_roles"],
order: [[0, "asc"]],
autoWidth: false,
search: { search: default_search },
@@ -455,7 +473,8 @@ export default {
},
},
agreement_table_settings,
- 1
+ 1,
+ additional_filters
)
},
},