<?php
require __DIR__ . '/includes/config.php';
require __DIR__ . '/includes/auth.php';
$allowed = [
'home',
'login',
'dashboard',
'my_requests',
'request_create',
'request_fill',
'request_submit',
'request_handle',
'group_requests',
'workflows',
'workflows_create',
'workflows_define',
'workflows_edit',
'notifications',
'search',
'email_test',
'logout'
];
$page = $_GET['page'] ?? 'home';
if (!in_array($page, $allowed, true)) {
$page = '404';
}
if ($page === 'logout') {
do_logout();
header('Location: index.php?page=login');
exit;
}
require __DIR__ . '/includes/header.php';
// Pages that need login
if (in_array($page, [
'dashboard',
'my_requests',
'request_create',
'request_fill',
'request_submit',
'request_handle',
'group_requests',
'notifications',
'search'
], true)) {
require_login();
}
// Pages only for admin
if (in_array($page, ['workflows','workflows_create','workflows_define', 'workflows_edit', 'email_test', 'search'], true)) {
require_admin();
}
include __DIR__ . '/pages/' . $page . '.php';
require __DIR__ . '/includes/footer.php';
?>