Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 7 additions & 2 deletions src/components/exchange/schedule/ExchangeSchedule.tsx
Original file line number Diff line number Diff line change
@@ -1,10 +1,14 @@
import { useContext, useEffect, useState } from "react";
import { useContext, useEffect, useState, ReactNode } from "react";
import { ClassDescriptor, SlotInfo } from "../../../@types";
import ScheduleContext from "../../../contexts/ScheduleContext";
import { Schedule } from "../../planner";
import ConflictsContext from "../../../contexts/ConflictsContext";

const ExchangeSchedule = () => {
type ExchangeScheduleProps = {
refresh?: ReactNode;
}

const ExchangeSchedule = ({refresh}: ExchangeScheduleProps) => {
const { exchangeSchedule } = useContext(ScheduleContext);
const [slots, setSlots] = useState<SlotInfo[]>([]);
const [classes, setClasses] = useState<ClassDescriptor[]>([]);
Expand Down Expand Up @@ -59,6 +63,7 @@ const ExchangeSchedule = () => {
return <Schedule
classes={classes}
slots={slots}
refresh={refresh}
/>;
}

Expand Down
2 changes: 1 addition & 1 deletion src/components/exchange/schedule/RefreshScheduleButton.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ export default function RefreshScheduleButton({
return (
<Button
variant="icon"
className="h-4 p-4 bg-lightish text-black dark:bg-darkish dark:text-white"
className="bg-lightish text-black dark:bg-darkish dark:text-white"
onClick={() => {
forceRefreshStudentSchedule();
}}
Expand Down
7 changes: 5 additions & 2 deletions src/components/planner/Schedule.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -21,12 +21,14 @@ const hourValues = Array.from({ length: maxHour - minHour + 1 }, (_, i) => minHo

type Props = {
classes: Array<ClassDescriptor>,
slots: Array<SlotInfo>
slots: Array<SlotInfo>,
refresh?: React.ReactNode
}

const Schedule = ({
classes,
slots
slots,
refresh
}: Props) => {
const scheduleRef = useRef(null);

Expand Down Expand Up @@ -140,6 +142,7 @@ const Schedule = ({
<div className="flex gap-x-4">
<ScheduleTypes types={slotTypes} hiddenLessonsTypes={hiddenLessonsTypes} setHiddenLessonsTypes={setHiddenLessonsTypes} />
<div className="flex flex-row gap-x-2">
{refresh}
<ToggleScheduleGrid showGridHook={[showGrid, setShowGrid]} />
<PrintSchedule component={scheduleRef} optionName={currentOptionName} />
</div>
Expand Down
26 changes: 14 additions & 12 deletions src/pages/Exchange.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -123,18 +123,20 @@ const ExchangePage = () => {
</Alert>
</>
)}
{!loadingSchedule &&
<div className="relative bottom-2">
<div className="absolute hidden md:block">
<RefreshScheduleButton
forceRefreshStudentSchedule={forceRefreshStudentSchedule}
loadingSchedule={loadingSchedule}
isRefreshingStudentSchedule={isRefreshingStudentSchedule}
/>
</div>
</div>
}
<ExchangeSchedule />

<ExchangeSchedule
refresh = {!loadingSchedule &&(

<div className="hidden md:block">
<RefreshScheduleButton
forceRefreshStudentSchedule={forceRefreshStudentSchedule}
loadingSchedule={loadingSchedule}
isRefreshingStudentSchedule={isRefreshingStudentSchedule}
/>
</div>
)
}
/>
</div>
</div>

Expand Down