view controller rendering working
This commit is contained in:
parent
6e83b15ace
commit
15908dc7b0
|
|
@ -35,7 +35,7 @@ class EmergencySupportController
|
|||
];
|
||||
|
||||
Logger::debug("EmergencySupportController::index() - Data prepared successfully.");
|
||||
View::render('pages/emergency_support', $data);
|
||||
View::render('pages/services/emergency_support', $data);
|
||||
Logger::info("EmergencySupportController::index() - Emergency support page rendered successfully.");
|
||||
} catch (\Throwable $e) {
|
||||
Logger::error("EmergencySupportController::index() - Error rendering emergency support page: " . $e->getMessage());
|
||||
|
|
|
|||
|
|
@ -35,7 +35,7 @@ class ITConsultingController
|
|||
];
|
||||
|
||||
Logger::debug("ITConsultingController::index() - Data prepared successfully.");
|
||||
View::render('pages/it_consulting', $data);
|
||||
View::render('pages/services/it_consulting', $data);
|
||||
Logger::info("ITConsultingController::index() - IT consulting page rendered successfully.");
|
||||
} catch (\Throwable $e) {
|
||||
Logger::error("ITConsultingController::index() - Error rendering IT consulting page: " . $e->getMessage());
|
||||
|
|
|
|||
|
|
@ -5,11 +5,11 @@ use WizdomNetworks\WizeWeb\Core\View;
|
|||
use WizdomNetworks\WizeWeb\Utils\Logger;
|
||||
use WizdomNetworks\WizeWeb\Utils\ErrorHandler;
|
||||
|
||||
class ManagedHostingController
|
||||
class ManagedServicesController
|
||||
{
|
||||
public function index()
|
||||
{
|
||||
Logger::debug("ManagedHostingController::index() - Executing managed hosting page rendering.");
|
||||
Logger::debug("ManagedServicesController::index() - Executing managed hosting page rendering.");
|
||||
|
||||
try {
|
||||
$data = [
|
||||
|
|
@ -34,11 +34,11 @@ class ManagedHostingController
|
|||
]
|
||||
];
|
||||
|
||||
Logger::debug("ManagedHostingController::index() - Data prepared successfully.");
|
||||
View::render('pages/managed_hosting', $data);
|
||||
Logger::info("ManagedHostingController::index() - Managed hosting page rendered successfully.");
|
||||
Logger::debug("ManagedServicesController::index() - Data prepared successfully.");
|
||||
View::render('pages/services/managed_services', $data);
|
||||
Logger::info("ManagedServicesController::index() - Managed hosting page rendered successfully.");
|
||||
} catch (\Throwable $e) {
|
||||
Logger::error("ManagedHostingController::index() - Error rendering managed hosting page: " . $e->getMessage());
|
||||
Logger::error("ManagedServicesController::index() - Error rendering managed hosting page: " . $e->getMessage());
|
||||
ErrorHandler::exception($e);
|
||||
}
|
||||
}
|
||||
|
|
@ -35,7 +35,7 @@ class OnlineBrandManagementController
|
|||
];
|
||||
|
||||
Logger::debug("OnlineBrandManagementController::index() - Data prepared successfully.");
|
||||
View::render('pages/online_brand_management', $data);
|
||||
View::render('pages/services/online_brand_management', $data);
|
||||
Logger::info("OnlineBrandManagementController::index() - Online brand management page rendered successfully.");
|
||||
} catch (\Throwable $e) {
|
||||
Logger::error("OnlineBrandManagementController::index() - Error rendering online brand management page: " . $e->getMessage());
|
||||
|
|
|
|||
|
|
@ -35,7 +35,7 @@ class ProjectManagementController
|
|||
];
|
||||
|
||||
Logger::debug("ProjectManagementController::index() - Data prepared successfully.");
|
||||
View::render('pages/project_management', $data);
|
||||
View::render('pages/services/project_management', $data);
|
||||
Logger::info("ProjectManagementController::index() - Project management page rendered successfully.");
|
||||
} catch (\Throwable $e) {
|
||||
Logger::error("ProjectManagementController::index() - Error rendering project management page: " . $e->getMessage());
|
||||
|
|
|
|||
|
|
@ -27,13 +27,13 @@ class View
|
|||
extract($data);
|
||||
|
||||
// Build the full path to the view file
|
||||
$viewPath = __DIR__ . "/../../resources/views/$view.php";
|
||||
$viewPath = realpath(__DIR__ . "/../../resources/views/" . str_replace('.', '/', $view) . ".php");
|
||||
|
||||
// Debugging: Log resolved path
|
||||
Logger::debug("Resolved view path: $viewPath");
|
||||
|
||||
// Check if the file exists before including it
|
||||
if (file_exists($viewPath)) {
|
||||
// Validate and include the view file
|
||||
if ($viewPath && file_exists($viewPath)) {
|
||||
include $viewPath;
|
||||
Logger::debug("Successfully rendered view: $view");
|
||||
} else {
|
||||
|
|
|
|||
|
|
@ -1,45 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace WizdomNetworks\WizeWeb\Services;
|
||||
|
||||
use WizdomNetworks\WizeWeb\Utils\Logger;
|
||||
use WizdomNetworks\WizeWeb\Utils\ErrorHandler;
|
||||
|
||||
/**
|
||||
* Emergency Support Service
|
||||
*
|
||||
* Handles business logic related to emergency IT support services.
|
||||
*/
|
||||
class EmergencySupportService
|
||||
{
|
||||
/**
|
||||
* Provide emergency support service details.
|
||||
*
|
||||
* @return array Details of the emergency support service.
|
||||
*/
|
||||
public function getServiceDetails(): array
|
||||
{
|
||||
try {
|
||||
Logger::info("[DEBUG] Fetching emergency support service details");
|
||||
|
||||
$details = [
|
||||
'name' => 'Emergency Support',
|
||||
'description' => 'Round-the-clock emergency IT support for critical issues.',
|
||||
'features' => [
|
||||
'24/7 availability',
|
||||
'Rapid response',
|
||||
'Critical system recovery',
|
||||
],
|
||||
'price' => 'Custom pricing based on severity and scope',
|
||||
];
|
||||
|
||||
Logger::info("[DEBUG] Retrieved emergency support service details: " . json_encode($details));
|
||||
|
||||
return $details;
|
||||
} catch (\Exception $e) {
|
||||
Logger::error("[ERROR] Failed to fetch emergency support service details: " . $e->getMessage());
|
||||
ErrorHandler::exception($e);
|
||||
return [];
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -1,8 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace WizdomNetworks\WizeWeb\Services;
|
||||
|
||||
class HelpDeskService
|
||||
{
|
||||
// Placeholder for future implementation
|
||||
}
|
||||
|
|
@ -1,45 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace WizdomNetworks\WizeWeb\Services;
|
||||
|
||||
use WizdomNetworks\WizeWeb\Utils\Logger;
|
||||
use WizdomNetworks\WizeWeb\Utils\ErrorHandler;
|
||||
|
||||
/**
|
||||
* IT Consulting Service
|
||||
*
|
||||
* Handles business logic related to IT consulting services.
|
||||
*/
|
||||
class ITConsultingService
|
||||
{
|
||||
/**
|
||||
* Provide IT consulting service details.
|
||||
*
|
||||
* @return array Details of the IT consulting service.
|
||||
*/
|
||||
public function getServiceDetails(): array
|
||||
{
|
||||
try {
|
||||
Logger::info("[DEBUG] Fetching IT consulting service details");
|
||||
|
||||
$details = [
|
||||
'name' => 'IT Consulting',
|
||||
'description' => 'Expert IT consulting services to drive your business forward.',
|
||||
'features' => [
|
||||
'Infrastructure planning',
|
||||
'Cloud integration',
|
||||
'Technology strategy',
|
||||
],
|
||||
'price' => 'Custom pricing based on requirements',
|
||||
];
|
||||
|
||||
Logger::info("[DEBUG] Retrieved IT consulting service details: " . json_encode($details));
|
||||
|
||||
return $details;
|
||||
} catch (\Exception $e) {
|
||||
Logger::error("[ERROR] Failed to fetch IT consulting service details: " . $e->getMessage());
|
||||
ErrorHandler::exception($e);
|
||||
return [];
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -1,45 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace WizdomNetworks\WizeWeb\Services;
|
||||
|
||||
use WizdomNetworks\WizeWeb\Utils\Logger;
|
||||
use WizdomNetworks\WizeWeb\Utils\ErrorHandler;
|
||||
|
||||
/**
|
||||
* Managed Hosting Service
|
||||
*
|
||||
* Handles business logic related to managed hosting services.
|
||||
*/
|
||||
class ManagedHostingService
|
||||
{
|
||||
/**
|
||||
* Provide managed hosting service details.
|
||||
*
|
||||
* @return array Details of the managed hosting service.
|
||||
*/
|
||||
public function getServiceDetails(): array
|
||||
{
|
||||
try {
|
||||
Logger::info("[DEBUG] Fetching managed hosting service details");
|
||||
|
||||
$details = [
|
||||
'name' => 'Managed Hosting',
|
||||
'description' => 'Comprehensive managed hosting services to keep your business online.',
|
||||
'features' => [
|
||||
'Server management',
|
||||
'Performance optimization',
|
||||
'Data backups and recovery',
|
||||
],
|
||||
'price' => 'Custom pricing based on hosting requirements',
|
||||
];
|
||||
|
||||
Logger::info("[DEBUG] Retrieved managed hosting service details: " . json_encode($details));
|
||||
|
||||
return $details;
|
||||
} catch (\Exception $e) {
|
||||
Logger::error("[ERROR] Failed to fetch managed hosting service details: " . $e->getMessage());
|
||||
ErrorHandler::exception($e);
|
||||
return [];
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -1,45 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace WizdomNetworks\WizeWeb\Services;
|
||||
|
||||
use WizdomNetworks\WizeWeb\Utils\Logger;
|
||||
use WizdomNetworks\WizeWeb\Utils\ErrorHandler;
|
||||
|
||||
/**
|
||||
* Online Brand Management Service
|
||||
*
|
||||
* Handles business logic related to online brand management services.
|
||||
*/
|
||||
class OnlineBrandManagementService
|
||||
{
|
||||
/**
|
||||
* Provide online brand management service details.
|
||||
*
|
||||
* @return array Details of the online brand management service.
|
||||
*/
|
||||
public function getServiceDetails(): array
|
||||
{
|
||||
try {
|
||||
Logger::info("[DEBUG] Fetching online brand management service details");
|
||||
|
||||
$details = [
|
||||
'name' => 'Online Brand Management',
|
||||
'description' => 'Strategic online brand management to enhance your digital presence.',
|
||||
'features' => [
|
||||
'Social media management',
|
||||
'Reputation monitoring',
|
||||
'Content strategy',
|
||||
],
|
||||
'price' => 'Custom pricing based on campaign requirements',
|
||||
];
|
||||
|
||||
Logger::info("[DEBUG] Retrieved online brand management service details: " . json_encode($details));
|
||||
|
||||
return $details;
|
||||
} catch (\Exception $e) {
|
||||
Logger::error("[ERROR] Failed to fetch online brand management service details: " . $e->getMessage());
|
||||
ErrorHandler::exception($e);
|
||||
return [];
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -1,45 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace WizdomNetworks\WizeWeb\Services;
|
||||
|
||||
use WizdomNetworks\WizeWeb\Utils\Logger;
|
||||
use WizdomNetworks\WizeWeb\Utils\ErrorHandler;
|
||||
|
||||
/**
|
||||
* Project Management Service
|
||||
*
|
||||
* Handles business logic related to project management services.
|
||||
*/
|
||||
class ProjectManagementService
|
||||
{
|
||||
/**
|
||||
* Provide project management service details.
|
||||
*
|
||||
* @return array Details of the project management service.
|
||||
*/
|
||||
public function getServiceDetails(): array
|
||||
{
|
||||
try {
|
||||
Logger::info("[DEBUG] Fetching project management service details");
|
||||
|
||||
$details = [
|
||||
'name' => 'Project Management',
|
||||
'description' => 'Professional project management to ensure success from start to finish.',
|
||||
'features' => [
|
||||
'Planning and scheduling',
|
||||
'Resource allocation',
|
||||
'Risk management',
|
||||
],
|
||||
'price' => 'Custom pricing based on project scope',
|
||||
];
|
||||
|
||||
Logger::info("[DEBUG] Retrieved project management service details: " . json_encode($details));
|
||||
|
||||
return $details;
|
||||
} catch (\Exception $e) {
|
||||
Logger::error("[ERROR] Failed to fetch project management service details: " . $e->getMessage());
|
||||
ErrorHandler::exception($e);
|
||||
return [];
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -19,7 +19,7 @@ class ErrorHandler
|
|||
public static function register(): void
|
||||
{
|
||||
set_error_handler([self::class, 'handleError']);
|
||||
set_exception_handler([self::class, 'handleException']);
|
||||
set_exception_handler([self::class, 'exception']);
|
||||
Logger::info("ErrorHandler registered successfully.");
|
||||
}
|
||||
|
||||
|
|
@ -49,7 +49,7 @@ class ErrorHandler
|
|||
*
|
||||
* @param \Throwable $exception The exception object.
|
||||
*/
|
||||
public static function handleException(\Throwable $exception): void
|
||||
public static function exception(\Throwable $exception): void
|
||||
{
|
||||
$message = sprintf(
|
||||
"Exception: %s in %s on line %d\nStack trace:\n%s",
|
||||
|
|
|
|||
|
|
@ -1,33 +1,43 @@
|
|||
<?php
|
||||
|
||||
/**
|
||||
* Application Entry Point
|
||||
*
|
||||
* This file initializes the application, sets up error handling, loads dependencies,
|
||||
* and dispatches incoming requests using the Router.
|
||||
*/
|
||||
|
||||
// Enable detailed error reporting for debugging
|
||||
ini_set('display_errors', 1);
|
||||
ini_set('display_startup_errors', 1);
|
||||
error_reporting(E_ALL);
|
||||
//set_include_path(__DIR__ . '/../resources/views');
|
||||
|
||||
require_once __DIR__ . '/../vendor/autoload.php';
|
||||
|
||||
use WizdomNetworks\WizeWeb\Core\Router;
|
||||
use WizdomNetworks\WizeWeb\Controllers\HomeController;
|
||||
use WizdomNetworks\WizeWeb\Controllers\AboutController;
|
||||
use WizdomNetworks\WizeWeb\Controllers\ContactController;
|
||||
use WizdomNetworks\WizeWeb\Controllers\ServicesController;
|
||||
use WizdomNetworks\WizeWeb\Controllers\TestimonialsController;
|
||||
use WizdomNetworks\WizeWeb\Utils\ClassInspector;
|
||||
use WizdomNetworks\WizeWeb\Utils\ErrorHandler;
|
||||
use WizdomNetworks\WizeWeb\Utils\Logger;
|
||||
|
||||
// Debug all classes in the top-level namespace
|
||||
//ClassInspector::debugTopLevelNamespace();
|
||||
// Register error handler
|
||||
ErrorHandler::register();
|
||||
|
||||
// Initialize Logger
|
||||
Logger::init();
|
||||
|
||||
// Initialize and configure router
|
||||
$router = new Router();
|
||||
$router->add('', HomeController::class, 'index');
|
||||
$router->add('about', AboutController::class, 'index');
|
||||
$router->add('contact', ContactController::class, 'index');
|
||||
$router->add('testimonials', TestimonialsController::class, 'index');
|
||||
$router->add('services', ServicesController::class, 'index');
|
||||
$router->add('services/it-consulting', ServicesController::class, 'itConsulting');
|
||||
$router->add('services/emergency-support', ServicesController::class, 'emergencySupport');
|
||||
$router->add('services/managed-services', ServicesController::class, 'managedServices');
|
||||
|
||||
// Define routes
|
||||
$router->add('', \WizdomNetworks\WizeWeb\Controllers\HomeController::class, 'index');
|
||||
$router->add('about', \WizdomNetworks\WizeWeb\Controllers\AboutController::class, 'index');
|
||||
$router->add('contact', \WizdomNetworks\WizeWeb\Controllers\ContactController::class, 'index');
|
||||
$router->add('testimonials', \WizdomNetworks\WizeWeb\Controllers\TestimonialsController::class, 'index');
|
||||
$router->add('services', \WizdomNetworks\WizeWeb\Controllers\ServicesController::class, 'index');
|
||||
$router->add('services/it-consulting', \WizdomNetworks\WizeWeb\Controllers\ITConsultingController::class, 'index', 'pages/services/it_consulting');
|
||||
$router->add('services/emergency-support', \WizdomNetworks\WizeWeb\Controllers\EmergencySupportController::class, 'index', 'pages/services/emergency_support');
|
||||
$router->add('services/managed-services', \WizdomNetworks\WizeWeb\Controllers\ManagedServicesController::class, 'index', 'pages/services/managed_services');
|
||||
$router->add('services/online-brand-management', \WizdomNetworks\WizeWeb\Controllers\OnlineBrandManagementController::class, 'index', 'pages/services/online_brand_management');
|
||||
$router->add('services/project-management', \WizdomNetworks\WizeWeb\Controllers\ProjectManagementController::class, 'index', 'pages/services/project_management');
|
||||
|
||||
// Dispatch the request
|
||||
$router->dispatch($_SERVER['REQUEST_URI']);
|
||||
|
|
|
|||
|
|
@ -1,12 +1,23 @@
|
|||
<footer class="bg-dark text-white py-3 mt-auto">
|
||||
<?php
|
||||
|
||||
/**
|
||||
* Footer Partial
|
||||
*
|
||||
* This file includes the footer section, including copyright information and necessary scripts.
|
||||
*/
|
||||
|
||||
?><footer class="footer mt-auto py-3 bg-dark text-white">
|
||||
<div class="container text-center">
|
||||
<p>© 2025 WizdomNetworks. All Rights Reserved.</p>
|
||||
<ul class="list-inline">
|
||||
<li class="list-inline-item"><a class="text-white" href="/privacy">Privacy Policy</a></li>
|
||||
<li class="list-inline-item"><a class="text-white" href="/terms">Terms of Service</a></li>
|
||||
</ul>
|
||||
<p>© <?php echo date('Y'); ?> Wizdom Networks. All rights reserved.</p>
|
||||
<p>
|
||||
<a href="/privacy" class="text-white">Privacy Policy</a> |
|
||||
<a href="/terms" class="text-white">Terms of Service</a>
|
||||
</p>
|
||||
</div>
|
||||
</footer>
|
||||
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/js/bootstrap.bundle.min.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
<!-- Bootstrap JS with Fallback -->
|
||||
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/js/bootstrap.bundle.min.js"
|
||||
onerror="this.onerror=null;this.src='/assets/bootstrap/js/bootstrap.bundle.min.js';"></script>
|
||||
<!-- Custom Scripts -->
|
||||
<script src="/assets/js/main.js"></script>
|
||||
|
|
|
|||
|
|
@ -6,15 +6,15 @@
|
|||
* This file includes metadata, stylesheets, and scripts necessary for rendering the site.
|
||||
*/
|
||||
|
||||
?><head>
|
||||
?>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title><?php echo $title ?? 'Wizdom Networks'; ?></title>
|
||||
|
||||
<!-- Bootstrap CSS -->
|
||||
<!-- Bootstrap CSS with Fallback -->
|
||||
<link rel="stylesheet"
|
||||
href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css"
|
||||
onerror="this.onerror=null;this.href='/assets/bootstrap/css/bootstrap.min.css';">
|
||||
href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css"
|
||||
onerror="this.onerror=null;this.href='/assets/bootstrap/css/bootstrap.min.css';">
|
||||
|
||||
<!-- Main Stylesheet -->
|
||||
<link rel="stylesheet" href="/assets/css/styles.css">
|
||||
|
|
@ -24,7 +24,6 @@
|
|||
<link rel="stylesheet" href="/assets/css/hero.css">
|
||||
<?php endif; ?>
|
||||
|
||||
|
||||
<!-- Conditionally Load Slider Stylesheet -->
|
||||
<?php if (isset($showSlider)) : ?>
|
||||
<link rel="stylesheet" href="/assets/css/slider.css">
|
||||
|
|
@ -32,4 +31,4 @@
|
|||
|
||||
<!-- Favicon -->
|
||||
<link rel="icon" type="image/png" href="/assets/images/favicon.png">
|
||||
</head>
|
||||
|
||||
|
|
|
|||
|
|
@ -3,35 +3,34 @@
|
|||
/**
|
||||
* Main Layout
|
||||
*
|
||||
* This file serves as the primary layout structure, including the header, footer, and optional sections
|
||||
* like the hero section and slider, which can be enabled per page.
|
||||
* This file defines the overall structure of the web pages, ensuring consistency across all views.
|
||||
*/
|
||||
?>
|
||||
|
||||
<!DOCTYPE html>
|
||||
use WizdomNetworks\WizeWeb\Core\View;
|
||||
|
||||
|
||||
?><!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<?php $this->render('layouts/head', $data); ?>
|
||||
<?php View::render('layouts/head', $data); ?>
|
||||
</head>
|
||||
<body>
|
||||
<?php if (isset($showHeader)) : ?>
|
||||
<?php $this->render('layouts/header', $data); ?>
|
||||
<?php endif; ?>
|
||||
|
||||
<?php $this->render('partials/navbar', $data); ?>
|
||||
<?php View::render('partials/navbar', $data); ?>
|
||||
|
||||
<!-- Render Hero Section if Defined -->
|
||||
<?php if (isset($heroConfig)) : ?>
|
||||
<?php $this->render('partials/hero', compact('heroConfig')); ?>
|
||||
<?php View::render('partials/hero', compact('heroConfig')); ?>
|
||||
<?php endif; ?>
|
||||
|
||||
<!-- Render Slider if Defined -->
|
||||
<?php if (isset($showSlider)) : ?>
|
||||
<?php $this->render('partials/slider', ['sliderConfig' => $showSlider]); ?>
|
||||
<?php View::render('partials/slider', $showSlider); ?>
|
||||
<?php endif; ?>
|
||||
|
||||
<div class="container">
|
||||
<div class="row">
|
||||
<div class="col-md-3">
|
||||
<?php $this->render('partials/sidebar', $data); ?>
|
||||
<?php View::render('partials/sidebar', $data); ?>
|
||||
</div>
|
||||
<div class="col-md-9">
|
||||
<!-- Main Page Content -->
|
||||
|
|
@ -40,6 +39,6 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<?php $this->render('layouts/footer', $data); ?>
|
||||
<?php View::render('layouts/footer', $data); ?>
|
||||
</body>
|
||||
</html>
|
||||
|
|
|
|||
|
|
@ -1,8 +1,16 @@
|
|||
<?php
|
||||
|
||||
$title = 'About - Wizdom Networks';
|
||||
$content = <<<HTML
|
||||
<h1>About Wizdom Networks</h1><p>At Wizdom Networks, we specialize in delivering top-notch IT solutions to help your business thrive.</p>
|
||||
HTML;
|
||||
use WizdomNetworks\WizeWeb\Core\View;
|
||||
|
||||
$this->render('layouts/main', $data);
|
||||
/**
|
||||
* About Page View
|
||||
*
|
||||
* This view dynamically renders the About page using data provided by the AboutController.
|
||||
*/
|
||||
|
||||
// Ensure data is available before rendering
|
||||
$title = $data['title'] ?? 'About Us - Wizdom Networks';
|
||||
$content = $data['content'] ?? '';
|
||||
$heroConfig = $data['heroConfig'] ?? [];
|
||||
|
||||
View::render('layouts/main', compact('title', 'content', 'heroConfig'));
|
||||
|
|
|
|||
|
|
@ -1,16 +1,16 @@
|
|||
<?php
|
||||
|
||||
$title = 'Contact Us - Wizdom Networks';
|
||||
$content = <<<HTML
|
||||
<h1>Get in Touch</h1>
|
||||
<p>We would love to hear from you. Use the form below to send us a message, or reach out via email or phone.</p>
|
||||
<div class="contact-details">
|
||||
<p><strong>Email:</strong> contact@wizdom.ca</p>
|
||||
<p><strong>Phone:</strong> +1-800-123-4567</p>
|
||||
</div>
|
||||
HTML;
|
||||
use WizdomNetworks\WizeWeb\Core\View;
|
||||
|
||||
// Add the contact form
|
||||
//$content .= $this->getContactForm($data);
|
||||
/**
|
||||
* Contact Page View
|
||||
*
|
||||
* This view dynamically renders the Contact page using data provided by the ContactController.
|
||||
*/
|
||||
|
||||
$this->render('layouts/main', compact('title', 'content'));
|
||||
// Ensure data is available before rendering
|
||||
$title = $data['title'] ?? 'Contact Us - Wizdom Networks';
|
||||
$content = $data['content'] ?? '';
|
||||
$heroConfig = $data['heroConfig'] ?? [];
|
||||
|
||||
View::render('layouts/main', compact('title', 'content', 'heroConfig'));
|
||||
|
|
|
|||
|
|
@ -1,8 +1,15 @@
|
|||
<?php
|
||||
|
||||
$title = 'Error - Wizdom Networks';
|
||||
$content = <<<HTML
|
||||
<h1>Page Not Found</h1><p>The page you are looking for does not exist. Please check the URL or go back to the <a href=\"/\">home page</a>.</p>
|
||||
HTML;
|
||||
use WizdomNetworks\WizeWeb\Core\View;
|
||||
|
||||
$this->render('layouts/main', $data);
|
||||
/**
|
||||
* Error Page View
|
||||
*
|
||||
* This view dynamically renders the error page when an issue occurs.
|
||||
*/
|
||||
|
||||
// Ensure data is available before rendering
|
||||
$title = $data['title'] ?? 'Error - Wizdom Networks';
|
||||
$message = $data['message'] ?? 'An unexpected error occurred.';
|
||||
|
||||
View::render('layouts/main', compact('title', 'message'));
|
||||
|
|
|
|||
|
|
@ -1,20 +1,18 @@
|
|||
|
||||
<?php
|
||||
|
||||
use WizdomNetworks\WizeWeb\Core\View;
|
||||
|
||||
/**
|
||||
* Home Page
|
||||
* Home Page View
|
||||
*
|
||||
* This file renders the homepage and dynamically loads the hero section and slider if configured.
|
||||
* This view dynamically renders the homepage using data provided by the HomeController.
|
||||
*/
|
||||
|
||||
$title = 'Home - Wizdom Networks';
|
||||
$showSlider = ['type' => 'hero']; // Enable hero slider
|
||||
// Ensure data is available before rendering
|
||||
$title = $data['title'] ?? 'Home - Wizdom Networks';
|
||||
$content = $data['content'] ?? '';
|
||||
$heroConfig = $data['heroConfig'] ?? [];
|
||||
$showSlider = $data['showSlider'] ?? [];
|
||||
|
||||
$content = <<<HTML
|
||||
<h1>Welcome to Wizdom Networks</h1>
|
||||
<p>Your trusted partner for IT Consulting and Services.</p>
|
||||
<p><a href="/services" class="btn btn-primary">Explore Our Services</a></p>
|
||||
HTML;
|
||||
|
||||
$this->render('layouts/main', compact('title', 'content', 'showHero', 'showSlider'));
|
||||
|
||||
?>
|
||||
View::render('layouts/main', compact('title', 'content', 'heroConfig', 'showSlider'));
|
||||
|
|
|
|||
|
|
@ -1,4 +1,16 @@
|
|||
<?php $this->render('layouts/main', [
|
||||
'content' => '<h1>Our Services</h1><p>Explore our wide range of IT services designed to meet your business needs.</p>',
|
||||
'title' => $title ?? 'Our Services'
|
||||
]); ?>
|
||||
<?php
|
||||
|
||||
use WizdomNetworks\WizeWeb\Core\View;
|
||||
|
||||
/**
|
||||
* Services Page View
|
||||
*
|
||||
* This view dynamically renders the Services page using data provided by the ServicesController.
|
||||
*/
|
||||
|
||||
// Ensure data is available before rendering
|
||||
$title = $data['title'] ?? 'Our Services - Wizdom Networks';
|
||||
$content = $data['content'] ?? '';
|
||||
$heroConfig = $data['heroConfig'] ?? [];
|
||||
|
||||
View::render('layouts/main', compact('title', 'content', 'heroConfig'));
|
||||
|
|
|
|||
|
|
@ -1,18 +1,16 @@
|
|||
<?php
|
||||
|
||||
$title = 'Emergency Support - Wizdom Networks';
|
||||
$heroConfig = [
|
||||
'title' => 'Innovative IT Solutions',
|
||||
'description' => 'Empowering businesses with cutting-edge technology solutions.',
|
||||
'image' => '/assets/images/rescue-training.jpg',
|
||||
'cta' => ['text' => 'Learn More', 'link' => '/services'],
|
||||
'style' => 'default',
|
||||
'position' => 'top'
|
||||
];
|
||||
use WizdomNetworks\WizeWeb\Core\View;
|
||||
|
||||
/**
|
||||
* Emergency Support Page View
|
||||
*
|
||||
* This view dynamically renders the Emergency Support page using data provided by the EmergencySupportController.
|
||||
*/
|
||||
|
||||
$content = <<<HTML
|
||||
<h1>Emergency Support</h1><p>We offer 24/7 emergency IT support to ensure your business operations run smoothly.</p>
|
||||
HTML;
|
||||
// Ensure data is available before rendering
|
||||
$title = $data['title'] ?? 'Emergency Support - Wizdom Networks';
|
||||
$content = $data['content'] ?? '';
|
||||
$heroConfig = $data['heroConfig'] ?? [];
|
||||
|
||||
$this->render('layouts/main', $data);
|
||||
View::render('layouts/main', compact('title', 'content', 'heroConfig'));
|
||||
|
|
|
|||
|
|
@ -1,8 +1,16 @@
|
|||
<?php
|
||||
|
||||
$title = 'It Consulting - Wizdom Networks';
|
||||
$content = <<<HTML
|
||||
<h1>IT Consulting</h1><p>Our IT consulting services provide businesses with tailored solutions to maximize productivity and efficiency.</p>
|
||||
HTML;
|
||||
/**
|
||||
* IT Consulting Page View
|
||||
*
|
||||
* This view dynamically renders the IT Consulting page using data provided by the ITConsultingController.
|
||||
*/
|
||||
|
||||
$this->render('layouts/main', $data);
|
||||
use WizdomNetworks\WizeWeb\Core\View;
|
||||
|
||||
// Ensure data is available before rendering
|
||||
$title = $data['title'] ?? 'IT Consulting - Wizdom Networks';
|
||||
$content = $data['content'] ?? '';
|
||||
$heroConfig = $data['heroConfig'] ?? [];
|
||||
|
||||
View::render('layouts/main', compact('title', 'content', 'heroConfig'));
|
||||
|
|
|
|||
|
|
@ -1,8 +1,16 @@
|
|||
<?php
|
||||
|
||||
$title = 'Managed Services - Wizdom Networks';
|
||||
$content = <<<HTML
|
||||
<h1>Managed Services</h1><p>We provide end-to-end managed IT services to keep your business running efficiently.</p>
|
||||
HTML;
|
||||
use WizdomNetworks\WizeWeb\Core\View;
|
||||
|
||||
$this->render('layouts/main', $data);
|
||||
/**
|
||||
* Managed Services Page View
|
||||
*
|
||||
* This view dynamically renders the Managed Services page using data provided by the ManagedServicesController.
|
||||
*/
|
||||
|
||||
// Ensure data is available before rendering
|
||||
$title = $data['title'] ?? 'Managed Services - Wizdom Networks';
|
||||
$content = $data['content'] ?? '';
|
||||
$heroConfig = $data['heroConfig'] ?? [];
|
||||
|
||||
View::render('layouts/main', compact('title', 'content', 'heroConfig'));
|
||||
|
|
|
|||
|
|
@ -1,8 +1,16 @@
|
|||
<?php
|
||||
|
||||
$title = 'Online Brand Management - Wizdom Networks';
|
||||
$content = <<<HTML
|
||||
<h1>Online Brand Management</h1><p>Enhance your online presence with our expert brand management services.</p>
|
||||
HTML;
|
||||
use WizdomNetworks\WizeWeb\Core\View;
|
||||
|
||||
$this->render('layouts/main', $data);
|
||||
/**
|
||||
* Online Brand Management Page View
|
||||
*
|
||||
* This view dynamically renders the Online Brand Management page using data provided by the OnlineBrandManagementController.
|
||||
*/
|
||||
|
||||
// Ensure data is available before rendering
|
||||
$title = $data['title'] ?? 'Online Brand Management - Wizdom Networks';
|
||||
$content = $data['content'] ?? '';
|
||||
$heroConfig = $data['heroConfig'] ?? [];
|
||||
|
||||
View::render('layouts/main', compact('title', 'content', 'heroConfig'));
|
||||
|
|
|
|||
|
|
@ -1,8 +1,16 @@
|
|||
<?php
|
||||
|
||||
$title = 'Project Management - Wizdom Networks';
|
||||
$content = <<<HTML
|
||||
<h1>Project Management</h1><p>Efficient project management to ensure your IT projects are delivered on time and within budget.</p>
|
||||
HTML;
|
||||
use WizdomNetworks\WizeWeb\Core\View;
|
||||
|
||||
$this->render('layouts/main', $data);
|
||||
/**
|
||||
* Project Management Page View
|
||||
*
|
||||
* This view dynamically renders the Project Management page using data provided by the ProjectManagementController.
|
||||
*/
|
||||
|
||||
// Ensure data is available before rendering
|
||||
$title = $data['title'] ?? 'Project Management - Wizdom Networks';
|
||||
$content = $data['content'] ?? '';
|
||||
$heroConfig = $data['heroConfig'] ?? [];
|
||||
|
||||
View::render('layouts/main', compact('title', 'content', 'heroConfig'));
|
||||
|
|
|
|||
|
|
@ -1,8 +1,16 @@
|
|||
<?php
|
||||
|
||||
$title = 'Testimonials - Wizdom Networks';
|
||||
$content = <<<HTML
|
||||
<h1>Testimonials</h1><p>Here's what our clients have to say about us.</p>
|
||||
HTML;
|
||||
use WizdomNetworks\WizeWeb\Core\View;
|
||||
|
||||
$this->render('layouts/main', $data);
|
||||
/**
|
||||
* Testimonials Page View
|
||||
*
|
||||
* This view dynamically renders the Testimonials page using data provided by the TestimonialsController.
|
||||
*/
|
||||
|
||||
// Ensure data is available before rendering
|
||||
$title = $data['title'] ?? 'Client Testimonials - Wizdom Networks';
|
||||
$content = $data['content'] ?? '';
|
||||
$heroConfig = $data['heroConfig'] ?? [];
|
||||
|
||||
View::render('layouts/main', compact('title', 'content', 'heroConfig'));
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
<?php
|
||||
|
||||
/**
|
||||
* Modular Hero Partial
|
||||
*
|
||||
|
|
@ -17,7 +18,7 @@
|
|||
* ];
|
||||
*/
|
||||
|
||||
// Ensure the hero config exists
|
||||
// Ensure heroConfig is defined before rendering
|
||||
$heroConfig = $heroConfig ?? [];
|
||||
|
||||
// Assign default values
|
||||
|
|
@ -27,7 +28,6 @@ $heroImage = $heroConfig['image'] ?? "/assets/images/default-hero.jpg";
|
|||
$heroCTA = $heroConfig['cta'] ?? null;
|
||||
$heroStyle = $heroConfig['style'] ?? "default"; // 'default', 'compact', 'overlay'
|
||||
$heroPosition = $heroConfig['position'] ?? "top"; // 'top', 'inline'
|
||||
|
||||
?>
|
||||
|
||||
<section class="hero-section hero-<?php echo $heroStyle; ?> hero-<?php echo $heroPosition; ?>" style="background-image: url('<?php echo $heroImage; ?>');">
|
||||
|
|
|
|||
|
|
@ -13,78 +13,10 @@ if (!isset($sliderConfig) || empty($sliderConfig['type'])) {
|
|||
}
|
||||
|
||||
$sliderType = $sliderConfig['type'];
|
||||
|
||||
// Slider images and their associated text & CTA
|
||||
$sliderImages = [
|
||||
[
|
||||
'src' => '/assets/images/information-light.jpg',
|
||||
'alt' => 'Information Light Banner',
|
||||
'title' => 'Innovative Solutions',
|
||||
'description' => 'Bringing technology and expertise together.',
|
||||
'cta_text' => 'Learn More',
|
||||
'cta_link' => '/services/technology',
|
||||
'cta_top' => '70%',
|
||||
'cta_left' => '30%'
|
||||
],
|
||||
[
|
||||
'src' => '/assets/images/cardcatalouge-banner.jpg',
|
||||
'alt' => 'Card Catalogue Banner',
|
||||
'title' => 'Effortless Organization',
|
||||
'description' => 'Streamline your workflow with our intuitive catalog system.',
|
||||
'cta_text' => 'Learn More',
|
||||
'cta_link' => '/services/catalogue-management',
|
||||
'cta_top' => '100%',
|
||||
'cta_left' => '75%'
|
||||
],
|
||||
[
|
||||
'src' => '/assets/images/rolodex-banner.jpg',
|
||||
'alt' => 'Rolodex Banner',
|
||||
'title' => 'Contact Management Made Easy',
|
||||
'description' => 'Keep track of important contacts and information in one place.',
|
||||
'cta_text' => 'Get Started',
|
||||
'cta_link' => '/services/contact-management',
|
||||
'cta_top' => '20%',
|
||||
'cta_left' => '60%',
|
||||
'text_color' => 'black'
|
||||
],
|
||||
[
|
||||
'src' => '/assets/images/oldmic.jpg',
|
||||
'alt' => 'Old Microphone',
|
||||
'title' => 'Broadcast Your Message',
|
||||
'description' => 'Reach your audience with high-quality audio and video solutions.',
|
||||
'cta_text' => 'Explore Options',
|
||||
'cta_link' => '/services/media-solutions',
|
||||
'cta_top' => '56%',
|
||||
'cta_left' => '65%'
|
||||
],
|
||||
[
|
||||
'src' => '/assets/images/ancient-library-shelf-crop1.jpg',
|
||||
'alt' => 'Library Archives',
|
||||
'title' => 'Knowledge Preservation',
|
||||
'description' => 'Store and manage your records securely and efficiently.',
|
||||
'cta_text' => 'Discover More',
|
||||
'cta_link' => '/services/data-archiving',
|
||||
'cta_top' => '50%',
|
||||
'cta_left' => '50%'
|
||||
],
|
||||
[
|
||||
'src' => '/assets/images/combosafedoor.jpg',
|
||||
'alt' => 'Combination Safe Door',
|
||||
'title' => 'Secure Your Data',
|
||||
'description' => 'Advanced encryption and security solutions for your digital assets.',
|
||||
'cta_text' => 'Protect Now',
|
||||
'cta_link' => '/services/cybersecurity',
|
||||
'cta_top' => '56%',
|
||||
'cta_left' => '35%'
|
||||
]
|
||||
];
|
||||
|
||||
$sliderImages = $sliderConfig['slides'] ?? [];
|
||||
?>
|
||||
|
||||
|
||||
|
||||
|
||||
<section class="hero-slider">
|
||||
<section class="hero-slider slider-<?php echo $sliderType; ?>">
|
||||
<div id="heroCarousel" class="carousel slide" data-bs-ride="carousel">
|
||||
<div class="carousel-indicators">
|
||||
<?php foreach ($sliderImages as $index => $image): ?>
|
||||
|
|
|
|||
Loading…
Reference in New Issue