More improvements on members

This commit is contained in:
Arthur Belleville 2025-07-06 21:27:37 +02:00
parent b6e46fb92e
commit ecde2d798c
No known key found for this signature in database
3 changed files with 26 additions and 5 deletions

View file

@ -252,13 +252,26 @@ tabloRouter.get("/members/:tablo_id", async (c) => {
const { data, error } = await supabase
.from("tablo_access")
.select("profiles(id, name)")
.select("is_admin, profiles(id, name)")
.eq("tablo_id", tablo_id)
.eq("is_active", true);
const rows = data as unknown as {
is_admin: boolean;
profiles: {
id: string;
name: string;
};
}[];
if (error) {
return c.json({ error: error.message }, 500);
}
return c.json({ members: data.map((member) => member.profiles) });
return c.json({
members: rows.map((member) => ({
...member.profiles,
is_admin: member.is_admin,
})),
});
});

View file

@ -249,9 +249,17 @@ export const TabloModal = ({
<span className="text-sm text-gray-900 dark:text-white">
{member.name}
</span>
{member.id === currentUser?.id && (
{member.is_admin ? (
<span className="text-xs text-gray-500 dark:text-gray-400">
(Vous)
{member.id === currentUser?.id
? "(Vous, Admin)"
: "(Admin)"}
</span>
) : (
<span className="text-xs text-gray-500 dark:text-gray-400">
{member.id === currentUser?.id
? "(Vous, Invité)"
: "(Invité)"}
</span>
)}
</div>

View file

@ -56,7 +56,7 @@ export const useTabloMembers = (tabloId: string) => {
queryKey: ["tablo-members", tabloId],
queryFn: async () => {
const { data } = await api.get<{
members: { id: string; name: string }[];
members: { id: string; name: string; is_admin: boolean }[];
}>(`/api/v1/tablos/members/${tabloId}`, {
headers: {
Authorization: `Bearer ${session?.access_token}`,