mirror of
https://github.com/haiwen/seahub.git
synced 2025-09-21 11:27:18 +00:00
adjust code structure
This commit is contained in:
@@ -1,10 +1,12 @@
|
||||
import React, { Component, Fragment } from 'react';
|
||||
import { Link } from '@reach/router';
|
||||
import moment from 'moment';
|
||||
import { gettext, siteRoot, lang } from '../../utils/constants';
|
||||
import { seafileAPI } from '../../utils/seafile-api';
|
||||
import toaster from '../../components/toast';
|
||||
import CommonToolbar from '../../components/toolbar/common-toolbar';
|
||||
import moment from 'moment';
|
||||
import Loading from '../../components/loading';
|
||||
|
||||
moment.locale(lang);
|
||||
|
||||
class MyLibsDeleted extends Component {
|
||||
@@ -13,57 +15,61 @@ class MyLibsDeleted extends Component {
|
||||
super(props);
|
||||
this.state = {
|
||||
deletedRepoList: [],
|
||||
isLoading: false,
|
||||
isLoading: true,
|
||||
};
|
||||
}
|
||||
|
||||
componentDidMount() {
|
||||
seafileAPI.listDeletedRepo().then(res => {
|
||||
this.setState({
|
||||
deletedRepoList: res.data
|
||||
deletedRepoList: res.data,
|
||||
isLoading: false,
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
refreshDeletedRepoList = (repoID) => {
|
||||
this.setState({
|
||||
deletedRepoList: this.state.deletedRepoList.filter(item => item.repo_id !== repoID)
|
||||
});
|
||||
let deletedRepoList = this.state.deletedRepoList.filter(item => {
|
||||
return item.repo_id !== repoID;
|
||||
});
|
||||
this.setState({deletedRepoList: deletedRepoList});
|
||||
}
|
||||
|
||||
render() {
|
||||
return (
|
||||
<Fragment>
|
||||
<div className="main-panel-north">
|
||||
<CommonToolbar onSearchedClick={this.props.onSearchedClick} />
|
||||
</div>
|
||||
<div className="main-panel-center">
|
||||
<div className="cur-view-container">
|
||||
<div className="cur-view-path">
|
||||
<div className="path-container">
|
||||
<Link to={ siteRoot + 'my-libs/' }>{gettext("My Libraries")}</Link>
|
||||
<span className="path-split">/</span>
|
||||
<span>{gettext('Deleted Libraries')}</span>
|
||||
</div>
|
||||
</div>
|
||||
<div className="cur-view-content">
|
||||
{(!this.state.isLoading && this.state.deletedRepoList.length === 0) &&
|
||||
return (
|
||||
<Fragment>
|
||||
<div className="main-panel-north">
|
||||
<CommonToolbar onSearchedClick={this.props.onSearchedClick} />
|
||||
</div>
|
||||
<div className="main-panel-center">
|
||||
<div className="cur-view-container">
|
||||
<div className="cur-view-path">
|
||||
<div className="path-container">
|
||||
<Link to={ siteRoot + 'my-libs/' }>{gettext("My Libraries")}</Link>
|
||||
<span className="path-split">/</span>
|
||||
<span>{gettext('Deleted Libraries')}</span>
|
||||
</div>
|
||||
</div>
|
||||
<div className="cur-view-content">
|
||||
{this.state.isLoading && <Loading />}
|
||||
{(!this.state.isLoading && this.state.deletedRepoList.length === 0) &&
|
||||
<div className="message empty-tip">
|
||||
<h2>{gettext('No deleted libraries.')}</h2>
|
||||
</div>
|
||||
}
|
||||
{ this.state.deletedRepoList.length !== 0 &&
|
||||
<div>
|
||||
<p className="tip">{gettext('Tip: libraries deleted 30 days ago will be cleaned automatically.')}</p>
|
||||
<DeletedRepoTable deletedRepoList={this.state.deletedRepoList}
|
||||
refreshDeletedRepoList={this.refreshDeletedRepoList}
|
||||
/>
|
||||
</div>
|
||||
}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</Fragment>
|
||||
}
|
||||
{this.state.deletedRepoList.length !== 0 &&
|
||||
<div>
|
||||
<p className="tip">{gettext('Tip: libraries deleted 30 days ago will be cleaned automatically.')}</p>
|
||||
<DeletedRepoTable
|
||||
deletedRepoList={this.state.deletedRepoList}
|
||||
refreshDeletedRepoList={this.refreshDeletedRepoList}
|
||||
/>
|
||||
</div>
|
||||
}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</Fragment>
|
||||
);
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user