source: reactapp/src/Components/SubjectsAccordion.js@ 8d83180

main
Last change on this file since 8d83180 was 8d83180, checked in by unknown <mlviktor23@…>, 21 months ago

forums/page nav

  • Property mode set to 100644
File size: 2.9 KB
Line 
1import React, { useState } from "react";
2import {
3 AccordionTitle,
4 SubjectsAccordionDiv,
5 OpenAccordionSymbol,
6} from "./Styled/SubjectsAccordion.style.";
7import { EntityLi, EntityUl, EntityParam } from "./Styled/EntityList.style";
8
9const SubjectsAccordion = (props) => {
10 const [height, setHeight] = useState("0");
11 const [opacity, setOpacity] = useState(0);
12 const handleClick = () => {
13 if (height === "0") {
14 setHeight("auto");
15 setOpacity(1);
16 } else {
17 setHeight("0");
18 setOpacity(0);
19 }
20 };
21 return (
22 <div onClick={() => handleClick()}>
23 <AccordionTitle>
24 {props.title.studyProgrammeName} ({props.title.cycle}. циклус)
25 <OpenAccordionSymbol>&#9662;</OpenAccordionSymbol>
26 </AccordionTitle>
27 <SubjectsAccordionDiv height={height} opacity={opacity}>
28 <EntityUl>
29 {props.content.map((item) => {
30 let totalPosts = item.threads.length;
31 return (
32 <EntityLi key={item.subjectName} bgcolor="cornsilk">
33 <a href={"/subject/" + item.subjectId}>{item.subjectName}</a>
34 <EntityParam>
35 {totalPosts !== 1 ? (
36 totalPosts !== 0 ? (
37 <span
38 style={{
39 fontWeight: "normal",
40 opacity: totalPosts === 0 ? "0.5" : "1",
41 }}
42 >
43 <span
44 style={{
45 fontWeight: "bold",
46 opacity: totalPosts === 0 ? "0.5" : "1",
47 }}
48 >
49 {totalPosts}
50 </span>{" "}
51 мислења
52 </span>
53 ) : (
54 <span
55 style={{
56 fontWeight: "normal",
57 opacity: totalPosts === 0 ? "0.5" : "1",
58 }}
59 >
60 <span
61 style={{
62 fontWeight: "bold",
63 opacity: totalPosts === 0 ? "0.5" : "1",
64 }}
65 >
66 {totalPosts}
67 </span>{" "}
68 мислења
69 </span>
70 )
71 ) : (
72 <span style={{ fontWeight: "normal" }}>
73 <span style={{ fontWeight: "bold" }}>{totalPosts}</span>{" "}
74 мислење
75 </span>
76 )}
77 </EntityParam>
78 </EntityLi>
79 );
80 })}
81 </EntityUl>
82 </SubjectsAccordionDiv>
83 </div>
84 );
85};
86
87export default SubjectsAccordion;
Note: See TracBrowser for help on using the repository browser.