push to master

This commit is contained in:
wrzesinski-hubert
2021-01-23 18:54:20 +01:00
parent ec1012b3a0
commit f013ef54ee
6 changed files with 71 additions and 22 deletions

View File

@ -21,6 +21,8 @@ interface CourseContext {
userID: string;
isDataLoading: boolean;
historyBasket: Array<Basket>;
tour: string;
getCurrentTour: () => void;
addCourseToBasket: (courses: Course) => void;
changeHoveredGroup: (group: Group | null) => void;
changeGroupInBasket: (group: any, courseId: number) => void;
@ -57,6 +59,7 @@ export const CoursesProvider = ({ children }: CoursesProviderProps) => {
const [userID, setUserID] = useState('');
const [hoveredGroup, setHoveredGroup] = useState<Group | undefined | null>(null);
const [isDataLoading, setIsDataLoading] = useState(false);
const [tour, setTour] = useState('');
const selectBasketIds = () => {
const classesIds = basket.map((course) => course?.classes?.id).filter((course) => course !== undefined);
@ -76,12 +79,12 @@ export const CoursesProvider = ({ children }: CoursesProviderProps) => {
const selectSchedulerEvents = () => {
return basket.reduce((res, el) => {
const { name } = el;
const { name, symbol } = el;
if (el.classes) {
res.push({ ...el.classes, name });
res.push({ ...el.classes, name, symbol});
}
if (el.lecture) {
res.push({ ...el.lecture, name });
res.push({ ...el.lecture, name, symbol });
}
return res;
}, [] as Array<SchedulerEvent>);
@ -161,7 +164,7 @@ export const CoursesProvider = ({ children }: CoursesProviderProps) => {
});
} catch (e) {
console.log('error: ', e);
enqueueSnackbar('Zapisywanie planu nie powiodło się', {
enqueueSnackbar('Zapisywanie niemożliwe w czasie bezturowym', {
variant: 'error',
action,
});
@ -275,9 +278,19 @@ export const CoursesProvider = ({ children }: CoursesProviderProps) => {
setHistoryBasket(basket);
};
const getCurrentTour = async () => {
try {
const { data } = await axiosInstance.get(`${process.env.REACT_APP_API_URL}/api/v1/configurator/config/tour`);
setTour(data.currentTour);
} catch (e) {
console.log(e);
}
};
useEffect(() => {
setIsDataLoading(true);
setTimeout(() => {
getCurrentTour();
fetchCourses();
getNewestTimetable();
setIsDataLoading(false);
@ -294,6 +307,8 @@ export const CoursesProvider = ({ children }: CoursesProviderProps) => {
timetableHistory,
isDataLoading,
historyBasket,
tour,
getCurrentTour,
addCourseToBasket,
changeHoveredGroup,
changeGroupInBasket,