Files
survey/config/auth.php
T

49 lines
1.1 KiB
PHP

<?php
/**
* Authentication Helper
* TPU Survey System
*/
session_start();
function isLoggedIn() {
return isset($_SESSION['user_id']);
}
function isAdmin() {
return isset($_SESSION['role']) && $_SESSION['role'] === 'admin';
}
function isTeacher() {
return isset($_SESSION['role']) && $_SESSION['role'] === 'teacher';
}
function requireLogin() {
if (!isLoggedIn()) {
http_response_code(401);
header('Content-Type: application/json; charset=utf-8');
echo json_encode(['error' => 'กรุณาเข้าสู่ระบบ']);
exit;
}
}
function requireAdmin() {
requireLogin();
if (!isAdmin()) {
http_response_code(403);
header('Content-Type: application/json; charset=utf-8');
echo json_encode(['error' => 'ไม่มีสิทธิ์เข้าถึง']);
exit;
}
}
function getCurrentUser() {
if (!isLoggedIn()) return null;
return [
'id' => $_SESSION['user_id'],
'username' => $_SESSION['username'],
'role' => $_SESSION['role'],
'full_name' => $_SESSION['full_name']
];
}