WizdomWeb/public/index.php

51 lines
1.5 KiB
PHP

<?php
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);
// File: public/index.php
// Version: v1.2
// Purpose: Application entry point with Arsha one-pager routing
// Project: Wizdom Networks Website
require_once __DIR__ . '/../vendor/autoload.php';
use Dotenv\Dotenv;
use WizdomNetworks\WizeWeb\Core\Router;
use WizdomNetworks\WizeWeb\Utils\Logger;
use WizdomNetworks\WizeWeb\Utils\ErrorHandler;
use WizdomNetworks\WizeWeb\Controllers\LandingController;
use WizdomNetworks\WizeWeb\Controllers\ContactController; // <-- Missing
$dotenv = Dotenv::createImmutable(__DIR__ . '/../');
$dotenv->load();
Logger::info("Bootstrapping application");
$router = new Router();
// Arsha landing routes
$router->add('', LandingController::class, 'index');
$router->add('/', LandingController::class, 'index');
$router->add('index.php', LandingController::class, 'index');
// Contact form submission
$router->add('/contact', ContactController::class, 'submit', 'POST');
// Optional: fallback for /contact without leading slash (rare case)
// $router->add('contact', ContactController::class, 'submit', 'POST');
// Debug block — safe to leave commented
/*
echo "<pre>";
echo "REQUEST_URI: " . $_SERVER['REQUEST_URI'] . "\n";
echo "Parsed path: " . parse_url($_SERVER['REQUEST_URI'], PHP_URL_PATH) . "\n";
echo "Trimmed: " . trim(parse_url($_SERVER['REQUEST_URI'], PHP_URL_PATH), '/') . "\n";
echo "</pre>";
exit;
*/
$requestedPath = parse_url($_SERVER['REQUEST_URI'], PHP_URL_PATH);
$router->dispatch($requestedPath);