Request new data on date change

This commit is contained in:
2022-06-02 21:55:28 +02:00
parent 5489e6377c
commit bb2891a968
2 changed files with 39 additions and 17 deletions

View File

@ -63,12 +63,25 @@ export const parsedTimetable = computed(() => {
});
});
export async function fetchData() {
const baseUrl = import.meta.env.VITE_API_ENDPOINT || "/api";
const baseUrl = import.meta.env.VITE_API_ENDPOINT || "/api";
export async function fetchData() {
const checkResponse = await fetch(`${baseUrl}/check`);
if (checkResponse.status != 200) router.push("/login");
fetchClassList();
fetchTimetable();
fetchSubstitutions();
fetchHistory();
}
export async function fetchClassList() {
const classListResponse = await fetch(`${baseUrl}/classes`);
const classListData = await classListResponse.json();
classList.value = classListData;
}
export async function fetchTimetable() {
const timetableResponse = await fetch(
`${baseUrl}/timetable?class=${timetableClass.value}`
);
@ -77,27 +90,29 @@ export async function fetchData() {
console.warn("API Error: " + timetableData.error);
timetable.value = [];
} else timetable.value = timetableData;
}
export async function fetchSubstitutions() {
const requestDate = `?date=${selectedDate.value.getTime()}`;
const substitutionResponse = await fetch(
substitutionFilter.value == "all"
? `${baseUrl}/substitutions`
: `${baseUrl}/substitutions?class=${substitutionFilter.value}`
? `${baseUrl}/substitutions${requestDate}`
: `${baseUrl}/substitutions${requestDate}&class=${substitutionFilter.value}`
);
const substitutionData = await substitutionResponse.json();
substitutions.value = substitutionData;
}
export async function fetchHistory() {
const requestDate = `?date=${selectedDate.value.getTime()}`;
const historyResponse = await fetch(
substitutionFilter.value == "all"
? `${baseUrl}/history`
: `${baseUrl}/history?class=${substitutionFilter.value}`
? `${baseUrl}/history${requestDate}`
: `${baseUrl}/history${requestDate}&class=${substitutionFilter.value}`
);
const historyData = await historyResponse.json();
if (historyData.error) console.warn("API Error: " + historyData.error);
else history.value = historyData;
const classListResponse = await fetch(`${baseUrl}/classes`);
const classListData = await classListResponse.json();
classList.value = classListData;
}
fetchData();