From c112570065df54dd0f5cecc0a2465d187402c3d0 Mon Sep 17 00:00:00 2001 From: Sidney Date: Thu, 28 May 2026 19:33:30 -0300 Subject: [PATCH] fix: resolve missing class schedules in pre-enrollment settings and public form dropdown by formatting day and start/end times correctly --- manager/components/PreMatricula.tsx | 10 +++++++++- manager/server.selfhosted.js | 9 ++++++++- 2 files changed, 17 insertions(+), 2 deletions(-) diff --git a/manager/components/PreMatricula.tsx b/manager/components/PreMatricula.tsx index 817d8d2..a97dae3 100644 --- a/manager/components/PreMatricula.tsx +++ b/manager/components/PreMatricula.tsx @@ -17,6 +17,8 @@ const FIELD_TYPES: Record = { date: 'Data', select: 'Seleção', textarea: 'Texto Longo', number: 'Número' }; +const DAY_NAMES = ['Domingo', 'Segunda-feira', 'Terça-feira', 'Quarta-feira', 'Quinta-feira', 'Sexta-feira', 'Sábado']; + const PreMatricula: React.FC = ({ data, onConvert }) => { const [config, setConfig] = useState(null); const [campos, setCampos] = useState([]); @@ -337,7 +339,13 @@ const PreMatricula: React.FC = ({ data, onConvert }) => { {config.turmasPermitidas.map(id => { const turma = turmas.find(t => t.id === id); if (!turma) return null; - const horarioStr = turma.horario || `${turma.dia_semana || ''} ${turma.horario_inicio_padrao || ''} - ${turma.horario_fim_padrao || ''}`.trim() || 'Horário não definido'; + const dayName = (turma.dia_semana !== null && turma.dia_semana !== undefined && DAY_NAMES[parseInt(turma.dia_semana)]) + ? DAY_NAMES[parseInt(turma.dia_semana)] + : (turma.horario || ''); + const timeStr = turma.horario_inicio_padrao && turma.horario_fim_padrao + ? ` das ${turma.horario_inicio_padrao} às ${turma.horario_fim_padrao}` + : ''; + const horarioStr = `${dayName}${timeStr}`.trim() || 'Horário não definido'; return (
diff --git a/manager/server.selfhosted.js b/manager/server.selfhosted.js index 30f062a..6da3c23 100644 --- a/manager/server.selfhosted.js +++ b/manager/server.selfhosted.js @@ -3179,7 +3179,14 @@ async function startServer() { const count = prematriculaCounts[t.id] || 0; const vagas = t.vagas_prematricula; const esgotado = vagas !== null && count >= vagas; - const horarioStr = t.horario || `${t.dia_semana || ''} ${t.horario_inicio_padrao || ''} - ${t.horario_fim_padrao || ''}`.trim(); + const DAY_NAMES = ['Domingo', 'Segunda-feira', 'Terça-feira', 'Quarta-feira', 'Quinta-feira', 'Sexta-feira', 'Sábado']; + const dayName = t.dia_semana !== null && t.dia_semana !== undefined && DAY_NAMES[parseInt(t.dia_semana)] + ? DAY_NAMES[parseInt(t.dia_semana)] + : (t.horario || ''); + const timeStr = t.horario_inicio_padrao && t.horario_fim_padrao + ? ` das ${t.horario_inicio_padrao} às ${t.horario_fim_padrao}` + : ''; + const horarioStr = `${dayName}${timeStr}`.trim() || 'Horário não definido'; return { id: t.id, nome: t.nome,