Host Details Page: Hide action buttons for observers only (#1027)

This commit is contained in:
RachelElysia 2021-06-09 19:05:14 -04:00 committed by GitHub
parent c695093c70
commit 6e5a45eb60
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -53,6 +53,7 @@ export class HostDetailsPage extends Component {
queries: PropTypes.arrayOf(queryInterface),
queryErrors: PropTypes.object, // eslint-disable-line react/forbid-prop-types
isBasicTier: PropTypes.bool,
isOnlyObserver: PropTypes.bool,
};
static defaultProps = {
@ -195,11 +196,16 @@ export class HostDetailsPage extends Component {
renderActionButtons = () => {
const { toggleDeleteHostModal, toggleQueryHostModal } = this;
const { host } = this.props;
const { host, isOnlyObserver } = this.props;
const isOnline = host.status === "online";
const isOffline = host.status === "offline";
// Hide action buttons for global and team only observers
if (isOnlyObserver) {
return null;
}
return (
<div className={`${baseClass}__action-button-container`}>
<div data-tip data-for="query" data-tip-disable={isOnline}>
@ -640,7 +646,9 @@ const mapStateToProps = (state, ownProps) => {
const host = entityGetter(state).get("hosts").findBy({ id: hostID });
const { loading: isLoadingHost } = state.entities.hosts;
const config = state.app.config;
const currentUser = state.auth.user;
const isBasicTier = permissionUtils.isBasicTier(config);
const isOnlyObserver = permissionUtils.isOnlyObserver(currentUser);
return {
host,
@ -649,6 +657,7 @@ const mapStateToProps = (state, ownProps) => {
queries,
queryErrors,
isBasicTier,
isOnlyObserver,
};
};