Update auth.php

This commit is contained in:
2026-06-09 10:30:03 +00:00
parent 3dd3c0d492
commit 00152291ac
+7 -43
View File
@@ -1,58 +1,22 @@
<?php <?php
/** // Pastikan session_start tidak ganda
* auth.php — Middleware Autentikasi & Otorisasi if (session_status() === PHP_SESSION_NONE) {
* Include file ini di setiap halaman yang memerlukan login. session_start();
*/
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() { function isAdminPemerintah() {
return isset($_SESSION['role']) && $_SESSION['role'] === 'admin_pemerintah'; return (isset($_SESSION['role']) && $_SESSION['role'] === 'admin');
} }
/**
* Cek apakah user adalah Admin Rumah Ibadah
*/
function isAdminIbadah() { function isAdminIbadah() {
return isset($_SESSION['role']) && $_SESSION['role'] === 'admin_ibadah'; return (isset($_SESSION['role']) && $_SESSION['role'] === 'operator');
} }
/**
* 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() { function getUserNama() {
return isset($_SESSION['nama']) ? $_SESSION['nama'] : 'User'; return $_SESSION['nama'] ?? 'User';
} }
/**
* Ambil role user yang sedang login
*/
function getUserRole() { function getUserRole() {
return isset($_SESSION['role']) ? $_SESSION['role'] : ''; return $_SESSION['role'] ?? 'guest';
}
/**
* Require role tertentu, redirect ke dashboard jika tidak sesuai
*/
function requireRole($role) {
if (!isset($_SESSION['role']) || $_SESSION['role'] !== $role) {
header("Location: dashboard.php");
exit;
}
} }
?> ?>