Files
webgis-poverty-mapping/auth.php
T
2026-06-06 22:02:14 +07:00

59 lines
1.3 KiB
PHP

<?php
/**
* auth.php — Middleware Autentikasi & Otorisasi
* Include file ini di setiap halaman yang memerlukan login.
*/
session_start();
// Redirect ke login jika belum login
if (!isset($_SESSION['user_id'])) {
header("Location: login.php");
exit;
}
/**
* Cek apakah user adalah Admin Pemerintah
*/
function isAdminPemerintah() {
return isset($_SESSION['role']) && $_SESSION['role'] === 'admin_pemerintah';
}
/**
* Cek apakah user adalah Admin Rumah Ibadah
*/
function isAdminIbadah() {
return isset($_SESSION['role']) && $_SESSION['role'] === 'admin_ibadah';
}
/**
* Ambil ID rumah ibadah milik user (untuk admin_ibadah)
*/
function getUserIbadahId() {
return isset($_SESSION['id_rumah_ibadah']) ? (int)$_SESSION['id_rumah_ibadah'] : 0;
}
/**
* Ambil nama user yang sedang login
*/
function getUserNama() {
return isset($_SESSION['nama']) ? $_SESSION['nama'] : 'User';
}
/**
* Ambil role user yang sedang login
*/
function getUserRole() {
return isset($_SESSION['role']) ? $_SESSION['role'] : '';
}
/**
* Require role tertentu, redirect ke dashboard jika tidak sesuai
*/
function requireRole($role) {
if (!isset($_SESSION['role']) || $_SESSION['role'] !== $role) {
header("Location: dashboard.php");
exit;
}
}
?>