Auth. guard now only renders child if authenticated.
This commit is contained in:
parent
525c2b6d5a
commit
92289c87b3
@ -23,8 +23,12 @@ export default class AuthenticationGuard extends React.Component {
|
|||||||
}
|
}
|
||||||
|
|
||||||
render() {
|
render() {
|
||||||
|
if (this.context.user) {
|
||||||
|
return this.props.children;
|
||||||
|
} else {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
AuthenticationGuard.defaultProps = {
|
AuthenticationGuard.defaultProps = {
|
||||||
@ -33,4 +37,5 @@ AuthenticationGuard.defaultProps = {
|
|||||||
|
|
||||||
AuthenticationGuard.propTypes = {
|
AuthenticationGuard.propTypes = {
|
||||||
accessLevel: propTypes.number,
|
accessLevel: propTypes.number,
|
||||||
|
children: propTypes.any
|
||||||
};
|
};
|
@ -11,7 +11,7 @@ export default class SportInfoCard extends React.Component {
|
|||||||
<Card style={{ width: "20rem" }}>
|
<Card style={{ width: "20rem" }}>
|
||||||
<Card.Body>
|
<Card.Body>
|
||||||
<Card.Title>{this.props.sport.name}</Card.Title>
|
<Card.Title>{this.props.sport.name}</Card.Title>
|
||||||
<Card.Subtitle className="mb-2 text-muted">{this.props.sport.minPlayers.toString()}</Card.Subtitle>
|
<Card.Subtitle className="mb-2 text-muted">Requires a minimum of {this.props.sport.minPlayers.toString()} players.</Card.Subtitle>
|
||||||
<Card.Text>
|
<Card.Text>
|
||||||
{this.props.sport.description}
|
{this.props.sport.description}
|
||||||
</Card.Text>
|
</Card.Text>
|
||||||
|
@ -41,8 +41,8 @@ export default class Dashboard extends React.Component {
|
|||||||
|
|
||||||
render() {
|
render() {
|
||||||
return (
|
return (
|
||||||
|
<AuthenticationGuard>
|
||||||
<div className="page-root">
|
<div className="page-root">
|
||||||
<AuthenticationGuard />
|
|
||||||
<React.Fragment>
|
<React.Fragment>
|
||||||
<h1></h1>
|
<h1></h1>
|
||||||
<InputGroup className="w-50">
|
<InputGroup className="w-50">
|
||||||
@ -63,10 +63,9 @@ export default class Dashboard extends React.Component {
|
|||||||
<h2>Available Sports</h2>
|
<h2>Available Sports</h2>
|
||||||
<SportInfoCardDisplay recommendedsports={this.state.displayedSports} />
|
<SportInfoCardDisplay recommendedsports={this.state.displayedSports} />
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
</React.Fragment>
|
</React.Fragment>
|
||||||
</div>
|
</div>
|
||||||
|
</AuthenticationGuard>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -177,9 +177,8 @@ export default class Admin extends React.Component {
|
|||||||
render() {
|
render() {
|
||||||
return (
|
return (
|
||||||
<div className="page-root">
|
<div className="page-root">
|
||||||
<AuthenticationGuard accessLevel={3} />
|
<AuthenticationGuard accessLevel={3}>
|
||||||
<React.Fragment>
|
<React.Fragment>
|
||||||
|
|
||||||
<div className='center'>
|
<div className='center'>
|
||||||
<h1 id='title'>Administration</h1>
|
<h1 id='title'>Administration</h1>
|
||||||
<Button onClick={() => {
|
<Button onClick={() => {
|
||||||
@ -207,8 +206,8 @@ export default class Admin extends React.Component {
|
|||||||
{/* {this.matchUserTableData()} */}
|
{/* {this.matchUserTableData()} */}
|
||||||
</tbody>
|
</tbody>
|
||||||
</Table>
|
</Table>
|
||||||
|
|
||||||
</React.Fragment>
|
</React.Fragment>
|
||||||
|
</AuthenticationGuard >
|
||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user