Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 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 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 | 1x 1x 1x 1x 1x 1x 1x 1x 1x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x 14x | import React from "react";
import Button from "react-bootstrap/Button";
import BasicLayout from "main/layouts/BasicLayout/BasicLayout";
import { Row, Col } from "react-bootstrap";
import { useParams } from "react-router";
import { useBackend } from "main/utils/useBackend";
import { useCurrentUser } from "main/utils/currentUser";
import AnnouncementTable from "main/components/Announcement/AnnouncementTable";
export default function AdminAnnouncementsPage() {
const { commonsId } = useParams();
// Stryker disable all
const { data: commonsPlus } = useBackend(
[`/api/commons/plus?id=${commonsId}`],
{
method: "GET",
url: "/api/commons/plus",
params: {
id: commonsId,
},
},
);
const { data: announcementsResponse } = useBackend(
[`/api/announcements/getbycommonsid?commonsId=${commonsId}`],
{
method: "GET",
url: "/api/announcements/getbycommonsid",
params: {
commonsId: commonsId,
},
},
);
const { data: currentUser } = useCurrentUser();
const announcements = announcementsResponse?.content ?? [];
const commonsName = commonsPlus?.commons.name;
// Stryker disable all - styles that don't need to be mut tested
const buttonStyle = {
display: "flex",
justifyContent: "flex-end",
};
// Stryker restore all
return (
<BasicLayout>
<div className="pt-2">
<Row className="pt-5 pb-3" style={{ gap: "30px" }}>
<Col md="auto">
<h2>Announcements for Commons: {commonsName}</h2>
</Col>
<Col style={buttonStyle}>
<Button
variant="primary"
href={`/admin/announcements/${commonsId}/create`}
>
Create Announcement
</Button>
</Col>
</Row>
<AnnouncementTable
announcements={announcements}
currentUser={currentUser}
commonsId={commonsId}
/>
</div>
</BasicLayout>
);
}
|