diff --git a/src/App.js b/src/App.js
index 5b784c4..e9378b8 100644
--- a/src/App.js
+++ b/src/App.js
@@ -52,6 +52,7 @@ const App = () => (
+
);
diff --git a/src/components/users.js b/src/components/users.js
index 5f8caf8..d463379 100644
--- a/src/components/users.js
+++ b/src/components/users.js
@@ -5,6 +5,7 @@ import ContactMailIcon from "@material-ui/icons/ContactMail";
import DevicesIcon from "@material-ui/icons/Devices";
import GetAppIcon from "@material-ui/icons/GetApp";
import SettingsInputComponentIcon from "@material-ui/icons/SettingsInputComponent";
+import NotificationsIcon from "@material-ui/icons/Notifications";
import {
ArrayInput,
ArrayField,
@@ -312,6 +313,7 @@ export const UserEdit = props => {
/>
+
}
@@ -330,6 +332,7 @@ export const UserEdit = props => {
+
}
@@ -361,6 +364,7 @@ export const UserEdit = props => {
+
}
@@ -400,6 +404,29 @@ export const UserEdit = props => {
+
+ }
+ path="pushers"
+ >
+
+
+
+
+
+
+
+
+
+
+
+
+
);
diff --git a/src/i18n/de.js b/src/i18n/de.js
index 1b60545..a881b1d 100644
--- a/src/i18n/de.js
+++ b/src/i18n/de.js
@@ -223,6 +223,20 @@ export default {
},
},
},
+ pushers: {
+ name: "Pusher |||| Pushers",
+ fields: {
+ app: "App",
+ app_display_name: "App-Anzeigename",
+ app_id: "App ID",
+ device_display_name: "Geräte-Anzeigename",
+ kind: "Art",
+ lang: "Sprache",
+ profile_tag: "Profil-Tag",
+ pushkey: "Pushkey",
+ data: { url: "URL" },
+ },
+ },
servernotices: {
name: "Serverbenachrichtigungen",
send: "Servernachricht versenden",
diff --git a/src/i18n/en.js b/src/i18n/en.js
index 76b33aa..87d70be 100644
--- a/src/i18n/en.js
+++ b/src/i18n/en.js
@@ -220,6 +220,20 @@ export default {
},
},
},
+ pushers: {
+ name: "Pusher |||| Pushers",
+ fields: {
+ app: "App",
+ app_display_name: "App display name",
+ app_id: "App ID",
+ device_display_name: "Device display name",
+ kind: "Kind",
+ lang: "Language",
+ profile_tag: "Profile tag",
+ pushkey: "Pushkey",
+ data: { url: "URL" },
+ },
+ },
servernotices: {
name: "Server Notices",
send: "Send server notices",
diff --git a/src/synapse/dataProvider.js b/src/synapse/dataProvider.js
index 3df3c9d..815d5dd 100644
--- a/src/synapse/dataProvider.js
+++ b/src/synapse/dataProvider.js
@@ -117,6 +117,19 @@ const resourceMap = {
return json.total;
},
},
+ pushers: {
+ map: p => ({
+ ...p,
+ id: p.pushkey,
+ }),
+ reference: id => ({
+ endpoint: `/_synapse/admin/v1/users/${id}/pushers`,
+ }),
+ data: "pushers",
+ total: json => {
+ return json.total;
+ },
+ },
servernotices: {
map: n => ({ id: n.event_id }),
create: data => ({