From ae0a88a7ab428d4d2d5eb549dd559ed88ea76b77 Mon Sep 17 00:00:00 2001 From: dklimpel <5740567+dklimpel@users.noreply.github.com> Date: Sat, 28 Mar 2020 14:01:41 +0100 Subject: [PATCH] Add sort and filter to rooms list and update to users list --- src/components/rooms.js | 28 ++++++++++++++++++++++------ src/components/users.js | 2 +- src/i18n/de.js | 1 + src/i18n/en.js | 1 + src/synapse/dataProvider.js | 11 ++++++++++- 5 files changed, 35 insertions(+), 8 deletions(-) diff --git a/src/components/rooms.js b/src/components/rooms.js index ba3bd8b..7edc987 100644 --- a/src/components/rooms.js +++ b/src/components/rooms.js @@ -1,13 +1,29 @@ import React from "react"; -import { Datagrid, List, TextField } from "react-admin"; +import { + Datagrid, + List, + TextField, + TextInput, + Filter +} from "react-admin"; + +const RoomFilter = (props) => ( + + + +); export const RoomList = props => ( - + } + > - - - - + + + + ); diff --git a/src/components/users.js b/src/components/users.js index 068b59e..432d905 100644 --- a/src/components/users.js +++ b/src/components/users.js @@ -43,7 +43,7 @@ export const UserList = props => ( > - + {/* Hack since the users endpoint does not give displaynames in the list*/} { console.log("getList " + resource); - const { user_id, guests, deactivated } = params.filter; + const { user_id, guests, deactivated, search_term } = params.filter; const { page, perPage } = params.pagination; + var { field, order } = params.sort; + if ( order === "DESC") { + order = "b"; + } else { + order = "f"; + } const from = (page - 1) * perPage; const query = { from: from, @@ -64,6 +70,9 @@ const dataProvider = { user_id: user_id, guests: guests, deactivated: deactivated, + order_by: field, + search_term: search_term, + dir: order, }; const homeserver = localStorage.getItem("base_url"); if (!homeserver || !(resource in resourceMap)) return Promise.reject();