Rejestr projektów klasowych
Katalog projektów realizowanych przez klasy szkolne: rejestracja projektu z opisem, składem zespołu, terminem oddania i statusem. System umożliwia śledzenie postępu i przeglądanie historii.
Rejestr projektów klasowych
Katalog projektów realizowanych przez klasy szkolne: rejestracja projektu z opisem, składem zespołu, terminem oddania i statusem. System umożliwia śledzenie postępu i przeglądanie historii.
{ "projects": [ { "id": 1, "title": "Aplikacja pogodowa", "description": "Strona wyświetlająca pogodę z zewnętrznego API", "class": "3TI", "subject": "Programowanie webowe", "team": ["Jan Kowalski", "Anna Nowak"], "deadline": "2026-03-31", "status": "in_progress", "grade": null, "created_at": "2026-01-15", "status_history": [ {"status": "planned", "changed_at": "2026-01-15"}, {"status": "in_progress", "changed_at": "2026-02-01"} ] } ]}Wymagane funkcje:
Wszystko z A, plus:
Wszystko z B, plus:
Wykrywanie zbliżającego się terminu:
function getDeadlineStatus(string $deadline): string { $daysLeft = (strtotime($deadline) - time()) / 86400; if ($daysLeft < 0) return 'overdue'; if ($daysLeft <= 7) return 'soon'; return 'ok';}Parsowanie składu zespołu:
$teamInput = trim($_POST['team'] ?? '');$team = array_filter(array_map('trim', explode(',', $teamInput)));if (count($team) < 1) { $errors[] = "Podaj co najmniej jednego członka zespołu";}$team = array_map('htmlspecialchars', array_values($team));