Deploy WebGIS 01-05 dengan Docker
This commit is contained in:
@@ -0,0 +1,55 @@
|
||||
<?php
|
||||
require_once __DIR__ . '/auth.php';
|
||||
require_login(true);
|
||||
|
||||
$user = current_user();
|
||||
$role = $user['role'];
|
||||
$data = ['rumah_ibadah' => [], 'penerima' => []];
|
||||
|
||||
// Ambil rumah ibadah sesuai role.
|
||||
if ($role === 'super_admin') {
|
||||
$sql = "SELECT ri.*, u.nama AS nama_admin FROM rumah_ibadah ri LEFT JOIN users u ON u.id=ri.user_id WHERE ri.status_pengajuan IN ('diterima','menunggu') AND COALESCE(ri.status_hapus,'normal')<>'disetujui' ORDER BY ri.id DESC";
|
||||
$res = $koneksi->query($sql);
|
||||
while ($row = $res->fetch_assoc()) $data['rumah_ibadah'][] = $row;
|
||||
} elseif ($role === 'admin_rumah_ibadah') {
|
||||
$uid = (int) $user['id'];
|
||||
// Admin hanya melihat rumah ibadah miliknya, termasuk yang masih menunggu.
|
||||
$stmt = $koneksi->prepare("SELECT ri.*, u.nama AS nama_admin FROM rumah_ibadah ri LEFT JOIN users u ON u.id=ri.user_id WHERE ri.user_id=? AND ri.status_pengajuan IN ('diterima','menunggu') AND COALESCE(ri.status_hapus,'normal')<>'disetujui' ORDER BY ri.id DESC");
|
||||
$stmt->bind_param('i', $uid);
|
||||
$data['rumah_ibadah'] = fetch_all_stmt($stmt);
|
||||
} else {
|
||||
$res = $koneksi->query("SELECT ri.*, NULL AS nama_admin FROM rumah_ibadah ri WHERE ri.status_pengajuan='diterima' AND COALESCE(ri.status_hapus,'normal')<>'disetujui' ORDER BY ri.id DESC");
|
||||
while ($row = $res->fetch_assoc()) $data['rumah_ibadah'][] = $row;
|
||||
}
|
||||
|
||||
// Ambil penerima sesuai role. Marker ditolak tidak dikirim.
|
||||
if ($role === 'super_admin') {
|
||||
$sql = "SELECT pb.*, ri.nama_rumah_ibadah, ri.agama FROM penerima_bantuan pb LEFT JOIN rumah_ibadah ri ON ri.id=pb.rumah_ibadah_id WHERE pb.status_pengajuan IN ('diterima','menunggu','dibatalkan') AND COALESCE(pb.status_hapus,'normal')<>'disetujui' ORDER BY pb.id DESC";
|
||||
$res = $koneksi->query($sql);
|
||||
while ($row = $res->fetch_assoc()) $data['penerima'][] = $row;
|
||||
} elseif ($role === 'admin_rumah_ibadah') {
|
||||
$ids = get_admin_rumah_ibadah_ids((int)$user['id'], true);
|
||||
if (!empty($ids)) {
|
||||
$types = '';
|
||||
$params = [];
|
||||
$in = build_in_condition('pb.rumah_ibadah_id', $ids, $types, $params);
|
||||
$sql = "SELECT pb.*, ri.nama_rumah_ibadah, ri.agama
|
||||
FROM penerima_bantuan pb
|
||||
LEFT JOIN rumah_ibadah ri ON ri.id=pb.rumah_ibadah_id
|
||||
WHERE $in
|
||||
AND pb.status_pengajuan IN ('diterima','menunggu')
|
||||
AND COALESCE(pb.status_hapus,'normal')<>'disetujui'
|
||||
ORDER BY pb.id DESC";
|
||||
$stmt = $koneksi->prepare($sql);
|
||||
stmt_bind($stmt, $types, $params);
|
||||
$data['penerima'] = fetch_all_stmt($stmt);
|
||||
}
|
||||
} else {
|
||||
$uid = (int) $user['id'];
|
||||
$stmt = $koneksi->prepare("SELECT pb.*, ri.nama_rumah_ibadah, ri.agama FROM penerima_bantuan pb LEFT JOIN rumah_ibadah ri ON ri.id=pb.rumah_ibadah_id WHERE pb.user_id=? AND pb.status_pengajuan IN ('diterima','menunggu','dibatalkan') AND COALESCE(pb.status_hapus,'normal')<>'disetujui' ORDER BY pb.id DESC");
|
||||
$stmt->bind_param('i', $uid);
|
||||
$data['penerima'] = fetch_all_stmt($stmt);
|
||||
}
|
||||
|
||||
json_response('ok', 'Data peta berhasil diambil.', $data);
|
||||
?>
|
||||
Reference in New Issue
Block a user