Files
fitme3070.pt/views/admin/horario/edit.php
T
andreandClaude Opus 4.8 e68d357177 Initial import of fitme3070.pt platform
Plain-PHP fleet platform with id.andmore.pt SSO. Wires shared/platform-tools
as a submodule (platform_update, backups, git/migration tools) like the other
platforms.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-12 10:44:58 +01:00

87 lines
4.6 KiB
PHP

<?php
require __DIR__ . '/../../../config/db.php';
require __DIR__ . '/../../../config/functions.php';
$user = ["id"=>1,"name"=>"Teste","email"=>"teste@fitme3070.pt","role"=>"sysadmin"]; $_SESSION["user_id"] = 1; $_SESSION["user"] = $user; // require_admin();
$id = (int) ($_GET['id'] ?? 0);
if (!$id) { header('Location: index.php'); exit; }
$item = db_horario_get($pdo, $id);
if (!$item) { header('Location: index.php'); exit; }
$errors = [];
$data = $item;
$modalidades = db_modalidades_options($pdo);
$dias = ['segunda'=>'Segunda','terça'=>'Terça','quarta'=>'Quarta','quinta'=>'Quinta','sexta'=>'Sexta','sábado'=>'Sábado','domingo'=>'Domingo'];
$salas = ['sala1'=>'Sala 1','sala2'=>'Sala 2','crossfit'=>'CrossFit',''=>'Outro'];
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
csrf_check();
$data = [
'id_modalidade' => (int) ($_POST['id_modalidade'] ?? 0),
'dia_semana' => trim($_POST['dia_semana'] ?? ''),
'hora_inicio' => trim($_POST['hora_inicio'] ?? ''),
'hora_fim' => trim($_POST['hora_fim'] ?? ''),
'local' => trim($_POST['local'] ?? ''),
];
if (!$data['id_modalidade']) $errors[] = 'A modalidade é obrigatória.';
if ($data['dia_semana'] === '') $errors[] = 'O dia é obrigatório.';
if ($data['hora_inicio'] === '') $errors[] = 'A hora de início é obrigatória.';
if ($data['hora_fim'] === '') $errors[] = 'A hora de fim é obrigatória.';
if (!$errors) {
$changed = db_horario_update($pdo, $id, $data);
if ($changed) session()->setFlashdata('success', 'Aula atualizada.');
else session()->setFlashdata('warning', 'Nenhuma alteração.');
header('Location: ' . base_url('views/admin/horario/edit.php?id=' . $id));
exit;
}
}
$page_title = 'Editar Aula';
include __DIR__ . '/../../../includes/header.php';
?>
<div class="container" style="max-width:600px;">
<div class="d-flex justify-content-between align-items-center mb-4">
<h1 class="h3 mb-0">Editar Aula</h1>
<a class="btn btn-outline-secondary btn-sm" href="index.php"><i class="bi bi-arrow-left me-1"></i>Voltar</a>
</div>
<?php foreach ($errors as $e): ?><div class="alert alert-danger"><?= htmlspecialchars($e) ?></div><?php endforeach; ?>
<form method="POST" class="card shadow-sm"><div class="card-body">
<?= csrf_field() ?>
<div class="row g-3">
<div class="col-12"><label class="form-label">Modalidade <span class="text-danger">*</span></label>
<select class="form-select" name="id_modalidade" required>
<option value="">Selecionar…</option>
<?php foreach ($modalidades as $m): ?>
<option value="<?= $m['m_id'] ?>" <?= ($data['id_modalidade'] ?? 0) == $m['m_id'] ? 'selected' : '' ?>><?= htmlspecialchars($m['nome']) ?></option>
<?php endforeach; ?>
</select></div>
<div class="col-md-4"><label class="form-label">Dia <span class="text-danger">*</span></label>
<select class="form-select" name="dia_semana" required>
<option value="">Selecionar…</option>
<?php foreach ($dias as $val => $label): ?>
<option value="<?= $val ?>" <?= ($data['dia_semana'] ?? '') === $val ? 'selected' : '' ?>><?= $label ?></option>
<?php endforeach; ?>
</select></div>
<div class="col-md-4"><label class="form-label">Início <span class="text-danger">*</span></label>
<input type="time" class="form-control" name="hora_inicio" required value="<?= htmlspecialchars(substr($data['hora_inicio'] ?? '09:00', 0, 5)) ?>"></div>
<div class="col-md-4"><label class="form-label">Fim <span class="text-danger">*</span></label>
<input type="time" class="form-control" name="hora_fim" required value="<?= htmlspecialchars(substr($data['hora_fim'] ?? '10:00', 0, 5)) ?>"></div>
<div class="col-12"><label class="form-label">Sala</label>
<select class="form-select" name="local">
<?php foreach ($salas as $val => $label): ?>
<option value="<?= $val ?>" <?= ($data['local'] ?? '') === $val ? 'selected' : '' ?>><?= $label ?></option>
<?php endforeach; ?>
</select></div>
</div>
<div class="mt-4 d-flex gap-2">
<button type="submit" class="btn btn-primary">Atualizar</button>
<a class="btn btn-outline-secondary" href="index.php">Cancelar</a>
</div>
</div></form>
</div>
<?php include __DIR__ . '/../../../includes/footer.php'; ?>