diff --git a/src/users/viewUser.js b/src/users/viewUser.js index 2263b35115a4d08dfaa41cd6da8f037385c626c1..62183f299998142b1d6134a9f3eab9bb112a1678 100644 --- a/src/users/viewUser.js +++ b/src/users/viewUser.js @@ -87,6 +87,7 @@ export default class UserView extends ItemView { controller: this.eventsignups, keys: ['event.title_de'], titles: ['event'], + clickOnRows: (data) => { m.route.set(`/events/${data.event._id}`); }, }), ]), })), @@ -106,6 +107,7 @@ export default class UserView extends ItemView { controller: this.groupmemberships, keys: ['group.name', 'expiry'], titles: ['groupname', 'expiry'], + clickOnRows: (data) => { m.route.set(`/groups/${data.group._id}`); }, }), ]), })), diff --git a/src/views/tableView.js b/src/views/tableView.js index f352aac4b9a4818780c1f5d18bcb15b4ad5c1211..2baf072c8b53cefcd8b62b414624530ba2b48eb7 100644 --- a/src/views/tableView.js +++ b/src/views/tableView.js @@ -41,7 +41,13 @@ export default class TableView { * { embedded: { event: 1 } } to a list of eventsignups, * you can display event.title_de as a table key */ - constructor({ attrs: { keys, tileContent, clickOnRows = true } }) { + constructor({ + attrs: { + keys, + tileContent, + clickOnRows = (data) => { m.route.set(`/${data._links.self.href}`); }, + }, + }) { this.search = ''; this.tableKeys = keys; this.tileContent = tileContent; @@ -70,7 +76,7 @@ export default class TableView { compact: true, content: m('div', { onclick: () => { - if (this.clickOnRows) { m.route.set(`/${data._links.self.href}`); } + if (this.clickOnRows) this.clickOnRows(data); }, className: 'tableTile', style: { width: '100%', display: 'flex' },