Skip to content

Commit 1e2de3a

Browse files
committed
wip
1 parent efedae4 commit 1e2de3a

1 file changed

Lines changed: 33 additions & 13 deletions

File tree

hwproj.front/src/components/Homeworks/CourseHomeworkExperimental.tsx

Lines changed: 33 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,8 @@
99
IconButton,
1010
Stack,
1111
TextField,
12+
ToggleButton,
13+
ToggleButtonGroup,
1214
Tooltip,
1315
Typography,
1416
} from "@mui/material";
@@ -38,6 +40,8 @@ import {CourseUnitType} from "../Files/CourseUnitType"
3840
import ProcessFilesUtils from "../Utils/ProcessFilesUtils";
3941
import {FilesHandler} from "@/components/Files/FilesHandler";
4042
import GroupSelector from "../Common/GroupSelector";
43+
import GroupIcon from '@mui/icons-material/Group';
44+
import AssignmentIcon from '@mui/icons-material/Assignment';
4145

4246
export interface HomeworkAndFilesInfo {
4347
homework: HomeworkViewModel & { isModified?: boolean },
@@ -119,6 +123,7 @@ const CourseHomeworkEditor: FC<{
119123
const [description, setDescription] = useState<string>(loadedHomework.description!)
120124
const [selectedGroupId, setSelectedGroupId] = useState(loadedHomework.groupId)
121125
const [courseStudents, setCourseStudents] = useState<AccountDataDto[]>([])
126+
const [page, setPage] = useState<"homework" | "group">("homework")
122127

123128
useEffect(() => {
124129
const loadCourseStudents = async () => {
@@ -278,8 +283,21 @@ const CourseHomeworkEditor: FC<{
278283

279284
const isDisabled = hasErrors || !isLoaded || taskHasErrors
280285

281-
return (
282-
<CardContent>
286+
return <Stack direction={"row"}>
287+
<ToggleButtonGroup
288+
orientation="vertical"
289+
value={page}
290+
exclusive
291+
onChange={(_, x) => setPage(x)}
292+
>
293+
<ToggleButton value="homework">
294+
<AssignmentIcon color={"primary"}/>
295+
</ToggleButton>
296+
<ToggleButton value="group">
297+
<GroupIcon color={"primary"}/>
298+
</ToggleButton>
299+
</ToggleButtonGroup>
300+
{page === "homework" && <CardContent>
283301
<Grid container xs={"auto"} spacing={1} direction={"row"} justifyContent={"space-between"}
284302
alignItems={"center"} alignContent={"center"} style={{marginTop: -24}}>
285303
<Grid item>
@@ -306,15 +324,6 @@ const CourseHomeworkEditor: FC<{
306324
</Grid>
307325
</Grid>
308326
<Grid container>
309-
<GroupSelector
310-
courseId={courseId}
311-
courseStudents={courseStudents}
312-
onGroupIdChange={(groupId?: number) => setSelectedGroupId(groupId)}
313-
selectedGroupId={selectedGroupId}
314-
choiceDisabled={!isNewHomework}
315-
onGroupsUpdate={props.onGroupsUpdate}
316-
groups={props.groups}
317-
/>
318327
{tags.includes(TestTag) &&
319328
<Grid item>
320329
<Alert severity="info" variant={"outlined"}>
@@ -402,8 +411,19 @@ const CourseHomeworkEditor: FC<{
402411
confirmationWord={''}
403412
confirmationText={''}
404413
/>
405-
</CardContent>
406-
)
414+
</CardContent>}
415+
{page === "group" && <CardContent>
416+
<GroupSelector
417+
courseId={courseId}
418+
courseStudents={courseStudents}
419+
onGroupIdChange={(groupId?: number) => setSelectedGroupId(groupId)}
420+
selectedGroupId={selectedGroupId}
421+
choiceDisabled={!isNewHomework}
422+
onGroupsUpdate={props.onGroupsUpdate}
423+
groups={props.groups}
424+
/>
425+
</CardContent>}
426+
</Stack>
407427
}
408428

409429
const CourseHomeworkExperimental: FC<{

0 commit comments

Comments
 (0)