diff --git a/src/App.js b/src/App.js index f943e3f..b3c40c3 100644 --- a/src/App.js +++ b/src/App.js @@ -4,7 +4,7 @@ import polyglotI18nProvider from "ra-i18n-polyglot"; import authProvider from "./synapse/authProvider"; import dataProvider from "./synapse/dataProvider"; import { UserList, UserCreate, UserEdit } from "./components/users"; -import { RoomList } from "./components/rooms"; +import { RoomList, RoomShow } from "./components/rooms"; import LoginPage from "./components/LoginPage"; import UserIcon from "@material-ui/icons/Group"; import { ViewListIcon as RoomIcon } from "@material-ui/icons/ViewList"; @@ -35,7 +35,7 @@ const App = () => ( edit={UserEdit} icon={UserIcon} /> - + diff --git a/src/components/rooms.js b/src/components/rooms.js index 8cac414..4b775b0 100644 --- a/src/components/rooms.js +++ b/src/components/rooms.js @@ -1,5 +1,18 @@ import React from "react"; -import { Datagrid, List, TextField, Pagination } from "react-admin"; +import ViewAgendaIcon from "@material-ui/icons/ViewAgenda"; +import PageviewIcon from "@material-ui/icons/Pageview"; +import VisibilityIcon from "@material-ui/icons/Visibility"; +import { + Datagrid, + List, + TextField, + Pagination, + Show, + TabbedShowLayout, + BooleanField, + useTranslate, + Tab, +} from "react-admin"; const RoomPagination = props => ( @@ -7,7 +20,7 @@ const RoomPagination = props => ( export const RoomList = props => ( }> - + @@ -15,3 +28,54 @@ export const RoomList = props => ( ); + +const RoomTitle = ({ record }) => { + const translate = useTranslate(); + return ( + + {translate("resources.rooms.name", { smart_count: 1 })}{" "} + {record ? `"${record.name}"` : ""} + + ); +}; + +export const RoomShow = props => { + const translate = useTranslate(); + return ( + }> + + } + > + + + + + + } + path="detail" + > + + + + + + + } + path="permission" + > + + + + + + + + + ); +}; diff --git a/src/i18n/de.js b/src/i18n/de.js index 05d9a6e..af68da6 100644 --- a/src/i18n/de.js +++ b/src/i18n/de.js @@ -54,6 +54,21 @@ export default { name: "Name", canonical_alias: "Alias", joined_members: "Mitglieder", + joined_local_members: "lokale Mitglieder", + state_events: "Ereignisse", + version: "Version", + encryption: "Verschlüsselung", + federatable: "Fö­de­riert", + public: "Öffentlich", + creator: "Ersteller", + join_rules: "Beitrittsregeln", + guest_access: "Gastzugriff", + history_visibility: "Historie-Sichtbarkeit", + }, + tabs: { + basic: "Einfach", + detail: "Details", + permission: "Berechtigungen", }, }, connections: { diff --git a/src/i18n/en.js b/src/i18n/en.js index a7a6141..2d8a5c0 100644 --- a/src/i18n/en.js +++ b/src/i18n/en.js @@ -53,6 +53,21 @@ export default { name: "Name", canonical_alias: "Alias", joined_members: "Members", + joined_local_members: "local members", + state_events: "State events", + version: "Version", + encryption: "Encryption", + federatable: "Federatable", + public: "Public", + creator: "Creator", + join_rules: "Join rules", + guest_access: "Guest access", + history_visibility: "History visibility", + }, + tabs: { + basic: "Basic", + detail: "Details", + permission: "Permissions", }, }, connections: {