39199-vm/includes/auth.php
Flatlogic Bot 5ee3262843 roni
2026-03-15 02:58:05 +00:00

39 lines
955 B
PHP

<?php
declare(strict_types=1);
if (session_status() === PHP_SESSION_NONE) {
session_start();
}
// Credentials
const ADMIN_USERNAME = 'roni';
const ADMIN_PASSWORD_HASH = '$2y$10$hkUDAZesiL6CbEdU34ovGOEDmfAjfeAF9E5eu.Yxlv0xO8aX5UBIW'; // Hash of 'wijaya91'
function is_admin_logged_in(): bool {
return !empty($_SESSION['admin_logged_in']);
}
function require_admin(): void {
if (!is_admin_logged_in()) {
header('Location: admin_login.php');
exit;
}
}
function login_admin(string $username, string $password): bool {
if ($username === ADMIN_USERNAME && password_verify($password, ADMIN_PASSWORD_HASH)) {
session_regenerate_id(true);
$_SESSION['admin_logged_in'] = true;
$_SESSION['admin_user'] = $username;
return true;
}
return false;
}
function logout_admin(): void {
$_SESSION = [];
if (session_status() === PHP_SESSION_ACTIVE) {
session_destroy();
}
}