diff --git a/frontend/src/pages/org-admin/index.js b/frontend/src/pages/org-admin/index.js index 42d6bc4b00..b3115e421f 100644 --- a/frontend/src/pages/org-admin/index.js +++ b/frontend/src/pages/org-admin/index.js @@ -34,6 +34,7 @@ class Org extends React.Component { isShowAddOrgUserDialog: false, isShowAddOrgAdminDialog: false, isInviteUserDialogOpen: false, + isShowAddDepartDialog: false, currentTab: 'users', }; } @@ -70,8 +71,11 @@ class Org extends React.Component { this.setState({isInviteUserDialogOpen: !this.state.isInviteUserDialogOpen}); } - render() { + toggleAddDepartDialog = () => { + this.setState({ isShowAddDepartDialog: !this.state.isShowAddDepartDialog}); + } + render() { let { isSidePanelClosed, currentTab, isShowAddOrgUserDialog, isShowAddOrgAdminDialog, isInviteUserDialogOpen } = this.state; let href = window.location.href; let newPath = 'groups/'; @@ -81,7 +85,13 @@ class Org extends React.Component { return (
- + - - + +
@@ -45,6 +46,11 @@ class MainPanel extends Component { {gettext('Add admin')} } + {(this.props.currentTab === 'departmentadmin' && !groupID) && + + }
diff --git a/frontend/src/pages/org-admin/org-department-item.js b/frontend/src/pages/org-admin/org-department-item.js index dde49685d5..75ec873e56 100644 --- a/frontend/src/pages/org-admin/org-department-item.js +++ b/frontend/src/pages/org-admin/org-department-item.js @@ -109,25 +109,35 @@ class OrgDepartmentItem extends React.Component {
-

- { this.state.groupID ? - {gettext('Departments')} - : {gettext('Departments')} - } - { - this.state.ancestorGroups.map(ancestor => { +
+

+ {this.state.groupID ? + {gettext('Departments')} + : {gettext('Departments')} + } + {this.state.ancestorGroups.map(ancestor => { let newHref = serviceURL + '/org/departmentadmin/groups/' + ancestor.id + '/'; return ( {' / '}{ancestor.name} ); - }) - } - { this.state.groupID && {' / '}{this.state.groupName} } -

+ })} + {this.state.groupID && {' / '}{this.state.groupName}} +

+
+ {this.state.groupID && +
+ +
+ }
- +
diff --git a/frontend/src/pages/org-admin/org-departments-list.js b/frontend/src/pages/org-admin/org-departments-list.js index d657d8c83d..80379fbe29 100644 --- a/frontend/src/pages/org-admin/org-departments-list.js +++ b/frontend/src/pages/org-admin/org-departments-list.js @@ -20,7 +20,6 @@ class OrgDepartmentsList extends React.Component { groups: null, groupID: -1, groupName: '', - showAddDepartDialog: false, showDeleteDepartDialog: false, showSetGroupQuotaDialog: false, }; @@ -42,10 +41,6 @@ class OrgDepartmentsList extends React.Component { } } - showAddDepartDialog = () => { - this.setState({ showAddDepartDialog: true }); - } - showDeleteDepartDialog = (group) => { this.setState({ showDeleteDepartDialog: true, groupID: group.id, groupName: group.name }); } @@ -56,7 +51,6 @@ class OrgDepartmentsList extends React.Component { toggleCancel = () => { this.setState({ - showAddDepartDialog: false, showDeleteDepartDialog: false, showSetGroupQuotaDialog: false, }); @@ -74,16 +68,12 @@ class OrgDepartmentsList extends React.Component { const groups = this.state.groups; let isSub = this.props.groupID ? true : false; let header = isSub ? gettext('Sub-departments') : gettext('Departments'); - let headerButton = isSub ? gettext('New Sub-department') : gettext('New Department'); let noGroup = isSub ? gettext('No sub-departments') : gettext('No departments'); return (

{header}

-
- -
{groups && groups.length > 0 ? @@ -115,13 +105,13 @@ class OrgDepartmentsList extends React.Component { }
- {this.state.showAddDepartDialog && ( + {this.props.isShowAddDepartDialog && ( )}