From 8ebd720f8ef0afbd99462e75089321609ccaf96f Mon Sep 17 00:00:00 2001 From: Eduard Heimbuch Date: Wed, 15 May 2019 15:21:43 +0200 Subject: [PATCH] prepare RepoRoleDetailsView --- .../roles/components/PermissionRoleRow.js | 3 ++- .../roles/containers/SingleRepositoryRole.js | 24 +++++++++++-------- 2 files changed, 16 insertions(+), 11 deletions(-) diff --git a/scm-ui/src/config/roles/components/PermissionRoleRow.js b/scm-ui/src/config/roles/components/PermissionRoleRow.js index ba38fc5c4e..9f06eb56de 100644 --- a/scm-ui/src/config/roles/components/PermissionRoleRow.js +++ b/scm-ui/src/config/roles/components/PermissionRoleRow.js @@ -20,7 +20,8 @@ class PermissionRoleRow extends React.Component { render() { const { baseUrl, role } = this.props; - const to = `${baseUrl}/${encodeURIComponent(role.name)}/info`; + const singleRepoRoleUrl = baseUrl.substring(0, baseUrl.length - 1); + const to = `${singleRepoRoleUrl}/${encodeURIComponent(role.name)}/info`; return ( {this.renderLink(to, role.name, !role._links.update)} diff --git a/scm-ui/src/config/roles/containers/SingleRepositoryRole.js b/scm-ui/src/config/roles/containers/SingleRepositoryRole.js index f39d55ab77..cc4e94cdd0 100644 --- a/scm-ui/src/config/roles/containers/SingleRepositoryRole.js +++ b/scm-ui/src/config/roles/containers/SingleRepositoryRole.js @@ -14,9 +14,12 @@ import type { Role } from "@scm-manager/ui-types"; import {getRepositoryRolesLink} from "../../../modules/indexResource"; import {ExtensionPoint} from "@scm-manager/ui-extensions"; import {fetchRoleByName, getFetchRoleFailure, getRoleByName, isFetchRolePending} from "../modules/roles"; +import RepositoryRoleForm from "./RepositoryRoleForm"; +import {withRouter} from "react-router-dom"; +import PermissionRoleDetail from "../components/PermissionRoleDetail"; type Props = { - name: string, + roleName: string, role: Role, loading: boolean, error: Error, @@ -34,7 +37,8 @@ type Props = { class SingleRepositoryRole extends React.Component { componentDidMount() { - this.props.fetchRoleByName(this.props.repositoryRolesLink, this.props.name); + this.props.fetchRoleByName(this.props.repositoryRolesLink, this.props.roleName); + console.log(this.props.match) } stripEndingSlash = (url: string) => { @@ -76,7 +80,7 @@ class SingleRepositoryRole extends React.Component {
- } /> + } /> } @@ -94,14 +98,14 @@ class SingleRepositoryRole extends React.Component { } const mapStateToProps = (state, ownProps) => { - const name = ownProps.match.params.name; - const role = getRoleByName(state, name); - const loading = isFetchRolePending(state, name); - const error = getFetchRoleFailure(state, name); + const roleName = ownProps.match.params.role; + const role = getRoleByName(state, roleName); + const loading = isFetchRolePending(state, roleName); + const error = getFetchRoleFailure(state, roleName); const repositoryRolesLink = getRepositoryRolesLink(state); return { repositoryRolesLink, - name, + roleName, role, loading, error @@ -116,7 +120,7 @@ const mapDispatchToProps = dispatch => { }; }; -export default connect( +export default withRouter(connect( mapStateToProps, mapDispatchToProps -)(translate("users")(SingleRepositoryRole)); +)(translate("users")(SingleRepositoryRole)));