diff --git a/js/app.js b/js/app.js index abe18ec..ca16548 100644 --- a/js/app.js +++ b/js/app.js @@ -1,86 +1,45 @@ -let criteriaData = 1 -let studentsData = []; // Baza danych uczniów -let currentCategory = "behavior"; // Domyślna kategoria - -console.log("data") -// Wczytanie kryteriów z pliku JSON -fetch('../data/criteria.json') - .then(response => response.json()) - .then(data => { - console.log(data); - criteriaData = data; - populateCategorySelect(); - loadStudents(); // Wczytanie pierwszej listy uczniów - }) - .catch(error => { - console.error("Błąd podczas wczytywania pliku criteria.json: ", error); - }); - -// Załaduj kategorie do selektora -function populateCategorySelect() { - const categorySelect = document.getElementById('category-select'); - criteriaData.categories.forEach(category => { - const option = document.createElement('option'); - option.value = category.id; - option.text = category.name; - categorySelect.appendChild(option); - }); +// Funkcja do wczytania pliku JSON +async function fetchJSONFile(filePath) { + try { + const response = await fetch(filePath); + if (!response.ok) { + throw new Error(`HTTP error! Status: ${response.status}`); + } + return await response.json(); + } catch (error) { + console.error("Error fetching JSON file:", error); + } } -// Załaduj kryteria na podstawie wybranej kategorii -function loadCriteriaByCategory() { - currentCategory = document.getElementById('category-select').value; - generateStudentTable(); +// Funkcja do wczytania pliku class.json +async function loadClasses() { + const classFilePath = 'data/class.json'; + const classes = await fetchJSONFile(classFilePath); + + if (classes) { + console.log('Classes loaded:', classes); + + // Iterowanie po wszystkich klasach i wczytywanie plików z danymi uczniów + for (const classInfo of classes) { + const studentsFilePath = classInfo.file_path; + const studentsData = await fetchJSONFile(studentsFilePath); + + if (studentsData) { + console.log(`Students loaded for class ${classInfo.class}:`, studentsData); + // Tutaj możesz przechowywać dane lub je przetwarzać według potrzeb + processClassData(classInfo, studentsData); + } + } + } } -// Wczytanie listy uczniów z pliku -function loadStudents() { - fetch('data/students/zsl_class_2a_fizyka_2024_2025.json') // Załaduj pierwszy plik jako przykład - .then(response => response.json()) - .then(data => { - studentsData = data.students; - generateStudentTable(); - }) - .catch(error => { - console.error("Błąd podczas wczytywania pliku studentów: ", error); - }); -} - -// Generowanie tabeli uczniów i kryteriów -function generateStudentTable() { - const table = document.getElementById('student-table'); - const thead = document.querySelector('thead tr'); +// Funkcja do przetwarzania danych o klasach i uczniach +function processClassData(classInfo, studentsData) { + console.log(`Class: ${classInfo.class}, Group: ${classInfo.group}, Students Count: ${classInfo.student_count}`); + console.log('Student Data:', studentsData); - table.innerHTML = ''; // Wyczyść tabelę uczniów - thead.innerHTML = '