query("SELECT k.id, k.nama_kawasan, k.created_at, COUNT(w.id) as jumlah_warga FROM kawasan_kumuh k LEFT JOIN warga_miskin w ON ST_Contains(k.geom, w.geom) GROUP BY k.id ORDER BY k.id DESC")->fetchAll(); $pageTitle='Kawasan Kumuh'; $activeNav='kawasan'; require_once __DIR__ . '/partials/header.php'; ?>
Gambar di Peta
$r): $cnt=(int)$r['jumlah_warga']; $status=$cnt>3?'Rawan Kumuh':($cnt>0?'Perlu Perhatian':'Aman'); $badge=$cnt>3?'badge-danger':($cnt>0?'badge-warning':'badge-success'); ?>
#Nama KawasanWarga TerdampakStatusDitambahkanAksi
Belum ada data kawasan. Gambar polygon di peta untuk menambahkan.
const API=APP_BASE + '/api/kawasan_kumuh.php'; function editRow(r){ document.getElementById('editId').value=r.id; document.getElementById('editNama').value=r.nama_kawasan; openModal('modalEdit'); } async function update(){ const id=document.getElementById('editId').value; const res=await fetch(API+'?id='+id,{method:'PUT',headers:{'Content-Type':'application/json'},body:JSON.stringify({nama_kawasan:document.getElementById('editNama').value})}); const d=await res.json(); if(d.status==='success'){showToast('Kawasan diperbarui!');setTimeout(()=>location.reload(),900);}else showToast(d.message,'error'); } async function hapus(id,nama){ if(!confirm(`Hapus kawasan "${nama}"?`))return; const res=await fetch(API+'?id='+id,{method:'DELETE'}); const d=await res.json(); if(d.status==='success'){showToast('Kawasan dihapus!');setTimeout(()=>location.reload(),900);}else showToast(d.message,'error'); } JS; ?>