Skip to content

Commit c7575a7

Browse files
committed
Finish assign admin button
1 parent b61a626 commit c7575a7

File tree

11 files changed

+192
-126
lines changed

11 files changed

+192
-126
lines changed

src/i18n/de.ts

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -260,6 +260,14 @@ const de: SynapseTranslationMessages = {
260260
success: "Raum/Räume erfolgreich gelöscht.",
261261
failure: "Der/die Raum/Räume konnten nicht gelöscht werden.",
262262
},
263+
make_admin: {
264+
assign_admin: "Raumadministrator zuweisen",
265+
title: "Raumadministrator zu %{roomName} zuweisen",
266+
confirm: "Raumadministrator zuweisen",
267+
content: "Geben Sie die vollständige MXID des Benutzers an, der als Administrator gesetzt werden soll.\nWarnung: Damit dies funktioniert, muss der Raum mindestens einen lokalen Mitglied als Administrator haben.",
268+
success: "Der/die Benutzer wurde/n als Raumadministrator gesetzt.",
269+
failure: "Der/die Benutzer konnte/n nicht als Raumadministrator gesetzt werden. %{errMsg}",
270+
}
263271
},
264272
},
265273
reports: {

src/i18n/en.ts

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -234,10 +234,12 @@ const en: SynapseTranslationMessages = {
234234
failure: "The room/s could not be deleted.",
235235
},
236236
make_admin: {
237-
title: "Assign a room admin to selected rooms",
237+
assign_admin: "Assign admin",
238+
title: "Assign a room admin to %{roomName}",
238239
confirm: "Make admin",
239-
content: "Put the full MXID of the user which will be set as admin for the selected rooms",
240-
success: "The user has been set as room admin."
240+
content: "Put the full MXID of the user which will be set as admin.\nWarning: for this to work, the room needs to have at least one local member as admin.",
241+
success: "The user has been set as room admin.",
242+
failure: "The user could not be set as room admin. %{errMsg}",
241243
}
242244
},
243245
},

