Skip to content

Commit

Permalink
UITEN-318 Permissions govern view/editing floating collection
Browse files Browse the repository at this point in the history
Settings > Tenant > Locations setup > Locations.

Permissions now govern viewing and editing floating collection.

Last part of UITEN-318.
  • Loading branch information
MikeTaylor committed Jan 21, 2025
1 parent f70f6e6 commit 99f0fcc
Show file tree
Hide file tree
Showing 5 changed files with 38 additions and 29 deletions.
2 changes: 1 addition & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
* [UITEN-316](https://folio-org.atlassian.net/browse/UITEN-316) Fix code to pass ESLint successfully.
* [UITEN-314](https://folio-org.atlassian.net/browse/UITEN-314) Settings > Tenant > Locations setup > Locations. Enable and Display floating collection.
* [UITEN-317](https://folio-org.atlassian.net/browse/UITEN-317) Settings > Tenant > Locations setup > Locations. Display in detailed view when floating collection is enabled or not enabled.
* [UITEN-318](https://folio-org.atlassian.net/browse/UITEN-318) Permissions. Settings (tenant). View and be able to enable to set floating collection
* [UITEN-318](https://folio-org.atlassian.net/browse/UITEN-318) Settings > Tenant > Locations setup > Locations. Permissions govern viewing and editing floating collection.

## [9.0.0](https://github.com/folio-org/ui-tenant-settings/tree/v9.0.0)(2024-10-30)

Expand Down
3 changes: 2 additions & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -193,7 +193,8 @@
"permissionName": "ui-tenant-settings.settings.location.floating.edit",
"displayName": "Settings (tenant): Can view and edit floating collection flag",
"subPermissions": [
"ui-tenant-settings.settings.location"
"ui-tenant-settings.settings.location",
"ui-tenant-settings.settings.location.floating.view"
],
"visible": true
},
Expand Down
26 changes: 14 additions & 12 deletions src/settings/LocationLocations/LocationDetail.js
Original file line number Diff line number Diff line change
Expand Up @@ -278,18 +278,20 @@ const LocationDetail = ({
</KeyValue>
</Col>
</Row>
<Row>
<Col xs={12}>
<KeyValue
label={<FormattedMessage id="ui-tenant-settings.settings.location.floating" />}
>
{loc.isFloatingCollection ?
<FormattedMessage id="ui-tenant-settings.settings.location.floating.enabled" /> :
<NoValue />
}
</KeyValue>
</Col>
</Row>
<IfPermission perm="ui-tenant-settings.settings.location.floating.view">
<Row>
<Col xs={12}>
<KeyValue
label={<FormattedMessage id="ui-tenant-settings.settings.location.floating" />}
>
{loc.isFloatingCollection ?
<FormattedMessage id="ui-tenant-settings.settings.location.floating.enabled" /> :
<NoValue />
}
</KeyValue>
</Col>
</Row>
</IfPermission>
<Row>
<Col xs={12}>
<KeyValue
Expand Down
29 changes: 16 additions & 13 deletions src/settings/LocationLocations/LocationForm/LocationForm.js
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ import {
TitleManager,
useOkapiKy,
useStripes,
IfPermission,
} from '@folio/stripes/core';
import {
Accordion,
Expand Down Expand Up @@ -289,19 +290,21 @@ const LocationForm = ({
/>
</Col>
</Row>
<h3>Floating collection</h3>
<Row>
<Col xs={12}>
<Field
label={<FormattedMessage id="ui-tenant-settings.settings.location.locations.floating" />}
name="isFloatingCollection"
id="input-location-floating"
component={Checkbox}
type="checkbox"
/>
<br />
</Col>
</Row>
<IfPermission perm="ui-tenant-settings.settings.location.floating.edit">
<h3>Floating collection</h3>
<Row>
<Col xs={12}>
<Field
label={<FormattedMessage id="ui-tenant-settings.settings.location.locations.floating" />}
name="isFloatingCollection"
id="input-location-floating"
component={Checkbox}
type="checkbox"
/>
<br />
</Col>
</Row>
</IfPermission>
<Row>
<Col xs={12}>
<Field
Expand Down
7 changes: 5 additions & 2 deletions src/settings/LocationLocations/LocationManager.js
Original file line number Diff line number Diff line change
Expand Up @@ -70,8 +70,6 @@ const initialSort = (location) => {
return { sort, sortDir };
};

const locationListVisibleColumns = ['isActive', 'name', 'code', 'isFloatingCollection'];

const locationListColumnMapping = {
isActive: <FormattedMessage id="ui-tenant-settings.settings.location.locations.status" />,
name: <FormattedMessage id="ui-tenant-settings.settings.location.locations.detailsName" />,
Expand Down Expand Up @@ -407,6 +405,11 @@ const LocationManager = ({ label }) => {
const container = document.getElementById('ModuleContainer');
if (!container) return (<div />);

const locationListVisibleColumns = ['isActive', 'name', 'code'];
if (stripes.hasPerm('ui-tenant-settings.settings.location.floating.view')) {
locationListVisibleColumns.push('isFloatingCollection');
}

return (
<Paneset
defaultWidth="fill"
Expand Down

0 comments on commit 99f0fcc

Please sign in to comment.