added no repositories found notification

This commit is contained in:
Florian Scholdei
2019-04-09 14:47:37 +02:00
parent a4ee29d8e5
commit 24da17e0a9
4 changed files with 25 additions and 8 deletions

View File

@@ -37,6 +37,7 @@
"overview": {
"title": "Repositories",
"subtitle": "Übersicht aller verfügbaren Repositories",
"noRepositories": "Keine Repositories gefunden.",
"createButton": "Repository erstellen"
},
"create": {

View File

@@ -37,6 +37,7 @@
"overview": {
"title": "Repositories",
"subtitle": "Overview of available repositories",
"noRepositories": "No repositories found.",
"createButton": "Create Repository"
},
"create": {

View File

@@ -2,13 +2,13 @@
import React from "react";
import { connect } from "react-redux";
import { translate } from "react-i18next";
import type { Group } from "@scm-manager/ui-types";
import type { PagedCollection } from "@scm-manager/ui-types";
import type { Group, PagedCollection } from "@scm-manager/ui-types";
import type { History } from "history";
import {
Page,
PageActions,
Button,
Notification,
Paginator
} from "@scm-manager/ui-components";
import { GroupTable } from "./../components/table";
@@ -24,7 +24,6 @@ import {
selectListAsCollection
} from "../modules/groups";
import { getGroupsLink } from "../../modules/indexResource";
import Notification from "@scm-manager/ui-components/src/Notification";
type Props = {
groups: Group[],

View File

@@ -19,6 +19,7 @@ import {
PageActions,
Button,
CreateButton,
Notification,
Paginator
} from "@scm-manager/ui-components";
import RepositoryList from "../components/list";
@@ -72,19 +73,34 @@ class Overview extends React.Component<Props> {
loading={loading}
error={error}
>
{this.renderList()}
{this.renderOverview()}
{this.renderPageActionCreateButton()}
</Page>
);
}
renderList() {
const { collection, fetchReposByLink } = this.props;
renderRepositoryList() {
const { collection, fetchReposByLink, t } = this.props;
if (collection._embedded && collection._embedded.repositories.length > 0) {
return (
<>
<RepositoryList repositories={collection._embedded.repositories} />
<Paginator collection={collection} onPageChange={fetchReposByLink} />
</>
);
}
return (
<Notification type="info">{t("overview.noRepositories")}</Notification>
);
}
renderOverview() {
const { collection } = this.props;
if (collection) {
return (
<div>
<RepositoryList repositories={collection._embedded.repositories} />
<Paginator collection={collection} onPageChange={fetchReposByLink} />
{this.renderRepositoryList()}
{this.renderCreateButton()}
</div>
);