Files
2026-06-13 11:24:58 +07:00

92 lines
5.2 KiB
PHP

<?php
require_once __DIR__ . '/../config/db.php';
require_once __DIR__ . '/../config/auth_check.php';
requireAnyRole(['enumerator']);
$pdo = Database::getConnection();
$user = currentUser();
$uid = $user['id'];
$wilayah = $user['wilayah_tugas'] ?: 'Belum ditentukan';
$mine = (int)$pdo->query("SELECT COUNT(*) FROM warga_miskin WHERE created_by=" . (int)$uid)->fetchColumn();
$verif = (int)$pdo->query("SELECT COUNT(*) FROM warga_miskin WHERE created_by=" . (int)$uid . " AND status_verifikasi='terverifikasi'")->fetchColumn();
$belum = $mine - $verif;
$recent = $pdo->prepare("SELECT id, nama_kk, status_verifikasi, created_at FROM warga_miskin WHERE created_by=? ORDER BY id DESC LIMIT 5");
$recent->execute([$uid]);
$recentRows = $recent->fetchAll();
?>
<!DOCTYPE html>
<html lang="id">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Enumerator — WebGIS Kemiskinan</title>
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap" rel="stylesheet">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.0/css/all.min.css">
<style>
* { margin:0; padding:0; box-sizing:border-box; font-family:'Inter',sans-serif; }
body { background:#F3F4F6; color:#111827; padding-bottom:30px; }
.topbar { background:linear-gradient(135deg,#2563EB,#1D4ED8); color:#fff; padding:20px 16px; }
.topbar h1 { font-size:1.1rem; font-weight:700; }
.topbar p { font-size:0.82rem; opacity:0.9; margin-top:2px; }
.container { padding:16px; max-width:560px; margin:0 auto; }
.stat-row { display:grid; grid-template-columns:1fr 1fr 1fr; gap:10px; margin-bottom:14px; }
.stat { background:#fff; border:1px solid #E5E7EB; border-radius:14px; padding:14px 8px; text-align:center; }
.stat .num { font-size:1.5rem; font-weight:800; color:#2563EB; }
.stat .lbl { font-size:0.7rem; color:#6B7280; margin-top:4px; }
.btn-big { display:flex; align-items:center; gap:14px; width:100%; background:#2563EB; color:#fff;
border:none; border-radius:14px; padding:18px; font-size:1rem; font-weight:600; cursor:pointer;
text-decoration:none; margin-bottom:12px; box-shadow:0 4px 12px rgba(37,99,235,0.25); }
.btn-big.green { background:#059669; box-shadow:0 4px 12px rgba(5,150,105,0.25); }
.btn-big.gray { background:#fff; color:#111827; border:1px solid #E5E7EB; box-shadow:none; }
.btn-big i { font-size:1.4rem; }
.card { background:#fff; border:1px solid #E5E7EB; border-radius:14px; padding:16px; margin-bottom:14px; }
.card h3 { font-size:0.9rem; margin-bottom:10px; }
.item { display:flex; justify-content:space-between; align-items:center; padding:9px 0; border-bottom:1px solid #F3F4F6; font-size:0.88rem; }
.item:last-child { border-bottom:none; }
.badge { font-size:0.7rem; padding:3px 9px; border-radius:20px; }
.b-ok { background:#D1FAE5; color:#065F46; } .b-no { background:#F3F4F6; color:#6B7280; }
.logout { display:block; text-align:center; color:#DC2626; font-size:0.85rem; margin-top:8px; text-decoration:none; font-weight:600; }
</style>
</head>
<body>
<div class="topbar">
<h1><i class="fas fa-clipboard-check"></i> Halo, <?= htmlspecialchars($user['nama_lengkap'] ?: $user['username']) ?></h1>
<p>Petugas Lapangan · Wilayah: <?= htmlspecialchars($wilayah) ?></p>
</div>
<div class="container">
<div class="stat-row">
<div class="stat"><div class="num"><?= $mine ?></div><div class="lbl">Input Saya</div></div>
<div class="stat"><div class="num"><?= $verif ?></div><div class="lbl">Terverifikasi</div></div>
<div class="stat"><div class="num"><?= $belum ?></div><div class="lbl">Menunggu</div></div>
</div>
<a href="<?= app_url('enumerator/input.php') ?>" class="btn-big">
<i class="fas fa-plus-circle"></i> <span>Input Data Warga Baru</span>
</a>
<a href="<?= app_url('enumerator/data.php') ?>" class="btn-big gray">
<i class="fas fa-list"></i> <span>Data yang Saya Input</span>
</a>
<a href="<?= app_url('peta_publik.php') ?>" class="btn-big green">
<i class="fas fa-map-marked-alt"></i> <span>Lihat Peta Sebaran</span>
</a>
<div class="card">
<h3>🕘 Input Terbaru</h3>
<?php if ($recentRows): foreach ($recentRows as $r): ?>
<div class="item">
<div><?= htmlspecialchars($r['nama_kk']) ?><div style="font-size:0.72rem;color:#9CA3AF;"><?= date('d M Y H:i', strtotime($r['created_at'])) ?></div></div>
<span class="badge <?= $r['status_verifikasi']==='terverifikasi'?'b-ok':'b-no' ?>"><?= $r['status_verifikasi']==='terverifikasi'?'Terverifikasi':'Menunggu' ?></span>
</div>
<?php endforeach; else: ?>
<p style="color:#9CA3AF;font-size:0.85rem;">Belum ada data. Mulai dengan "Input Data Warga Baru".</p>
<?php endif; ?>
</div>
<a href="<?= app_url('logout.php') ?>" class="logout"><i class="fas fa-sign-out-alt"></i> Keluar</a>
</div>
</body>
</html>