Major Fix, added new logic for pages, added redirect for env-error.php and db-error.php
This commit is contained in:
@@ -12,7 +12,7 @@
|
||||
define("INCLUDES_FOLD", ROOT_DIR . "includes/");
|
||||
|
||||
// - ASSETS
|
||||
define("CSS_FOLD", ASSETS_FOLD . " css/");
|
||||
define("CSS_FOLD", ASSETS_FOLD . "css/");
|
||||
define("IMG_FOLD", ASSETS_FOLD . "img/");
|
||||
define("JS_FOLD", ASSETS_FOLD . "js/");
|
||||
define("FONTS_FOLD", CSS_FOLD . "fonts/");
|
||||
|
||||
@@ -1,123 +1,52 @@
|
||||
<?php
|
||||
|
||||
// CHECKING ERROR ENV AND PRINT RESULT
|
||||
function error_env($option){
|
||||
function error_env($option) {
|
||||
global $env;
|
||||
if (empty($env)){
|
||||
$result="<p class='err_env_result'><span>ERROR:</span> Variable '<u>\$env</u>' is empty!</p>";
|
||||
$help="<p class='err_env_help'>Please insert the correct value in the file 'config/init.php' or leave it to 'generic'</p>";
|
||||
}else{
|
||||
$result="<p class='err_env_result'><span>ERROR:</span> The environment '<u>{$env}</u>' not exists!</p>";
|
||||
$help="<p class='err_env_help'>Please insert the correct value in the file 'config/init.php or leave it to 'generic'</p>";
|
||||
|
||||
if (empty($env)) {
|
||||
$result = "<p class='err_env_result'><span>ERROR:</span> Variable '<u>\$env</u>' is empty!</p>";
|
||||
$help = "<p class='err_env_help'>Please insert the correct value in the file 'config/init.php' or leave it to 'generic'</p>";
|
||||
} else {
|
||||
$result = "<p class='err_env_result'><span>ERROR:</span> The environment '<u>{$env}</u>' does not exist!</p>";
|
||||
$help = "<p class='err_env_help'>Please insert the correct value in the file 'config/init.php' or leave it to 'generic'</p>";
|
||||
}
|
||||
|
||||
if($option == "result"){
|
||||
echo $result;
|
||||
}elseif($option == "help"){
|
||||
echo $help;
|
||||
}else{
|
||||
echo "ERROR: Wrong attribute in declared in the function!";
|
||||
die;
|
||||
}
|
||||
echo $option === "result" ? $result : $help;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Get current page safely.
|
||||
*/
|
||||
function get_current_page() {
|
||||
$page = $_GET["page"] ?? "home";
|
||||
|
||||
$page = strtolower(trim($page));
|
||||
$page = preg_replace("/[^a-z0-9\-]/", "", $page);
|
||||
|
||||
if ($page === "") {
|
||||
$page = "home";
|
||||
}
|
||||
|
||||
function php_pages($option=null, $domain_shows=null){
|
||||
// Required files or shows error if debug has been set to on.
|
||||
if ($option == "error"){
|
||||
$required_pages=[
|
||||
PAGES_FOLD . "404.php",
|
||||
PAGES_FOLD . "home.php"
|
||||
];
|
||||
return $page;
|
||||
}
|
||||
|
||||
$missing_pages=[];
|
||||
|
||||
foreach($required_pages as $required){
|
||||
if (! file_exists($required)){
|
||||
array_push($missing_pages, $required);
|
||||
}
|
||||
}
|
||||
/**
|
||||
* Resolve page file.
|
||||
*/
|
||||
function resolve_page() {
|
||||
$page = get_current_page();
|
||||
$file = PAGES_FOLD . $page . ".php";
|
||||
|
||||
if (! empty($missing_pages)){
|
||||
if (DEBUG){
|
||||
echo "<h1>ERROR: Missing Required Pages:</h1>";
|
||||
echo "<ul>";
|
||||
foreach ($missing_pages as $pagepath){
|
||||
echo "<li>Required file '" . $pagepath . "' is missing!</li>";
|
||||
}
|
||||
echo "</ul>";
|
||||
|
||||
}
|
||||
die("Required pages are missing!.");
|
||||
}
|
||||
|
||||
}
|
||||
// 👉 rendi disponibile globalmente
|
||||
$GLOBALS["current_page"] = $page;
|
||||
|
||||
if (isset($_GET["page"])){
|
||||
// ---- OPTIONS IF PAGE HAS BEEN DECLARED ----
|
||||
$pagecheck=$_GET["page"];
|
||||
if (empty($pagecheck)){
|
||||
$page="home";
|
||||
}elseif(file_exists(PAGES_FOLD . $pagecheck . ".php")){
|
||||
$page=$pagecheck;
|
||||
}else{
|
||||
$page="404";
|
||||
}
|
||||
|
||||
// title for pages
|
||||
if ( $domain_shows == "show" ){
|
||||
$page_title=DOMAIN . " | " . ucfirst($page);
|
||||
}else{
|
||||
$page_title= ucfirst($page);
|
||||
}
|
||||
|
||||
// return call
|
||||
switch($option){
|
||||
case "return_page":
|
||||
return $page;
|
||||
break;
|
||||
case "return_title":
|
||||
return $page_title;
|
||||
break;
|
||||
case "page":
|
||||
echo $page;
|
||||
break;
|
||||
case "title":
|
||||
echo $page_title;
|
||||
break;
|
||||
default:
|
||||
echo $page;
|
||||
}
|
||||
|
||||
}else{
|
||||
// ---- OPTIONS IF PAGE HAS NOT BEEN DECLARED ----
|
||||
$page = "home";
|
||||
|
||||
// title for pages
|
||||
if ( $domain_shows == "show" ){
|
||||
$page_title=DOMAIN . " | " . ucfirst($page);
|
||||
}else{
|
||||
$page_title= ucfirst($page);
|
||||
}
|
||||
|
||||
// return call
|
||||
switch($option){
|
||||
case "return_page":
|
||||
return $page;
|
||||
break;
|
||||
case "return_title":
|
||||
return $page_title;
|
||||
break;
|
||||
case "page":
|
||||
echo $page;
|
||||
break;
|
||||
case "title":
|
||||
echo $page_title;
|
||||
break;
|
||||
default:
|
||||
echo $page;
|
||||
}
|
||||
|
||||
}
|
||||
if (file_exists($file)) {
|
||||
return $file;
|
||||
}
|
||||
|
||||
?>
|
||||
|
||||
http_response_code(404);
|
||||
$GLOBALS["current_page"] = "404";
|
||||
return PAGES_FOLD . "404.php";
|
||||
}
|
||||
@@ -15,6 +15,7 @@
|
||||
/* ----------------------------------- */
|
||||
default:
|
||||
// Showing error page by default.
|
||||
$error_env_check=true;
|
||||
include("pages/env-error.php");
|
||||
die;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user