Wersja MVP

This commit is contained in:
Flatlogic Bot 2026-01-11 17:25:38 +00:00
parent 1639a6367c
commit 803226678c

View File

@ -232,7 +232,7 @@ $status_colors = [
data-person-name="<?= htmlspecialchars($person['first_name'] . ' ' . $person['last_name']) ?>"
data-bni-group-id="<?= $col['group_id'] ?>"
data-meeting-datetime="<?= $meeting_datetime ?>"
data-initial-status="<?= $status ?>"
data-current-status="<?= $status ?>"
title="Status: <?= ucfirst($status) ?>"></span>
</td>
<?php endforeach; ?>
@ -596,7 +596,7 @@ document.addEventListener('DOMContentLoaded', function () {
function updateDot(dot, status) {
const color = statusColors[status] || 'secondary';
dot.className = `badge rounded-circle bg-${color} meeting-dot`;
dot.dataset.initialStatus = status;
dot.dataset.currentStatus = status;
dot.title = `Status: ${status.charAt(0).toUpperCase() + status.slice(1)}`;
}
@ -609,7 +609,13 @@ document.addEventListener('DOMContentLoaded', function () {
document.querySelectorAll(`.meeting-dot[data-bni-group-id='${groupId}']`).forEach(dot => {
dot.dataset.meetingDatetime = meetingDate;
const personId = dot.dataset.personId;
let status = dot.dataset.initialStatus; // Keep default if no record
const personRow = dot.closest('tr');
const personGroupId = personRow.dataset.groupId;
const isMember = personGroupId == groupId;
let defaultStatus = isMember ? 'present' : 'none';
let status = defaultStatus;
if (data.attendance[personId]) {
status = data.attendance[personId].attendance_status;
}
@ -630,7 +636,7 @@ document.addEventListener('DOMContentLoaded', function () {
const personName = dot.dataset.personName;
const bniGroupId = dot.dataset.bniGroupId;
const meetingDatetime = dot.dataset.meetingDatetime;
const initialStatus = dot.dataset.initialStatus;
const currentStatus = dot.dataset.currentStatus || 'none';
// The person's own group is on the TR element
const personGroupId = dot.closest('tr').dataset.groupId;
@ -641,7 +647,7 @@ document.addEventListener('DOMContentLoaded', function () {
meetingPersonName.textContent = personName;
meetingGroupId.value = bniGroupId;
meetingDateInput.value = meetingDatetime;
attendanceStatus.value = initialStatus;
attendanceStatus.value = currentStatus;
// Show/hide guest survey
guestSurveySection.style.display = !isMember ? 'block' : 'none';