diff --git a/scm-ui/public/locales/en/permissions.json b/scm-ui/public/locales/en/permissions.json index 95d7c785ee..6341bd93a4 100644 --- a/scm-ui/public/locales/en/permissions.json +++ b/scm-ui/public/locales/en/permissions.json @@ -24,6 +24,6 @@ "add-permission": { "add-permission-heading": "Add new Permission", "submit-button": "Submit", - "name-input-invalid": "Permission already exists!" + "name-input-invalid": "Permission is not allowed to start with an '@' or it already exists!" } } diff --git a/scm-ui/src/repos/permissions/components/CreatePermissionForm.js b/scm-ui/src/repos/permissions/components/CreatePermissionForm.js index 7b0bb46d74..088daea5ab 100644 --- a/scm-ui/src/repos/permissions/components/CreatePermissionForm.js +++ b/scm-ui/src/repos/permissions/components/CreatePermissionForm.js @@ -46,7 +46,10 @@ class CreatePermissionForm extends React.Component { label={t("permission.name")} value={name ? name : ""} onChange={this.handleNameChange} - validationError={this.currentPermissionIncludeName()} + validationError={ + this.currentPermissionIncludeName() || + this.state.name.startsWith("@") + } errorMessage={t("add-permission.name-input-invalid")} /> { if ( this.state.name === null || this.state.name === "" || - this.currentPermissionIncludeName() + this.currentPermissionIncludeName() || + this.state.name.startsWith("@") ) { return true; } diff --git a/scm-ui/src/repos/permissions/containers/Permissions.js b/scm-ui/src/repos/permissions/containers/Permissions.js index 7e41f2ff59..ff4a40d6ad 100644 --- a/scm-ui/src/repos/permissions/containers/Permissions.js +++ b/scm-ui/src/repos/permissions/containers/Permissions.js @@ -121,6 +121,7 @@ class Permissions extends React.Component { {t("permission.group-permission")} {t("permission.type")} +