// Copyright 2021 The casbin Authors. All Rights Reserved. // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. import React from "react"; import {Col, Descriptions, Row} from 'antd'; import * as AccountBackend from "../backend/AccountBackend"; import * as Setting from "../Setting"; class AccountPage extends React.Component { constructor(props) { super(props); this.state = { classes: props, username: props.match.params.username, user: null, }; } componentWillMount() { this.getUser(); } getUser() { if (this.state.username !== undefined) { AccountBackend.getUser(this.state.username) .then((user) => { this.setState({ user: user, }); }); } } renderValue(key) { if (this.props.account === null || this.props.account === undefined) { return Please sign in first } else if (this.state.user !== null) { return this.state.user[key]; } else { return this.props.account[key]; } } renderContent() { return (
  {this.renderValue("name")} {this.renderValue("owner")} {Setting.getFormattedDate(this.renderValue("createdTime"))} {this.renderValue("passwordType")} {this.renderValue("displayName")} {this.renderValue("email")} {this.renderValue("phone")}
); } render() { return (
{ this.renderContent() }
) } } export default AccountPage;