summaryrefslogtreecommitdiff
path: root/src/screens/professor/Home/index.js
blob: d16c20dfedc38691a544bf24f0281a69087d7061 (plain)
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
import { useEffect, useState } from 'react';
import { useNavigate } from 'react-router-dom';
import { useUser } from '../../../context/user';
import { useDocumentTitle } from '../../../hooks/useDocumentTitle';
import useLayoutType from '../../../hooks/useLayoutType';
import View from './View';

function Home() {
  useDocumentTitle('Página Inicial');
  const navigate = useNavigate();
  const layoutType = useLayoutType();
  const { userService } = useUser();
  const [classrooms, setClassrooms] = useState(null);
  const [assignmentsToReview, setAssignmentsToReview] = useState(null);

  useEffect(() => {
    async function getClassrooms() {
      const result = await userService.fetchClassrooms();
      setClassrooms(result.data);
    }
    getClassrooms();
  }, [userService, userService.fetchClassrooms]);

  useEffect(() => {
    async function getAssignmentsToReview() {
      const result = await userService.fetchAssignmentsToReview();
      setAssignmentsToReview(result.data);
    }
    getAssignmentsToReview();
  }, [userService, userService.fetchAllAssignments]);

  const onClickClassCard = id => {
    navigate(`/class/${id}`);
  };

  const onClickAssignmentCard = id => {
    navigate(`/assignment/${id}`);
  };

  return (
    <View
      layoutType={layoutType}
      classrooms={classrooms}
      assignmentsToReview={assignmentsToReview}
      onClickClassCard={onClickClassCard}
      onClickAssignmentCard={onClickAssignmentCard}
    />
  );
}

export default Home;