error handling

This commit is contained in:
2024-02-03 16:46:09 +01:00
parent a2edadd640
commit 0249aad0a3
5 changed files with 75 additions and 45 deletions

37
lib/main.php Normal file
View File

@@ -0,0 +1,37 @@
<?php /** @noinspection PhpArrayIsAlwaysEmptyInspection */
/** @noinspection PhpArrayIsAlwaysEmptyInspection */
/** @noinspection PhpArrayIsAlwaysEmptyInspection */
/** @noinspection PhpIncludeInspection */
require_once "secrets/config.php";
require_once 'lib/config.php';
require_once "lib/navigation.php";
require_once "lib/router.php";
require_once "lib/page.php";
require_once "lib/endpoint.php";
require_once "lib/account.php";
$routerConfig = array();
$routerRequest = array();
loadRouterConfig();
$canRender = initRouter();
if($canRender) {
/** @noinspection PhpArrayIsAlwaysEmptyInspection */
session_set_cookie_params(0, '/', "." . $routerRequest["domain"] . "." . $routerRequest["tld"], true, true);
session_start();
if(!isLoggedIn()){
setDefaultSessionData();
}
if($routerRequest["type"] == "api") {
echo getEndpoint($routerRequest["page_name"]);
}elseif ($routerRequest["type"] == "page") {
/** @noinspection PhpArrayIsAlwaysEmptyInspection */
echo getPage($routerRequest["page_name"]);
}
else{
echo "Unknown request";
}
}

View File

@@ -2,13 +2,19 @@
function getDynamicPermission($file): int {
global $routerConfig;
$page_tmp = include_once($file);
$permission_level = $page_tmp["parameters"]["minimal_permission_level"];
try {
$page_tmp = include_once($file);
$permission_level = $page_tmp["parameters"]["minimal_permission_level"];
if(!is_numeric($permission_level) || $permission_level <= 0){
$permission_level = $routerConfig["default_page_permission_level"];
if (!is_numeric($permission_level) || $permission_level <= 0) {
$permission_level = $routerConfig["default_page_permission_level"];
}
}
catch (Exception){
$permission_level = $routerConfig["default_page_permission_level"];
} finally {
return $permission_level;
}
return $permission_level;
}
function generateNavigation(): string

View File

@@ -97,6 +97,9 @@ function getPage($page_name = null): array|false|string
$page_tmp = file_get_contents($routerConfig["template_dir"] . "403.html");
$pageMetadata = parsePageTag($page_tmp);
$page = $pageMetadata["output"];
if(!$page){
$page = "";
}
http_response_code(403);
}
}