[MM-64491] Fix system attributes section not appearting w/o a license (#32133)
Этот коммит содержится в:
коммит произвёл
GitHub
родитель
2b8f7743b6
Коммит
037bff9aa3
@@ -83,6 +83,7 @@ import {
|
|||||||
SystemRolesFeatureDiscovery,
|
SystemRolesFeatureDiscovery,
|
||||||
} from './feature_discovery/features';
|
} from './feature_discovery/features';
|
||||||
import AttributeBasedAccessControlFeatureDiscovery from './feature_discovery/features/attribute_based_access_control';
|
import AttributeBasedAccessControlFeatureDiscovery from './feature_discovery/features/attribute_based_access_control';
|
||||||
|
import UserAttributesFeatureDiscovery from './feature_discovery/features/user_attributes';
|
||||||
import FeatureFlags, {messages as featureFlagsMessages} from './feature_flags';
|
import FeatureFlags, {messages as featureFlagsMessages} from './feature_flags';
|
||||||
import GroupDetails from './group_settings/group_details';
|
import GroupDetails from './group_settings/group_details';
|
||||||
import GroupSettings from './group_settings/group_settings';
|
import GroupSettings from './group_settings/group_settings';
|
||||||
@@ -584,10 +585,7 @@ const AdminDefinition: AdminDefinitionType = {
|
|||||||
/>
|
/>
|
||||||
),
|
),
|
||||||
sectionTitle: defineMessage({id: 'admin.sidebar.systemAttributes', defaultMessage: 'System Attributes'}),
|
sectionTitle: defineMessage({id: 'admin.sidebar.systemAttributes', defaultMessage: 'System Attributes'}),
|
||||||
isHidden: it.not(it.all(
|
isHidden: it.not(it.userHasReadPermissionOnSomeResources(RESOURCE_KEYS.USER_MANAGEMENT)),
|
||||||
it.minLicenseTier(LicenseSkus.Enterprise),
|
|
||||||
it.configIsTrue('FeatureFlags', 'CustomProfileAttributes'),
|
|
||||||
)),
|
|
||||||
subsections: {
|
subsections: {
|
||||||
system_properties: {
|
system_properties: {
|
||||||
url: 'system_attributes/user_attributes',
|
url: 'system_attributes/user_attributes',
|
||||||
@@ -602,6 +600,29 @@ const AdminDefinition: AdminDefinitionType = {
|
|||||||
component: SystemProperties,
|
component: SystemProperties,
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
user_attributes_feature_discovery: {
|
||||||
|
url: 'system_attributes/user_attributes',
|
||||||
|
isDiscovery: true,
|
||||||
|
title: defineMessage({id: 'admin.sidebar.user_attributes', defaultMessage: 'User Attributes'}),
|
||||||
|
isHidden: it.any(
|
||||||
|
it.minLicenseTier(LicenseSkus.Enterprise),
|
||||||
|
it.not(it.enterpriseReady),
|
||||||
|
it.configIsFalse('FeatureFlags', 'CustomProfileAttributes'),
|
||||||
|
),
|
||||||
|
schema: {
|
||||||
|
id: 'SystemProperties',
|
||||||
|
name: defineMessage({id: 'admin.sidebar.user_attributes', defaultMessage: 'User Attributes'}),
|
||||||
|
settings: [
|
||||||
|
{
|
||||||
|
type: 'custom',
|
||||||
|
component: UserAttributesFeatureDiscovery,
|
||||||
|
key: 'UserAttributesFeatureDiscovery',
|
||||||
|
isDisabled: it.not(it.userHasWritePermissionOnResource(RESOURCE_KEYS.ABOUT.EDITION_AND_LICENSE)),
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
restrictedIndicator: getRestrictedIndicator(true, LicenseSkus.EnterpriseAdvanced),
|
||||||
|
},
|
||||||
access_control_policy_details_edit: {
|
access_control_policy_details_edit: {
|
||||||
url: `system_attributes/attribute_based_access_control/edit_policy/:policy_id(${ID_PATH_PATTERN})`,
|
url: `system_attributes/attribute_based_access_control/edit_policy/:policy_id(${ID_PATH_PATTERN})`,
|
||||||
isHidden: it.any(
|
isHidden: it.any(
|
||||||
|
|||||||
@@ -0,0 +1,37 @@
|
|||||||
|
// Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved.
|
||||||
|
// See LICENSE.txt for license information.
|
||||||
|
|
||||||
|
import React from 'react';
|
||||||
|
import {defineMessage} from 'react-intl';
|
||||||
|
|
||||||
|
import {LicenseSkus} from 'utils/constants';
|
||||||
|
|
||||||
|
import GroupsSVG from './images/groups_svg';
|
||||||
|
|
||||||
|
import FeatureDiscovery from '../index';
|
||||||
|
|
||||||
|
const UserAttributesFeatureDiscovery: React.FC = () => {
|
||||||
|
return (
|
||||||
|
<FeatureDiscovery
|
||||||
|
featureName='user_attributes'
|
||||||
|
minimumSKURequiredForFeature={LicenseSkus.Enterprise}
|
||||||
|
title={defineMessage({
|
||||||
|
id: 'admin.user_attributes_feature_discovery.title',
|
||||||
|
defaultMessage: 'Add critical metadata to user profiles using custom user attributes with Mattermost Enterprise',
|
||||||
|
})}
|
||||||
|
copy={defineMessage({
|
||||||
|
id: 'admin.user_attributes_feature_discovery.desc',
|
||||||
|
defaultMessage: 'Define and manage organization-specific user profile attributes as that can synchronize with your AD/LDAP or SAML identity provider.',
|
||||||
|
})}
|
||||||
|
learnMoreURL='https://docs.mattermost.com/manage/admin/user-attributes.html'
|
||||||
|
featureDiscoveryImage={
|
||||||
|
<GroupsSVG
|
||||||
|
width={294}
|
||||||
|
height={180}
|
||||||
|
/>
|
||||||
|
}
|
||||||
|
/>
|
||||||
|
);
|
||||||
|
};
|
||||||
|
|
||||||
|
export default UserAttributesFeatureDiscovery;
|
||||||
@@ -3079,6 +3079,8 @@
|
|||||||
"admin.teamSettings.teamDetail.teamName": "<b>Team Name</b>:",
|
"admin.teamSettings.teamDetail.teamName": "<b>Team Name</b>:",
|
||||||
"admin.trial_banner.trial-request.error": "Trial license could not be retrieved. Visit <link>{trialInfoLink}</link> to request a license.",
|
"admin.trial_banner.trial-request.error": "Trial license could not be retrieved. Visit <link>{trialInfoLink}</link> to request a license.",
|
||||||
"admin.true": "True",
|
"admin.true": "True",
|
||||||
|
"admin.user_attributes_feature_discovery.desc": "Define and manage organization-specific user profile attributes as that can synchronize with your AD/LDAP or SAML identity provider.",
|
||||||
|
"admin.user_attributes_feature_discovery.title": "Add critical metadata to user profiles using custom user attributes with Mattermost Enterprise",
|
||||||
"admin.user_grid.channel_admin": "Channel Admin",
|
"admin.user_grid.channel_admin": "Channel Admin",
|
||||||
"admin.user_grid.guest": "Guest",
|
"admin.user_grid.guest": "Guest",
|
||||||
"admin.user_grid.name": "Name",
|
"admin.user_grid.name": "Name",
|
||||||
|
|||||||
Ссылка в новой задаче
Block a user