diff options
author | Dessalines <tyhou13@gmx.com> | 2020-01-19 16:47:54 -0500 |
---|---|---|
committer | Dessalines <tyhou13@gmx.com> | 2020-01-19 16:47:54 -0500 |
commit | ac7a4031a809bac9ba958319ad678ea70df8618a (patch) | |
tree | f9cacf1123838132e316322034fb51c1665d7db8 /ui/src | |
parent | 96c1fceb99f99fbda2464664171ee899e48e03c4 (diff) |
Hide next paginator.
- Fixes #441
- Hide post sort radio if no comments.
Diffstat (limited to 'ui/src')
-rw-r--r-- | ui/src/components/communities.tsx | 27 | ||||
-rw-r--r-- | ui/src/components/community.tsx | 14 | ||||
-rw-r--r-- | ui/src/components/main.tsx | 14 | ||||
-rw-r--r-- | ui/src/components/post.tsx | 2 |
4 files changed, 29 insertions, 28 deletions
diff --git a/ui/src/components/communities.tsx b/ui/src/components/communities.tsx index 7e4a0ef8..598a5dad 100644 --- a/ui/src/components/communities.tsx +++ b/ui/src/components/communities.tsx @@ -18,6 +18,8 @@ import { T } from 'inferno-i18next'; declare const Sortable: any; +const communityLimit = 100; + interface CommunitiesState { communities: Array<Community>; page: number; @@ -36,14 +38,7 @@ export class Communities extends Component<any, CommunitiesState> { super(props, context); this.state = this.emptyState; this.subscription = WebSocketService.Instance.subject - .pipe( - retryWhen(errors => - errors.pipe( - delay(3000), - take(10) - ) - ) - ) + .pipe(retryWhen(errors => errors.pipe(delay(3000), take(10)))) .subscribe( msg => this.parseMessage(msg), err => console.error(err), @@ -180,12 +175,14 @@ export class Communities extends Component<any, CommunitiesState> { <T i18nKey="prev">#</T> </button> )} - <button - class="btn btn-sm btn-secondary" - onClick={linkEvent(this, this.nextPage)} - > - <T i18nKey="next">#</T> - </button> + {this.state.communities.length == communityLimit && ( + <button + class="btn btn-sm btn-secondary" + onClick={linkEvent(this, this.nextPage)} + > + <T i18nKey="next">#</T> + </button> + )} </div> ); } @@ -227,7 +224,7 @@ export class Communities extends Component<any, CommunitiesState> { refetch() { let listCommunitiesForm: ListCommunitiesForm = { sort: SortType[SortType.TopAll], - limit: 100, + limit: communityLimit, page: this.state.page, }; diff --git a/ui/src/components/community.tsx b/ui/src/components/community.tsx index 6bcd88b1..03766bdc 100644 --- a/ui/src/components/community.tsx +++ b/ui/src/components/community.tsx @@ -192,12 +192,14 @@ export class Community extends Component<any, State> { <T i18nKey="prev">#</T> </button> )} - <button - class="btn btn-sm btn-secondary" - onClick={linkEvent(this, this.nextPage)} - > - <T i18nKey="next">#</T> - </button> + {this.state.posts.length == fetchLimit && ( + <button + class="btn btn-sm btn-secondary" + onClick={linkEvent(this, this.nextPage)} + > + <T i18nKey="next">#</T> + </button> + )} </div> ); } diff --git a/ui/src/components/main.tsx b/ui/src/components/main.tsx index 9e7d690d..95eeb1df 100644 --- a/ui/src/components/main.tsx +++ b/ui/src/components/main.tsx @@ -480,12 +480,14 @@ export class Main extends Component<any, MainState> { <T i18nKey="prev">#</T> </button> )} - <button - class="btn btn-sm btn-secondary" - onClick={linkEvent(this, this.nextPage)} - > - <T i18nKey="next">#</T> - </button> + {this.state.posts.length == fetchLimit && ( + <button + class="btn btn-sm btn-secondary" + onClick={linkEvent(this, this.nextPage)} + > + <T i18nKey="next">#</T> + </button> + )} </div> ); } diff --git a/ui/src/components/post.tsx b/ui/src/components/post.tsx index d4869386..c4bfccee 100644 --- a/ui/src/components/post.tsx +++ b/ui/src/components/post.tsx @@ -178,7 +178,7 @@ export class Post extends Component<any, PostState> { postId={this.state.post.id} disabled={this.state.post.locked} /> - {this.sortRadios()} + {this.state.comments.length > 0 && this.sortRadios()} {this.commentsTree()} </div> <div class="col-12 col-sm-12 col-md-4"> |