Newer
Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
import React, { useState } from "react";
import { Table } from "react-bootstrap";
import { LinkContainer } from "react-router-bootstrap";
import { GiPayMoney } from "react-icons/gi";
import Fetcher from "../Fetcher";
import { printMoney, printRole } from "../util";
function MemberList() {
const [members, setMembers] = useState([]);
const entries = members.map((member) => {
return (
<LinkContainer to={"/member/" + member.num}>
<tr key={member.num}>
<td>{member.num}</td>
<td>{member.name}</td>
<td>{member.login}</td>
<td>{member.email}</td>
<td>{member.phone}</td>
<td>{printRole(member.role)}</td>
<td>{printMoney(member.balance)}€</td>
<td md={1}>
<LinkContainer to={"/topup/" + member.num}>
<GiPayMoney />
</LinkContainer>
</td>
</tr>
</LinkContainer>
);
});
return (
<Fetcher url="/api/member" onFetch={setMembers}>
<Table striped bordered hover responsive>
<thead>
<tr>
<th></th>
<th>Nombre</th>
<th>Login</th>
<th>Email</th>
<th>Telefono</th>
<th>Rol</th>
<th>Saldo</th>
</tr>
</thead>
<tbody>{entries}</tbody>
</Table>
</Fetcher>
);
}
export default MemberList;