only generate link for member if link exists

This commit is contained in:
Maren Süwer
2018-07-31 16:10:50 +02:00
parent f90eecca89
commit 4d4457aa3d
2 changed files with 19 additions and 7 deletions

View File

@@ -11,7 +11,9 @@ type Props = {
class Details extends React.Component<Props> { class Details extends React.Component<Props> {
render() {
render() { console.log(new Date('2011-04-11T10:20:30Z').toString());
const { group, t } = this.props; const { group, t } = this.props;
return ( return (
<table className="table"> <table className="table">
@@ -26,11 +28,11 @@ class Details extends React.Component<Props> {
</tr> </tr>
<tr> <tr>
<td>{t("group.creationDate")}</td> <td>{t("group.creationDate")}</td>
<td>{group.creationDate}</td> <td>{new Date(group.creationDate).toString()}</td>
</tr> </tr>
<tr> <tr>
<td>{t("group.lastModified")}</td> <td>{t("group.lastModified")}</td>
<td>{group.lastModified}</td> <td>{new Date(group.lastModified).toString()}</td>
</tr> </tr>
<tr> <tr>
<td>{t("group.type")}</td> <td>{t("group.type")}</td>
@@ -51,7 +53,7 @@ class Details extends React.Component<Props> {
<td>{this.props.t("group.members")}</td> <td>{this.props.t("group.members")}</td>
<td> <td>
<table><tbody> <table><tbody>
{this.props.group.members.map((member, index) => { {this.props.group._embedded.members.map((member, index) => {
return <GroupMember key={index} member={member} />; return <GroupMember key={index} member={member} />;
})} })}
</tbody></table> </tbody></table>

View File

@@ -1,9 +1,10 @@
// @flow // @flow
import React from "react"; import React from "react";
import { Link } from "react-router-dom"; import { Link } from "react-router-dom";
import type {User} from "../../../users/types/User";
type Props = { type Props = {
member: string member: User
}; };
export default class GroupMember extends React.Component<Props> { export default class GroupMember extends React.Component<Props> {
@@ -11,13 +12,22 @@ export default class GroupMember extends React.Component<Props> {
return <Link to={to}>{label}</Link>; return <Link to={to}>{label}</Link>;
} }
showName(to: any, member:User) {
if(member._links.self){
return this.renderLink(to, member.name);
}
else {
return member.name
}
}
render() { render() {
const { member } = this.props; const { member } = this.props;
const to = `/user/${member}`; const to = `/user/${member.name}`;
return ( return (
<tr className="is-hidden-mobile"> <tr className="is-hidden-mobile">
<td> <td>
{this.renderLink(to, member)} {this.showName(to, member)}
</td> </td>
</tr> </tr>