Skip to content

Commit

Permalink
UIU-2987 - Hide all actionalble buttons on user details pane
Browse files Browse the repository at this point in the history
  • Loading branch information
Terala-Priyanka committed Nov 21, 2023
1 parent 0de90a1 commit 814d7a8
Show file tree
Hide file tree
Showing 4 changed files with 24 additions and 8 deletions.
12 changes: 11 additions & 1 deletion src/components/UserDetailSections/PatronBlock/PatronBlock.js
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@ import {
} from '@folio/stripes/components';
import { stripesConnect } from '@folio/stripes/core';

import { isDcbUser } from '../../util';
import css from './PatronBlock.css';

const PATRON_BLOCKS_COLUMNS = {
Expand All @@ -37,6 +38,11 @@ class PatronBlock extends React.Component {
expanded: PropTypes.bool,
accordionId: PropTypes.string,
patronBlocks: PropTypes.arrayOf(PropTypes.object),
resources: PropTypes.shape({
selUser: PropTypes.shape({
records: PropTypes.arrayOf(PropTypes.object),
}),
}),
mutator: PropTypes.shape({
activeRecord: PropTypes.shape({
update: PropTypes.func,
Expand Down Expand Up @@ -160,7 +166,11 @@ class PatronBlock extends React.Component {
patronBlocks,
match: { params },
location,
resources,
} = this.props;

const user = resources?.selUser?.records[0];

const {
sortOrder,
sortDirection,
Expand Down Expand Up @@ -203,7 +213,7 @@ class PatronBlock extends React.Component {
id={accordionId}
onToggle={onToggle}
label={title}
displayWhenOpen={displayWhenOpen}
displayWhenOpen={!isDcbUser(user) ? displayWhenOpen : null}
>
<Row><Col xs>{items}</Col></Row>
</Accordion>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ import React, { useEffect, useState } from 'react';
import PropTypes from 'prop-types';
import { Link } from 'react-router-dom';
import { FormattedMessage } from 'react-intl';
import { get } from 'lodash';

import {
Row,
Expand All @@ -20,6 +21,7 @@ import {
refundStatuses,
refundClaimReturned,
} from '../../../constants';
import { isDcbUser } from '../../util';


/**
Expand All @@ -39,6 +41,7 @@ const UserAccounts = ({
},
resources,
}) => {
const user = get(resources, ['selUser', 'records', '0']);
const [totals, setTotals] = useState({
openAccountsCount: 0,
closedAccountsCount: 0,
Expand Down Expand Up @@ -98,7 +101,7 @@ const UserAccounts = ({
onToggle={onToggle}
label={<Headline size="large" tag="h3"><FormattedMessage id="ui-users.accounts.title.feeFine" /></Headline>}
displayWhenClosed={displayWhenClosed}
displayWhenOpen={displayWhenOpen}
displayWhenOpen={!isDcbUser(user) ? displayWhenOpen : null}
>
{accountsLoaded ?
<Row>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@ import {
getOpenRequestStatusesFilterString,
getClosedRequestStatusesFilterString,
getRequestUrl,
isDcbUser,
} from '../../util';

/**
Expand Down Expand Up @@ -107,12 +108,10 @@ class UserRequests extends React.Component {
expanded,
onToggle,
accordionId,
user: {
barcode,
id,
},
user,
resources
} = this.props;
const { barcode, id } = user;
const openRequestsTotal = _.get(resources.openRequestsCount, ['records', '0', 'totalRecords'], 0);
const closedRequestsTotal = _.get(resources.closedRequestsCount, ['records', '0', 'totalRecords'], 0);
const openRequestsCount = (_.get(resources.openRequestsCount, ['isPending'], true)) ? -1 : openRequestsTotal;
Expand Down Expand Up @@ -142,7 +141,7 @@ class UserRequests extends React.Component {
onToggle={onToggle}
label={<Headline size="large" tag="h3"><FormattedMessage id="ui-users.requests.title" /></Headline>}
displayWhenClosed={displayWhenClosed}
displayWhenOpen={displayWhenOpen}
displayWhenOpen={!isDcbUser(user) ? displayWhenOpen : null}
>
{requestsLoaded ?
<List
Expand Down
6 changes: 5 additions & 1 deletion src/views/UserDetail/UserDetail.js
Original file line number Diff line number Diff line change
Expand Up @@ -57,6 +57,7 @@ import { getFormAddressList } from '../../components/data/converters/address';
import {
getFullName,
isAffiliationsEnabled,
isDcbUser,
} from '../../components/util';
import RequestFeeFineBlockButtons from '../../components/RequestFeeFineBlockButtons';
import { departmentsShape } from '../../shapes';
Expand Down Expand Up @@ -430,6 +431,7 @@ class UserDetail extends React.Component {
const accounts = get(resources, ['accounts', 'records'], []);
const loans = get(resources, ['loanRecords', 'records'], []);
const isShadowUser = user?.type === USER_TYPES.SHADOW;
const isVirtualPatron = isDcbUser(user);

const feesFinesReportData = {
user,
Expand All @@ -446,7 +448,7 @@ class UserDetail extends React.Component {
|| this.props.stripes.hasPerm('ui-requests.all')
|| this.props.stripes.hasPerm('ui-users.delete,ui-users.opentransactions');

if (showActionMenu) {
if (showActionMenu && !isVirtualPatron) {
return (
<>
{!isShadowUser && (
Expand Down Expand Up @@ -624,6 +626,7 @@ class UserDetail extends React.Component {
const isAffiliationsVisible = isAffiliationsEnabled(user);

const isShadowUser = user?.type === USER_TYPES.SHADOW;
const isVirtualPatron = isDcbUser(user);
const showPatronBlocksSection = hasPatronBlocksPermissions && !isShadowUser;

if (this.userNotFound()) {
Expand Down Expand Up @@ -862,6 +865,7 @@ class UserDetail extends React.Component {
pathToNoteCreate="/users/notes/new"
pathToNoteDetails="/users/notes"
hideAssignButton
hideNewButton={isVirtualPatron}
/>
</IfPermission>
</IfInterface>
Expand Down

0 comments on commit 814d7a8

Please sign in to comment.