<?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$allowedtrue)) {
  
$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';
?>