Files
fitme3070.pt/site/crossfit.php
T
andreandClaude Sonnet 5 65182eecd6 feat(site): horário sem barra de dias em cima, CrossFit ganha contactos
- Horário de aulas (home e CrossFit, mesmo componente partilhado): removida
  a barra de botões Seg/Ter/Qua/Qui/Sex/Sab acima da grelha — o próprio
  cabeçalho do dia (já existente) passa a ser sempre visível (antes só em
  desktop, 3 dias) e ganha setas ‹ › ao lado do nome do dia para mudar de
  dia em ecrãs de telemóvel/tablet. No desktop (3 dias lado a lado) as
  setas ficam escondidas — clicar no dia lateral já muda o dia em foco.
  CSS/JS morto do botão-filtro removido.
- Informações e contactos extraído para site/includes/contactos.php,
  partilhado pela home e pelo CrossFit — a página CrossFit ganha a mesma
  secção de contactos (localização, telefone, e-mail, horário de
  funcionamento, mapa, formulário) em vez de só linkar de volta à home.
  Hero e restantes secções do CrossFit não foram tocados.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-26 08:19:12 +01:00

71 lines
3.3 KiB
PHP

<?php
// Was Home::crossfit.
$current_uri_2 = 'crossfit';
// Old /home/crossfit links → the default gym's CrossFit page.
if (($_GET['gym'] ?? '') === '') {
require_once __DIR__ . '/../config/db.php';
require_once __DIR__ . '/../config/functions.php';
$to = db_gyms_default($pdo) ?? gym_fallback();
header('Location: ' . gym_url($to, 'crossfit'), true, 301);
exit;
}
require __DIR__ . '/_open.php';
// Only gyms with a CrossFit box have this page.
if (empty($gym['has_crossfit'])) { ob_get_level() && ob_end_clean(); require __DIR__ . '/404.php'; exit; }
$data = [
'title' => 'CrossFit',
'schedule_h2' => 'Horário Crossfit',
'bg_img' => '',
'gallery_h2' => 'CrossFit',
'gallery_path' => 'uploads/gallery/2/',
'map_h2' => 'A nossa Localização',
'header_video_video' => 'site/assets/img/crossfit.mp4',
'header_video_img' => 'site/assets/img/crossfit.jpg',
'rel_footer_h2' => 'Precisas de um<span>Personal Trainer?</span><br> Entra em contacto connosco.',
'ad_footer_link' => rawurlencode($gym['slug']) . '/?assunto=pt_cf#contactos',
'ad_footer_text' => 'Tens objetivos específicos na área do CrossFit? Temos a solução para ti. Atinge e melhora os teus resultados com os nossos profissionais especializados na área. Todas as viagens são melhores quando vividas com a companhia certa. ',
'ad_footer_h2' => 'Precisas de um <span>Personal Trainer</span> especializado em CrossFit?',
'ad_footer_bg' => '',
'ad_footer_text_btn' => 'Entra em contacto connosco',
];
$data['data'] = site_horario($pdo, 'crossfit', (int) $gym['id']);
echo view('header_video', $data);
echo view('crossfit', $data);
echo view('crossfit_badge', $data);
echo view('gallery', $data);
echo view('horario', $data);
// ── Informações e contactos ───────────────────────────────────────────────────
// Same partial as the home page (site/includes/contactos.php), so visitors get
// the gym's contact info + form without leaving the CrossFit page.
$gid = (int) $gym['id'];
$on = fn(string $key) => gym_section_on($gym, $key);
$whours = $on('workhours') ? site_work_hours($pdo, $gid) : [];
$work_hours_days = ['Segunda-Sexta' => 'segunda', 'Sábado' => 'sabado', 'Domingo/Feriados' => 'domingo'];
usort($whours, fn($x, $y) => strcmp((string) $x['open'], (string) $y['open']));
$assunto = '';
if (isset($_GET['assunto'])) {
$assunto = $_GET['assunto'];
if ($assunto == 'pt'): $assunto = 'Informações - Personal Trainer';
elseif ($assunto == 'pt_cf'): $assunto = 'Informações - Personal Trainer CrossFit';
elseif ($assunto == 'insc'): $assunto = 'Informações - Inscrição no Ginásio';
elseif ($assunto == 'aula'): $assunto = 'Informações - Aula Experimental';
elseif ($assunto == 'nut'): $assunto = 'Informações - Nutricionista';
elseif ($assunto == 'fis'): $assunto = 'Informações - Fisioterapia';
endif;
}
echo view('contactos', [
'whours' => $whours,
'work_hours_days' => $work_hours_days,
'assunto' => $assunto,
'show' => $on('contactos'),
]);
echo view('map', $data);
echo view('ad_footer', $data);
echo view('footer', $data);