2024-01-16 19:24:40 +01:00
|
|
|
<?php
|
2024-01-31 22:05:23 +01:00
|
|
|
function renderDynamicPage($page_file): false|string
|
2024-01-16 20:43:57 +01:00
|
|
|
{
|
|
|
|
require_once $page_file;
|
|
|
|
return render();
|
|
|
|
}
|
|
|
|
|
2024-01-31 22:05:23 +01:00
|
|
|
function getPage($page_name = null): array|false|string
|
|
|
|
{
|
2024-01-16 20:43:57 +01:00
|
|
|
global $routerConfig;
|
|
|
|
global $routerRequest;
|
2024-01-16 19:39:54 +01:00
|
|
|
|
2024-01-16 20:43:57 +01:00
|
|
|
if(!$page_name){
|
|
|
|
$page_name = $routerRequest["page_name"];
|
2024-01-16 19:39:54 +01:00
|
|
|
}
|
2024-01-16 19:24:40 +01:00
|
|
|
|
2024-01-16 20:57:51 +01:00
|
|
|
$dynamic_page_file = $routerConfig["page_dir"] . $routerRequest["subdomain"] . "/" . $page_name . ".php";
|
|
|
|
$page_file = $routerConfig["page_dir"] . $routerRequest["subdomain"] . "/" . $page_name . ".html";
|
2024-01-16 19:24:40 +01:00
|
|
|
|
2024-01-16 20:57:51 +01:00
|
|
|
$dynamic_page_file_global = $routerConfig["page_dir"] . "global/" . $page_name . ".php";
|
|
|
|
$page_file_global = $routerConfig["page_dir"] . "global/" . $page_name . ".html";
|
2024-01-16 19:24:40 +01:00
|
|
|
|
2024-01-16 20:43:57 +01:00
|
|
|
$skeleton = file_get_contents($routerConfig["template_dir"] . "skeleton.html");
|
|
|
|
$nav = file_get_contents($routerConfig["template_dir"] . "nav.html");
|
2024-01-16 19:24:40 +01:00
|
|
|
|
|
|
|
if (file_exists($dynamic_page_file_global)){
|
2024-01-16 20:43:57 +01:00
|
|
|
$page = renderDynamicPage($dynamic_page_file_global);
|
2024-01-16 19:24:40 +01:00
|
|
|
}
|
|
|
|
elseif (file_exists($page_file_global)){
|
|
|
|
$page = file_get_contents($page_file_global);
|
|
|
|
}
|
|
|
|
elseif (file_exists($dynamic_page_file)){
|
2024-01-16 20:43:57 +01:00
|
|
|
$page = renderDynamicPage($dynamic_page_file);
|
2024-01-16 19:24:40 +01:00
|
|
|
}
|
|
|
|
elseif (file_exists($page_file)){
|
|
|
|
$page = file_get_contents($page_file);
|
|
|
|
}
|
|
|
|
else{
|
2024-01-16 20:43:57 +01:00
|
|
|
$page = file_get_contents($routerConfig["template_dir"] . "404.html");
|
2024-01-16 19:38:42 +01:00
|
|
|
}
|
2024-01-16 20:43:57 +01:00
|
|
|
$navpages = generateNavigation();
|
2024-01-16 19:38:42 +01:00
|
|
|
|
|
|
|
$nav = str_replace("__NAV_PAGES__", $navpages, $nav);
|
|
|
|
|
|
|
|
$out = $skeleton;
|
|
|
|
$out = str_replace("__TEMPLATE__NAV__", $nav, $out);
|
|
|
|
$out = str_replace("__TEMPLATE__PAGE__", $page, $out);
|
2024-01-16 20:43:57 +01:00
|
|
|
return str_replace("__TEMPLATE_PAGE_NAME__", $page_name, $out);
|
2024-01-18 11:49:38 +01:00
|
|
|
}
|