Skip to content

Commit 86fcd2e

Browse files
554 Adds rowLinkMapper to navigate to user details on row click
1 parent 5cbe90f commit 86fcd2e

File tree

1 file changed

+15
-1
lines changed

1 file changed

+15
-1
lines changed

client/src/tabs/UserRoles.js

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ import {chipTypeForUserRole} from "../utils/Authority";
1212
import {allowedToRenewUserRole, AUTHORITIES, highestAuthority, isUserAllowed} from "../utils/UserRole";
1313
import ConfirmationDialog from "../components/ConfirmationDialog";
1414
import {deleteUserRole, searchUserRolesByRoleId, updateUserRoleEndData} from "../api";
15-
import {isEmpty, pseudoGuid} from "../utils/Utils";
15+
import {isEmpty, pseudoGuid, stopEvent} from "../utils/Utils";
1616
import {MinimalDateField} from "../components/MinimalDateField";
1717
import {defaultPagination, pageCount} from "../utils/Pagination";
1818
import debounce from "lodash.debounce";
@@ -355,6 +355,19 @@ export const UserRoles = ({role, guests}) => {
355355
},
356356
];
357357

358+
const isAllowedToSeeUserDetails =
359+
isUserAllowed(AUTHORITIES.SUPER_USER, user) || isUserAllowed(AUTHORITIES.INSTITUTION_ADMIN, user);
360+
361+
const navigateToUserDetails = (e, invitation) => {
362+
const path = `/profile/${invitation.user_id}`
363+
if (e.metaKey || e.ctrlKey) {
364+
window.open(path, '_blank');
365+
} else {
366+
stopEvent(e);
367+
navigate(path);
368+
}
369+
}
370+
358371
return (<div className="mod-user-roles">
359372
{confirmationOpen && <ConfirmationDialog isOpen={confirmationOpen}
360373
cancel={confirmation.cancel}
@@ -381,6 +394,7 @@ export const UserRoles = ({role, guests}) => {
381394
inputFocus={!searching}
382395
hideTitle={searching}
383396
busy={searching}
397+
rowLinkMapper={isAllowedToSeeUserDetails && navigateToUserDetails}
384398
/>
385399

386400
</div>)

0 commit comments

Comments
 (0)