src/i18n/fa.ts

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -225,6 +225,14 @@ const fa: SynapseTranslationMessages = {
225225
success: "اتاق با موفقیت حذف شد.",
226226
failure: "خطایی رخ داده است.",
227227
},
228+
make_admin: {
229+
assign_admin: "مدیر انتخاب کنید",
230+
title: "مدیر اتاق %{roomName} را انتخاب کنید",
231+
confirm: "مدیر انتخاب کنید",
232+
content: "کامل MXID کاربری را وارد کنید که به عنوان مدیر تنظیم شود.\nهشدار: برای این کار، اتاق باید حداقل یک اعضای محلی به عنوان مدیر داشته باشد.",
233+
success: "کاربر به عنوان مدیر اتاق تنظیم شد.",
234+
failure: "کاربر به عنوان مدیر اتاق تنظیم نشد. %{errMsg}",
235+
}
228236
},
229237
},
230238
reports: {

src/i18n/fr.ts

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -227,6 +227,14 @@ const fr: SynapseTranslationMessages = {
227227
success: "Salle/s supprimées avec succès.",
228228
failure: "La/les salle/s n'ont pas pu être supprimées.",
229229
},
230+
make_admin: {
231+
assign_admin: "Assigner un administrateur",
232+
title: "Assigner un administrateur au salon %{roomName}",
233+
confirm: "Assigner un administrateur",
234+
content: "Entrez la MXID complète de l'utilisateur qui sera désigné comme administrateur.\nAttention : pour que cela fonctionne, la salle doit avoir au moins un membre local en tant qu'administrateur.",
235+
success: "L'utilisateur a été désigné comme administrateur de la salle.",
236+
failure: "L'utilisateur n'a pas pu être désigné comme administrateur de la salle. %{errMsg}",
237+
}
230238
},
231239
},
232240
reports: {

src/i18n/index.d.ts

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -223,6 +223,14 @@ interface SynapseTranslationMessages extends TranslationMessages {
223223
success: string;
224224
failure: string;
225225
};
226+
make_admin: {
227+
assign_admin: string;
228+
title: string;
229+
confirm: string;
230+
content: string;
231+
success: string;
232+
failure: string;
233+
};
226234
};
227235
};
228236
reports: {

src/i18n/it.ts

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -221,6 +221,14 @@ const it: SynapseTranslationMessages = {
221221
content:
222222
"Sei sicuro di voler eliminare questa stanza? Questa azione è definitiva. Tutti i messaggi e i media condivisi in questa stanza verranno eliminati dal server!",
223223
},
224+
make_admin: {
225+
assign_admin: "Assegna un amministratore",
226+
title: "Assegna un amministratore alla stanza %{roomName}",
227+
confirm: "Assegna un amministratore",
228+
content: "Inserisci la MXID completa dell'utente che sarà designato come amministratore.\nAttenzione: per questo funzionare, la stanza deve avere almeno un membro locale come amministratore.",
229+
success: "L'utente è stato designato come amministratore della stanza.",
230+
failure: "L'utente non può essere designato come amministratore della stanza. %{errMsg}",
231+
}
224232
},
225233
},
226234
reports: {

src/i18n/ru.ts

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -266,6 +266,14 @@ const ru: SynapseTranslationMessages = {
266266
success: "Комната/ы успешно удалены",
267267
failure: "Комната/ы не могут быть удалены.",
268268
},
269+
make_admin: {
270+
assign_admin: "Назначить администратора",
271+
title: "Назначить администратора комнате %{roomName}",
272+
confirm: "Назначить администратора",
273+
content: "Введите полную MXID пользователя, которого нужно назначить администратором.\nПредупреждение: для этого должен быть назначен хотя бы один локальный участник в качестве администратора.",
274+
success: "Пользователь назначен администратором комнаты.",
275+
failure: "Пользователь не может быть назначен администратором комнаты. %{errMsg}",
276+
}
269277
},
270278
},
271279
reports: {

src/resources/room_directory.tsx

Lines changed: 1 addition & 66 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
import RoomDirectoryIcon from "@mui/icons-material/FolderShared";
22
import {
33
BooleanField,
4+
TextField,
45
BulkDeleteButton,
56
BulkDeleteButtonProps,
67
Button,
@@ -23,78 +24,12 @@ import {
2324
useRecordContext,
2425
useRefresh,
2526
useUnselectAll,
26-
Confirm,
2727
} from "react-admin";
2828
import { useMutation } from "@tanstack/react-query";
2929
import AvatarField from "../components/AvatarField";
30-
import TextField from "@mui/material/TextField";
31-
import { useState } from "react";
32-
import PersonIcon from '@mui/icons-material/Person';
33-
import { Typography } from "@mui/material";
34-
3530

3631
const RoomDirectoryPagination = () => <Pagination rowsPerPageOptions={[100, 500, 1000, 2000]} />;
3732

38-
export const RoomDirectoryMakeAdminButton = (props: ButtonProps) => {
39-
const { selectedIds } = useListContext();
40-
const [open, setOpen] = useState(false);
41-
const [userIdValue, setUserIdValue] = useState("");
42-
const dataProvider = useDataProvider();
43-
const translate = useTranslate();
44-
45-
const { mutate: makeRoomAdminn, isPending } = useMutation({
46-
mutationFn: (data) =>
47-
dataProvider.makeRoomAdmin(selectedIds, userIdValue),
48-
onSuccess: () => {
49-
console.log("SUCCESS");
50-
// notify("resources.servernotices.action.send_success");
51-
// unselectAllUsers();
52-
// closeDialog();
53-
},
54-
onError: () =>
55-
// notify("resources.servernotices.action.send_failure", {
56-
// type: "error",
57-
// }),
58-
console.log("Failure")
59-
});
60-
61-
const handleChange = (event: React.ChangeEvent<HTMLInputElement>) => {
62-
setUserIdValue(event.target.value);
63-
};
64-
65-
const handleConfirm = async () => {
66-
console.log("CONFIRMED");
67-
await makeRoomAdminn();
68-
// await dataProvider.makeRoomAdmin(selectedIds, userIdValue)
69-
};
70-
const handleDialogClose = () => {
71-
setOpen(false);
72-
};
73-
74-
return (
75-
<>
76-
<Button {...props} label="Assign admin" onClick={() => setOpen(true)}><PersonIcon /></Button>
77-
<Confirm
78-
isOpen={open}
79-
onConfirm={handleConfirm}
80-
onClose={handleDialogClose}
81-
confirm="resources.rooms.action.make_admin.confirm"
82-
cancel="ra.action.cancel"
83-
title="resources.rooms.action.make_admin.title"
84-
content={<>
85-
<Typography sx={{ marginBottom: 2}}>{translate("resources.rooms.action.make_admin.content")}</Typography>
86-
<TextField
87-
type="text"
88-
variant="filled"
89-
value={userIdValue}
90-
onChange={handleChange}
91-
label={"user id"}
92-
/></>}
93-
/>
94-
</>
95-
);
96-
};
97-
9833
export const RoomDirectoryUnpublishButton = (props: DeleteButtonProps) => {
9934
const translate = useTranslate();
10035

0 commit comments

Comments
 (0)