Adding new site setup fields. (#840)
This commit is contained in:
parent
8fdbaf4499
commit
24548ccba8
34 changed files with 1207 additions and 568 deletions
|
|
@ -131,10 +131,7 @@ export class Home extends Component<any, HomeState> {
|
|||
listingType: getListingTypeFromProps(
|
||||
this.props,
|
||||
ListingType[
|
||||
this.isoData.site_res.site_view.match({
|
||||
some: type_ => type_.site.default_post_listing_type,
|
||||
none: ListingType.Local,
|
||||
})
|
||||
this.isoData.site_res.site_view.local_site.default_post_listing_type
|
||||
]
|
||||
),
|
||||
dataType: getDataTypeFromProps(this.props),
|
||||
|
|
@ -199,7 +196,7 @@ export class Home extends Component<any, HomeState> {
|
|||
|
||||
componentDidMount() {
|
||||
// This means it hasn't been set up yet
|
||||
if (this.state.siteRes.site_view.isNone()) {
|
||||
if (!this.state.siteRes.site_view.local_site.site_setup) {
|
||||
this.context.router.history.push("/setup");
|
||||
}
|
||||
setupTippy();
|
||||
|
|
@ -313,13 +310,10 @@ export class Home extends Component<any, HomeState> {
|
|||
}
|
||||
|
||||
get documentTitle(): string {
|
||||
return this.state.siteRes.site_view.match({
|
||||
some: siteView =>
|
||||
siteView.site.description.match({
|
||||
some: desc => `${siteView.site.name} - ${desc}`,
|
||||
none: siteView.site.name,
|
||||
}),
|
||||
none: "Lemmy",
|
||||
let siteView = this.state.siteRes.site_view;
|
||||
return this.state.siteRes.site_view.site.description.match({
|
||||
some: desc => `${siteView.site.name} - ${desc}`,
|
||||
none: siteView.site.name,
|
||||
});
|
||||
}
|
||||
|
||||
|
|
@ -332,7 +326,7 @@ export class Home extends Component<any, HomeState> {
|
|||
description={None}
|
||||
image={None}
|
||||
/>
|
||||
{this.state.siteRes.site_view.isSome() && (
|
||||
{this.state.siteRes.site_view.local_site.site_setup && (
|
||||
<div className="row">
|
||||
<main role="main" className="col-12 col-md-8">
|
||||
<div className="d-block d-md-none">{this.mobileView()}</div>
|
||||
|
|
@ -356,6 +350,7 @@ export class Home extends Component<any, HomeState> {
|
|||
|
||||
mobileView() {
|
||||
let siteRes = this.state.siteRes;
|
||||
let siteView = siteRes.site_view;
|
||||
return (
|
||||
<div className="row">
|
||||
<div className="col-12">
|
||||
|
|
@ -399,19 +394,15 @@ export class Home extends Component<any, HomeState> {
|
|||
classes="icon-inline"
|
||||
/>
|
||||
</button>
|
||||
{this.state.showSidebarMobile &&
|
||||
siteRes.site_view.match({
|
||||
some: siteView => (
|
||||
<SiteSidebar
|
||||
site={siteView.site}
|
||||
admins={Some(siteRes.admins)}
|
||||
counts={Some(siteView.counts)}
|
||||
online={Some(siteRes.online)}
|
||||
showLocal={showLocal(this.isoData)}
|
||||
/>
|
||||
),
|
||||
none: <></>,
|
||||
})}
|
||||
{this.state.showSidebarMobile && (
|
||||
<SiteSidebar
|
||||
site={siteView.site}
|
||||
admins={Some(siteRes.admins)}
|
||||
counts={Some(siteView.counts)}
|
||||
online={Some(siteRes.online)}
|
||||
showLocal={showLocal(this.isoData)}
|
||||
/>
|
||||
)}
|
||||
{this.state.showTrendingMobile && (
|
||||
<div className="col-12 card border-secondary mb-3">
|
||||
<div className="card-body">{this.trendingCommunities()}</div>
|
||||
|
|
@ -429,6 +420,7 @@ export class Home extends Component<any, HomeState> {
|
|||
|
||||
mySidebar() {
|
||||
let siteRes = this.state.siteRes;
|
||||
let siteView = siteRes.site_view;
|
||||
return (
|
||||
<div>
|
||||
{!this.state.loading && (
|
||||
|
|
@ -441,18 +433,13 @@ export class Home extends Component<any, HomeState> {
|
|||
{this.exploreCommunitiesButton()}
|
||||
</div>
|
||||
</div>
|
||||
{siteRes.site_view.match({
|
||||
some: siteView => (
|
||||
<SiteSidebar
|
||||
site={siteView.site}
|
||||
admins={Some(siteRes.admins)}
|
||||
counts={Some(siteView.counts)}
|
||||
online={Some(siteRes.online)}
|
||||
showLocal={showLocal(this.isoData)}
|
||||
/>
|
||||
),
|
||||
none: <></>,
|
||||
})}
|
||||
<SiteSidebar
|
||||
site={siteView.site}
|
||||
admins={Some(siteRes.admins)}
|
||||
counts={Some(siteView.counts)}
|
||||
online={Some(siteRes.online)}
|
||||
showLocal={showLocal(this.isoData)}
|
||||
/>
|
||||
{this.hasFollows && (
|
||||
<div className="card border-secondary mb-3">
|
||||
<div className="card-body">{this.subscribedCommunities()}</div>
|
||||
|
|
@ -749,7 +736,7 @@ export class Home extends Component<any, HomeState> {
|
|||
this.setState({ trendingCommunities: data.communities });
|
||||
} else if (op == UserOperation.EditSite) {
|
||||
let data = wsJsonToRes<SiteResponse>(msg, SiteResponse);
|
||||
this.setState(s => ((s.siteRes.site_view = Some(data.site_view)), s));
|
||||
this.setState(s => ((s.siteRes.site_view = data.site_view), s));
|
||||
toast(i18n.t("site_saved"));
|
||||
} else if (op == UserOperation.GetPosts) {
|
||||
let data = wsJsonToRes<GetPostsResponse>(msg, GetPostsResponse);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue