Skip to content

Commit db2101c

Browse files
fix(LabelEditor): show admin-only checkbox to project admins
1 parent c6bffda commit db2101c

File tree

3 files changed

+5
-10
lines changed

3 files changed

+5
-10
lines changed

lib/manager/components/LabelEditor.js

Lines changed: 3 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -69,12 +69,6 @@ class LabelEditor extends React.Component<Props, State> {
6969
}
7070
}
7171

72-
userIsAdmin = (user: ManagerUserState) => {
73-
const {permissions} = user
74-
if (!permissions) return false
75-
else return permissions.isApplicationAdmin() || permissions.canAdministerAnOrganization()
76-
}
77-
7872
_onFormChange = ({target}: {target: HTMLInputElement}) => {
7973
const {checked, name, value: targetValue, type} = target
8074

@@ -146,7 +140,8 @@ class LabelEditor extends React.Component<Props, State> {
146140

147141
render () {
148142
const { newLabel, validation } = this.state
149-
const { user } = this.props
143+
const { user, projectId } = this.props
144+
const isProjectAdmin = user && user.permissions && user.permissions.isProjectAdmin(projectId)
150145

151146
return (
152147
<Form onChange={(e) => this._onFormChange(e)}>
@@ -186,7 +181,7 @@ class LabelEditor extends React.Component<Props, State> {
186181
<FormControl.Feedback />
187182
</FormGroup>
188183
</Col>
189-
{this.userIsAdmin(user) && (
184+
{isProjectAdmin && (
190185
<Col xs={9}>
191186
<Checkbox
192187
checked={newLabel.adminOnly}

lib/manager/components/LabelEditorModal.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@ export default class LabelEditorModal extends React.Component<
6060
<LabelEditor
6161
label={label}
6262
onDone={this.close}
63-
projectId={projectId}
63+
projectId={projectId || label.projectId}
6464
/>
6565
</Body>
6666
</Modal>

lib/manager/components/LabelPanel.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ export default class LabelPanel extends Component<Props> {
2929
const { labels, id: projectId } = project
3030

3131
const projectAdmin =
32-
user && user.permissions && user.permissions.isProjectAdmin(project.id)
32+
user && user.permissions && user.permissions.isProjectAdmin(projectId)
3333

3434
let labelBody = (
3535
<div className='noLabelsMessage'>

0 commit comments

Comments
 (0)