import React, { Component, Fragment } from 'react'; import moment from 'moment'; import { seafileAPI } from '../../utils/seafile-api'; import { gettext, loginUrl } from '../../utils/constants'; import { Utils } from '../../utils/utils'; import Loading from '../../components/loading'; import OrgAdminUserNav from '../../components/org-admin-user-nav'; import MainPanelTopbar from './main-panel-topbar'; import '../../css/org-admin-user.css'; const { orgID } = window.org.pageOptions; class OrgUserSharedRepos extends Component { constructor(props) { super(props); this.state = { loading: true, errorMsg: '' }; } componentDidMount() { seafileAPI.getOrgUserBesharedRepos(orgID, this.props.email).then((res) => { this.setState(Object.assign({ loading: false }, res.data)); }).catch((error) => { if (error.response) { if (error.response.status == 403) { this.setState({ loading: false, errorMsg: gettext('Permission denied') }); location.href = `${loginUrl}?next=${encodeURIComponent(location.href)}`; } else { this.setState({ loading: false, errorMsg: gettext('Error') }); } } else { this.setState({ loading: false, errorMsg: gettext('Please check the network.') }); } }); } render() { return (
); } } class Content extends Component { constructor(props) { super(props); } render() { const { loading, errorMsg, repo_list } = this.props.data; if (loading) { return ; } if (errorMsg) { return

{errorMsg}

; } return ( {repo_list.map((item, index) => { return ; })}
{/*icon*/} {gettext('Name')} {gettext('Owner')} {gettext('Size')} {gettext('Last Update')}
); } } class Item extends Component { constructor(props) { super(props); } render() { const repo = this.props.data; return ( {Utils.getLibIconTitle(repo)} {repo.repo_name} {repo.owner_name} {Utils.bytesToSize(repo.size)} {moment(repo.last_modified).format('YYYY-MM-DD')} ); } } export default OrgUserSharedRepos;