All files / pages AdminAnnouncementsPage.js

100% Statements 6/6
100% Branches 0/0
100% Functions 1/1
100% Lines 6/6

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                    12x 12x     12x                       12x                         12x   12x                                            
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-dom';
import { useBackend } from 'main/utils/useBackend';
import AnnouncementTable from 'main/components/Announcement/AnnouncementTable';
import { useCurrentUser } from 'main/utils/currentUser';
 
export default function AdminAnnouncementsPage() {
  const { commonsId } = useParams();
  const { data: currentUser } = useCurrentUser();
 
  // Stryker disable all
  const { data: commonsPlus } = useBackend(
    [`/api/commons/plus?id=${commonsId}`],
    {
      method: 'GET',
      url: '/api/commons/plus',
      params: {
        id: commonsId,
      },
    }
  );
 
  // Stryker disable all
  const { data: announcements } = useBackend(
    [`/api/announcements/getbycommonsid?commonsId=${commonsId}`],
    {
      method: 'GET',
      url: `/api/announcements/getbycommonsid`,
      params: {
        commonsId: commonsId,
      },
    },
    []
  );
  // Stryker restore all
 
  const commonsName = commonsPlus?.commons.name;
 
  return (
    <BasicLayout>
      <div className="pt-2">
        <Row className="pt-5">
          <Col>
            <h2>Announcements for Commons: {commonsName} </h2>
            <Button
              variant="primary"
              href={`/admin/announcements/${commonsId}/create`}
            >
              Create Announcement
            </Button>
          </Col>
        </Row>
        <AnnouncementTable
          announcements={announcements}
          currentUser={currentUser}
        ></AnnouncementTable>
      </div>
    </BasicLayout>
  );
}