setFlashdata('success', 'Evento restaurado.'); header('Location: ' . base_url('views/admin/events/edit.php?id=' . $id)); exit; } $item = db_events_get($pdo, $id); if (!$item) { header('Location: index.php'); exit; } // Delete a single lead. if (isset($_POST['delete_lead'])) { csrf_check(); db_event_lead_delete($pdo, (int) $_POST['delete_lead'], $id); session()->setFlashdata('success', 'Inscrição removida.'); header('Location: ' . base_url('views/admin/events/edit.php?id=' . $id . '#leads')); exit; } $errors = []; $data = $item; if ($_SERVER['REQUEST_METHOD'] === 'POST' && isset($_POST['save_event'])) { csrf_check(); $data = [ 'title' => trim($_POST['title'] ?? ''), 'slug' => trim($_POST['slug'] ?? ''), 'subtitle' => trim($_POST['subtitle'] ?? ''), 'summary' => trim($_POST['summary'] ?? ''), 'description' => trim($_POST['description'] ?? ''), 'cor' => trim($_POST['cor'] ?? '#C2D500'), 'location' => trim($_POST['location'] ?? ''), 'event_starts_at' => trim($_POST['event_starts_at'] ?? ''), 'event_ends_at' => trim($_POST['event_ends_at'] ?? ''), 'publish_from' => trim($_POST['publish_from'] ?? ''), 'publish_until' => trim($_POST['publish_until'] ?? ''), 'is_active' => isset($_POST['is_active']) ? 1 : 0, 'cta_label' => trim($_POST['cta_label'] ?? ''), 'cta_url' => trim($_POST['cta_url'] ?? ''), 'show_lead_form' => isset($_POST['show_lead_form']) ? 1 : 0, 'hero_image' => $item['hero_image'], ]; if ($data['title'] === '') $errors[] = 'O título é obrigatório.'; if ($data['publish_from'] === '') $errors[] = 'A data de início da publicação é obrigatória.'; if ($data['publish_until'] === '') $errors[] = 'A data de fim da publicação é obrigatória.'; if ($data['publish_from'] !== '' && $data['publish_until'] !== '' && strtotime($data['publish_until']) < strtotime($data['publish_from'])) { $errors[] = 'A data de fim da publicação não pode ser anterior à de início.'; } // Hero: a new upload replaces the current image; an explicit "remover" clears it. $uploaded = null; if (!$errors) { $hero_err = null; $uploaded = events_image_upload($_FILES['hero_file'] ?? [], $hero_err); if ($hero_err) $errors[] = $hero_err; } if (!$errors) { if ($uploaded) { events_image_remove($item['hero_image']); $data['hero_image'] = $uploaded; } elseif (!empty($_POST['remove_hero'])) { events_image_remove($item['hero_image']); $data['hero_image'] = ''; } // Slug: keep the field's value (auto-regenerate from title only if emptied). $data['slug'] = events_make_slug($pdo, $data['slug'] !== '' ? $data['slug'] : $data['title'], $id); db_events_update($pdo, $id, $data); session()->setFlashdata('success', 'Evento atualizado.'); header('Location: ' . base_url('views/admin/events/edit.php?id=' . $id)); exit; } // On error keep the existing slug for the form. $data['slug'] = $item['slug']; } $leads = db_event_leads_list($pdo, $id); $status = events_status($item); $page_title = 'Editar Evento'; include __DIR__ . '/../../../includes/header.php'; ?>

Editar Evento

/evento/
Este evento está apagado.
Deixe em branco para gerar a partir do título.
Cancelar

Inscrições

Ainda não há inscrições para este evento.

DataNomeEmailTelefoneMensagemConsent.
— —' ?> —' ?> —