error handling
This commit is contained in:
parent
a2edadd640
commit
0249aad0a3
63
index.php
63
index.php
@ -1,41 +1,24 @@
|
||||
<?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();
|
||||
<?php
|
||||
try {
|
||||
require_once 'lib/config.php';
|
||||
global $routerConfig;
|
||||
try {
|
||||
require_once 'lib/main.php';
|
||||
} catch (Exception $eMain) {
|
||||
$page = file_get_contents($routerConfig["template_dir"] . "500.html");
|
||||
$error_msg = "Error Message";
|
||||
try {
|
||||
require_once 'lib/account.php';
|
||||
if (isAdmin()) {
|
||||
$error_msg = $eMain;
|
||||
}
|
||||
} catch (Exception) {
|
||||
} finally {
|
||||
$page = str_replace("__TEMPLATE_ERROR__", $error_msg, $page);
|
||||
echo $page;
|
||||
http_response_code(500);
|
||||
}
|
||||
}
|
||||
|
||||
if($routerRequest["type"] == "api") {
|
||||
echo getEndpoint($routerRequest["page_name"]);
|
||||
|
||||
}elseif ($routerRequest["type"] == "page") {
|
||||
/** @noinspection PhpArrayIsAlwaysEmptyInspection */
|
||||
echo getPage($routerRequest["page_name"]);
|
||||
}
|
||||
else{
|
||||
echo "Unknown request";
|
||||
}
|
||||
}
|
||||
else{
|
||||
exit();
|
||||
}
|
||||
|
||||
} catch (Exception $e){
|
||||
echo $e;
|
||||
}
|
37
lib/main.php
Normal file
37
lib/main.php
Normal 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";
|
||||
}
|
||||
}
|
@ -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
|
||||
|
@ -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);
|
||||
}
|
||||
}
|
||||
|
@ -2,5 +2,6 @@
|
||||
<h2>Niekto to pobabral</h2>
|
||||
<h1 class="error-code">500</h1>
|
||||
<h3><i class="ri-error-warning-line"></i> Nejaký neschopný vývojár nevedel robiť túto stránku. <i class="ri-error-warning-line"></i></h3>
|
||||
<h4>__TEMPLATE_ERROR__</h4>
|
||||
<a href="/index" class="back"><i class="ri-arrow-left-line"></i> SPÄŤ DOMOV</a>
|
||||
</div>
|
Loading…
Reference in New Issue
Block a user