Projekt

Obecné

Profil

Stáhnout (1.52 KB) Statistiky
| Větev: | Tag: | Revize:
1
import 'antd/dist/antd.css';
2
import React, { useContext, useEffect } from 'react';
3

    
4
import { useUnauthRedirect } from '../../../hooks';
5
import { useRouter } from 'next/router';
6
import { Button, Typography } from 'antd';
7
import { faFileLines } from '@fortawesome/free-solid-svg-icons';
8
import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
9
import { LoggedUserContext } from '../../../contexts/LoggedUserContext';
10
import { MainLayout } from '../../../layouts/MainLayout';
11
import AddDocumentModal from '../../../components/modals/AddDocumentModal';
12

    
13
function AdminDocumentPage() {
14
    const redirecting = useUnauthRedirect('/login');
15
    const { logout, role } = useContext(LoggedUserContext);
16
    const [visible, setVisible] = React.useState(false);
17
    const router = useRouter();
18

    
19
    useEffect(() => {
20
        if (!redirecting && role === 'ADMINISTRATOR') {
21
            // TODO load documents
22
        }
23
    }, [logout, redirecting, role, router]);
24

    
25
    const showModal = () => {
26
        setVisible(true);
27
    };
28

    
29
    const hideModal = () => {
30
        setVisible(false);
31
    };
32

    
33
    return redirecting || role !== 'ADMINISTRATOR' ? null : (
34
        <MainLayout>
35
            <Typography.Title level={2}>
36
                <FontAwesomeIcon icon={faFileLines} /> Dokumenty
37
            </Typography.Title>
38
            <Button type={'primary'} onClick={showModal}>
39
                Nahrát dokument
40
            </Button>
41
            {visible && <AddDocumentModal onCancel={hideModal} />}
42
        </MainLayout>
43
    );
44
}
45

    
46
export default AdminDocumentPage;
    (1-1/1)