first qyality report
This commit is contained in:
@@ -128,15 +128,23 @@ document.addEventListener('DOMContentLoaded', () => {
|
||||
// Handle report button clicks
|
||||
reportButtons.forEach((button) => {
|
||||
button.addEventListener('click', () => {
|
||||
// Get the text label of the button
|
||||
const reportLabel = button.textContent.trim();
|
||||
|
||||
// Update the title dynamically with the button's text label
|
||||
reportTitle.textContent = `Data for "${reportLabel}"`;
|
||||
|
||||
// Fetch data for the selected report
|
||||
const reportNumber = button.dataset.report;
|
||||
|
||||
// Update the title dynamically
|
||||
reportTitle.textContent = `Data for "Report ${reportNumber}"`;
|
||||
|
||||
// Fetch data for the selected report (mocked for now)
|
||||
fetch(`/get_report_data?report=${reportNumber}`)
|
||||
.then((response) => response.json())
|
||||
.then((response) => {
|
||||
if (!response.ok) {
|
||||
throw new Error(`HTTP error! status: ${response.status}`);
|
||||
}
|
||||
return response.json();
|
||||
})
|
||||
.then((data) => {
|
||||
console.log("Fetched data:", data); // Debugging
|
||||
populateTable(data);
|
||||
})
|
||||
.catch((error) => {
|
||||
@@ -196,4 +204,74 @@ document.addEventListener('DOMContentLoaded', () => {
|
||||
alert('Exporting current report as PDF...');
|
||||
// Add logic to export the current report as PDF
|
||||
});
|
||||
});
|
||||
document.addEventListener('DOMContentLoaded', () => {
|
||||
const reportButtons = document.querySelectorAll('.report-btn');
|
||||
const reportTitle = document.getElementById('report-title');
|
||||
const reportTable = document.getElementById('report-table');
|
||||
|
||||
// Handle report button clicks
|
||||
reportButtons.forEach((button) => {
|
||||
button.addEventListener('click', () => {
|
||||
const reportNumber = button.dataset.report;
|
||||
// Get the text label of the button
|
||||
const reportLabel = button.textContent.trim();
|
||||
// Update the title dynamically
|
||||
reportTitle.textContent = `Date pentru "${reportLabel}"`;
|
||||
|
||||
// Fetch data for the selected report
|
||||
fetch(`/get_report_data?report=${reportNumber}`)
|
||||
.then((response) => {
|
||||
if (!response.ok) {
|
||||
throw new Error(`HTTP error! status: ${response.status}`);
|
||||
}
|
||||
return response.json();
|
||||
})
|
||||
.then((data) => {
|
||||
console.log("Fetched data:", data); // Debugging
|
||||
populateTable(data);
|
||||
})
|
||||
.catch((error) => {
|
||||
console.error('Error fetching report data:', error);
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
// Populate the table with data
|
||||
function populateTable(data) {
|
||||
const tableHead = reportTable.querySelector('thead tr');
|
||||
const tableBody = reportTable.querySelector('tbody');
|
||||
|
||||
// Clear existing table content
|
||||
tableHead.innerHTML = '';
|
||||
tableBody.innerHTML = '';
|
||||
|
||||
if (data.headers && data.rows) {
|
||||
// Populate table headers
|
||||
data.headers.forEach((header) => {
|
||||
const th = document.createElement('th');
|
||||
th.textContent = header;
|
||||
tableHead.appendChild(th);
|
||||
});
|
||||
|
||||
// Populate table rows
|
||||
data.rows.forEach((row) => {
|
||||
const tr = document.createElement('tr');
|
||||
row.forEach((cell) => {
|
||||
const td = document.createElement('td');
|
||||
td.textContent = cell;
|
||||
tr.appendChild(td);
|
||||
});
|
||||
tableBody.appendChild(tr);
|
||||
});
|
||||
} else {
|
||||
// No data available
|
||||
const tr = document.createElement('tr');
|
||||
const td = document.createElement('td');
|
||||
td.textContent = 'No data available.';
|
||||
td.colSpan = data.headers ? data.headers.length : 1;
|
||||
tr.appendChild(td);
|
||||
tableBody.appendChild(tr);
|
||||
}
|
||||
}
|
||||
});
|
||||
Reference in New Issue
Block a user