diff --git a/src/components/ProjectInfo/ProjectInfo.jsx b/src/components/ProjectInfo/ProjectInfo.jsx index 253d2b68a..9a925aec5 100644 --- a/src/components/ProjectInfo/ProjectInfo.jsx +++ b/src/components/ProjectInfo/ProjectInfo.jsx @@ -28,7 +28,7 @@ class ProjectInfo extends Component { } render() { - const { project, currentMemberRole, duration, canDeleteProject, onChangeStatus, directLinks, isManager } = this.props + const { project, currentMemberRole, duration, canDeleteProject, onChangeStatus, directLinks, isSuperUser } = this.props const { showDeleteConfirm } = this.state return (
@@ -54,7 +54,7 @@ class ProjectInfo extends Component { duration={duration} descLinesCount={4} onChangeStatus={onChangeStatus} - isManager={isManager} + isSuperUser={isSuperUser} /> ( +const DashboardView = ({project, currentMemberRole, route, params, isSuperUser }) => (
@@ -16,7 +16,7 @@ const DashboardView = ({project, currentMemberRole, route, params, isManager })
diff --git a/src/projects/detail/ProjectDetail.jsx b/src/projects/detail/ProjectDetail.jsx index d482e17c6..a692ab781 100644 --- a/src/projects/detail/ProjectDetail.jsx +++ b/src/projects/detail/ProjectDetail.jsx @@ -7,7 +7,7 @@ import { renderComponent, branch, compose, withProps } from 'recompose' import { loadProjectDashboard } from '../actions/projectDashboard' import { LOAD_PROJECT_FAILURE, PROJECT_ROLE_CUSTOMER, PROJECT_ROLE_OWNER, - ROLE_ADMINISTRATOR, ROLE_CONNECT_MANAGER + ROLE_ADMINISTRATOR } from '../../config/constants' import spinnerWhileLoading from '../../components/LoadingSpinner' import CoderBot from '../../components/CoderBot/CoderBot' @@ -30,7 +30,7 @@ const ProjectDetailView = (props) => { return React.cloneElement(child, { project: props.project, currentMemberRole: props.currentMemberRole, - isManager: props.isManager + isSuperUser: props.isSuperUser }) }) return
{children}
@@ -71,13 +71,13 @@ class ProjectDetail extends Component { render() { const currentMemberRole = this.getProjectRoleForCurrentUser(this.props) - const managerRoles = [ROLE_ADMINISTRATOR, ROLE_CONNECT_MANAGER] - const isManager = this.props.currentUserRoles.some((role) => managerRoles.indexOf(role) !== -1) + const powerRoles = [ROLE_ADMINISTRATOR] + const isSuperUser = this.props.currentUserRoles.some((role) => powerRoles.indexOf(role) !== -1) return ( ) } @@ -97,13 +97,13 @@ const mapStateToProps = ({projectState, projectDashboard, loadUser}) => { const mapDispatchToProps = { loadProjectDashboard } ProjectDetail.propTypes = { - project : PropTypes.object, + project: PropTypes.object, currentUserId: PropTypes.number.isRequired, error: PropTypes.oneOfType([ PropTypes.bool, PropTypes.object ]).isRequired, - isLoading : PropTypes.bool.isRequired + isLoading: PropTypes.bool.isRequired } export default withRouter(connect(mapStateToProps, mapDispatchToProps)(ProjectDetail)) diff --git a/src/projects/detail/containers/ProjectInfoContainer.js b/src/projects/detail/containers/ProjectInfoContainer.js index 4d185cdb0..e8b567fff 100644 --- a/src/projects/detail/containers/ProjectInfoContainer.js +++ b/src/projects/detail/containers/ProjectInfoContainer.js @@ -74,7 +74,7 @@ class ProjectInfoContainer extends React.Component { render() { const { duration } = this.state - const { project, currentMemberRole, isManager } = this.props + const { project, currentMemberRole, isSuperUser } = this.props let directLinks = null // check if direct links need to be added const isMemberOrCopilot = _.indexOf([PROJECT_ROLE_COPILOT, PROJECT_ROLE_MANAGER], currentMemberRole) > -1 @@ -107,7 +107,7 @@ class ProjectInfoContainer extends React.Component { onDeleteProject={this.onDeleteProject} onChangeStatus={this.onChangeStatus} directLinks={directLinks} - isManager={isManager} + isSuperUser={isSuperUser} /> -1)) + const canEdit = isSuperUser || (currentMemberRole + && (_.indexOf([PROJECT_ROLE_COPILOT, PROJECT_ROLE_MANAGER], currentMemberRole) > -1)) const progress = _.get(process, 'percent', 0) diff --git a/src/reducers/alerts.js b/src/reducers/alerts.js index 01e5d2547..95094a135 100644 --- a/src/reducers/alerts.js +++ b/src/reducers/alerts.js @@ -32,7 +32,10 @@ export default function(state = {}, action) { switch(action.type) { case CREATE_PROJECT_SUCCESS: { const name = _.truncate(action.payload.name, 20) - Alert.success(`Project '${name}' created`) + + //temporary workaround + setTimeout(() => { Alert.success(`Project '${name}' created`) }, 0) + return state }