/* Sections part 1: Nav, Hero, Stats, Tentang, Kegiatan */ const { useState: uS1, useEffect: uE1 } = React; /* ---------------- NAV ---------------- */ const Nav = () => { const [scrolled, setScrolled] = uS1(false); const [open, setOpen] = uS1(false); const [active, setActive] = uS1(""); const route = useRoute(); const onHome = route.type === "home"; const solid = scrolled || !onHome; uE1(() => { const onScroll = () => setScrolled(window.scrollY > 60); onScroll(); window.addEventListener("scroll", onScroll, { passive: true }); // scroll spy const ids = ["tentang", "pengurus", "kegiatan", "testimoni", "edukasi", "kontak"]; const io = new IntersectionObserver( (entries) => entries.forEach((e) => { if (e.isIntersecting) setActive(e.target.id); }), { rootMargin: "-45% 0px -50% 0px" } ); ids.forEach((id) => { const el = document.getElementById(id); if (el) io.observe(el); }); return () => { window.removeEventListener("scroll", onScroll); io.disconnect(); }; }, [onHome]); const go = (e, id) => { e.preventDefault(); setOpen(false); if (!onHome) { navigate(""); setTimeout(() => document.getElementById(id)?.scrollIntoView({ behavior: "smooth" }), 140); } else document.getElementById(id)?.scrollIntoView({ behavior: "smooth" }); }; const home = (e) => { e.preventDefault(); setOpen(false); navigate(""); }; return ( <>
Logo Perwatusi DPD Riau
PERWATUSIDPD Riau
go(e, "kontak")}>Gabung Komunitas
setOpen(false)}>
e.stopPropagation()}>
PERWATUSIDPD Riau
{SITE.nav.map((n) => go(e, n.id)}>{n.label})} go(e, "kontak")}>Gabung Komunitas
); }; /* ---------------- HERO ---------------- */ const Hero = () => { const go = (e, id) => { e.preventDefault(); document.getElementById(id)?.scrollIntoView({ behavior: "smooth" }); }; return (
RIAU Perkumpulan Warga Tulang Sehat Indonesia Kuatkan Tulang,
Sehatkan Badan Huu Haa
DPD Perwatusi Riau hadir mendampingi keluarga Riau untuk memahami, mencegah, dan menjaga kesehatan tulang — dari remaja hingga lansia. go(e, "edukasi")}>Mulai Edukasi go(e, "kegiatan")}>Lihat Kegiatan
RDL
Dipercaya 1.200+ warga Riau untuk hidup lebih sehat
Lucky Kartika Sari, SE.
Lucky Kartika Sari, SE. Ketua DPD Perwatusi Riau
); }; /* ---------------- STATS ---------------- */ const Stats = () => (
{SITE.stats.map((s, i) => ( {s.u} {s.label} ))}
); /* ---------------- TENTANG ---------------- */ const Tentang = () => (
2024 Tahun berdirinya DPD Perwatusi Riau
Tentang Kami

Sahabat tulang sehat bagi setiap keluarga di Riau

Perwatusi (Perkumpulan Warga Tulang Sehat Indonesia) DPD Riau adalah komunitas nirlaba yang bergerak di bidang edukasi dan pencegahan gangguan kesehatan tulang, khususnya osteoporosis.

{SITE.visiMisi.map((v, i) => (

{v.title}

{v.text}

))}
); /* ---------------- PENGURUS ---------------- */ const Pengurus = () => { const groups = SITE.pengurus; if (!groups || groups.length === 0) return null; return (
Kepengurusan

Mereka yang menggerakkan Perwatusi Riau

Dewan Pengurus DPD Perwatusi Riau — individu berdedikasi yang hadir untuk kesehatan tulang masyarakat Riau.

{groups.map((g, gi) => (

{g.group}

{g.members.map((m, mi) => (
{m.photo ? {m.name} : }
{m.name} {m.jabatan}
))}
))}
); }; /* ---------------- KEGIATAN ---------------- */ const Kegiatan = () => { const [f, setF] = uS1("Semua"); const list = f === "Semua" ? SITE.kegiatan : SITE.kegiatan.filter((k) => k.filter === f); const pg = usePaged(list, 6, [f]); const changePage = (n) => { pg.setPage(n); document.getElementById("kegiatan")?.scrollIntoView({ behavior: "smooth" }); }; return (
Kegiatan

Aksi nyata untuk Riau yang bertulang sehat

Dari skrining gratis hingga senam bersama — kegiatan rutin kami terbuka untuk seluruh warga.

{SITE.kegiatanFilters.map((t) => ( ))}
{pg.pageItems.map((k, i) => ( { e.preventDefault(); navigate("kegiatan/" + slugify(k.title)); }}>
{k.cat}
{k.d}{k.m}

{k.title}

{k.loc}

{k.desc}

Selengkapnya
))}

Menampilkan {pg.from}–{pg.to} dari {pg.total} kegiatan

{SITE.upcoming && SITE.upcoming.enabled !== false && (
{SITE.upcoming.tag}

{SITE.upcoming.title}

{SITE.upcoming.desc}

{ e.preventDefault(); document.getElementById("kontak").scrollIntoView({ behavior: "smooth" }); }}>Daftar Sekarang
)}
); }; Object.assign(window, { Nav, Hero, Stats, Tentang, Pengurus, Kegiatan });