Compare commits

..

2 Commits

Author SHA1 Message Date
Flatlogic Bot
bec9c2de3b 12 2025-11-24 17:15:40 +00:00
Flatlogic Bot
e66ccf1d85 11 2025-11-24 17:10:42 +00:00
25 changed files with 797 additions and 146 deletions

32
about.php Normal file
View File

@ -0,0 +1,32 @@
<?php
$page_title = "About Us";
require_once 'partials/header.php';
?>
<main id="main">
<!-- ======= Breadcrumbs ======= -->
<section class="breadcrumbs">
<div class="container">
<h2><?php echo $page_title; ?></h2>
<p>Learn more about our company, our mission, and our team.</p>
</div>
</section><!-- End Breadcrumbs -->
<section class="container py-5">
<div class="row">
<div class="col-lg-8 offset-lg-2">
<h1 class="mb-4">About Dreamz Destination</h1>
<p class="lead">Welcome to Dreamz Destination, where we turn your travel dreams into reality. We are a team of passionate travel experts dedicated to crafting unforgettable journeys and personalized vacation experiences.</p>
<p>Our mission is to provide exceptional service and exclusive access to the world's most breathtaking destinations. Whether you're seeking a relaxing beach getaway, a thrilling adventure, or a culturally rich exploration, we are here to guide you every step of the way.</p>
<p>Founded on the principles of luxury, integrity, and customer satisfaction, Dreamz Destination has been curating bespoke travel itineraries for discerning travelers for over a decade. We believe that travel is not just about seeing new places, but about creating lasting memories.</p>
<hr class="my-5">
<h3>Our Team</h3>
<p>Our team is composed of seasoned travel advisors, local guides, and logistics coordinators who work tirelessly to ensure every detail of your trip is perfect. We pride ourselves on our deep knowledge of the destinations we serve and our commitment to making your journey seamless and stress-free.</p>
</div>
</div>
</section>
</main><!-- End #main -->
<?php require_once 'partials/footer.php'; ?>

177
assets/css/custom.css Normal file
View File

@ -0,0 +1,177 @@
/*--------------------------------------------------------------
# General
--------------------------------------------------------------*/
:root {
--primary-color: #D4AF37; /* Soft Gold */
--secondary-color: #F5F5DC; /* Beige */
--background-color: #FFFFFF;
--surface-color: #FDFDFD;
--text-color: #333333;
--heading-font: "Playfair Display", serif;
--body-font: "Lato", sans-serif;
}
body {
font-family: var(--body-font);
color: var(--text-color);
background-color: var(--background-color);
}
h1, h2, h3, h4, h5, h6 {
font-family: var(--heading-font);
color: var(--text-color);
}
a {
color: var(--primary-color);
text-decoration: none;
}
a:hover {
color: #c5a031;
text-decoration: none;
}
/*--------------------------------------------------------------
# Header
--------------------------------------------------------------*/
.header {
background-color: rgba(255, 255, 255, 0.9);
backdrop-filter: blur(10px);
padding: 15px 0;
box-shadow: 0 2px 4px rgba(0,0,0,0.05);
}
.header .logo {
font-family: var(--heading-font);
font-size: 28px;
font-weight: 700;
color: var(--text-color);
}
/*--------------------------------------------------------------
# Hero Section
--------------------------------------------------------------*/
.hero {
width: 100%;
height: 100vh;
display: flex;
align-items: center;
justify-content: center;
text-align: center;
background: linear-gradient(45deg, rgba(212, 175, 55, 0.1), rgba(245, 245, 220, 0.3));
color: var(--text-color);
}
.hero h1 {
font-size: 5rem;
font-weight: 700;
margin-bottom: 20px;
}
.hero p {
font-size: 1.5rem;
margin-bottom: 40px;
}
/*--------------------------------------------------------------
# Footer
--------------------------------------------------------------*/
.footer {
background-color: var(--surface-color);
padding: 60px 0;
font-size: 14px;
border-top: 1px solid #e9ecef;
}
.footer h4 {
font-size: 16px;
font-weight: bold;
position: relative;
padding-bottom: 12px;
}
.footer .footer-links ul {
list-style: none;
padding: 0;
margin: 0;
}
.footer .footer-links ul i {
padding-right: 2px;
color: var(--primary-color);
font-size: 18px;
line-height: 1;
}
.footer .footer-links ul li {
padding: 10px 0;
display: flex;
align-items: center;
}
.footer .social-links a {
font-size: 18px;
display: inline-block;
background: var(--primary-color);
color: #fff;
line-height: 1;
padding: 8px 0;
margin-right: 4px;
border-radius: 50%;
text-align: center;
width: 36px;
height: 36px;
transition: 0.3s;
}
.footer .social-links a:hover {
background: #c5a031;
color: #fff;
}
/*--------------------------------------------------------------
# Floating Widgets
--------------------------------------------------------------*/
.floating-widgets {
position: fixed;
bottom: 20px;
right: 20px;
z-index: 1000;
display: flex;
flex-direction: column;
gap: 10px;
}
.floating-btn {
display: flex;
align-items: center;
justify-content: center;
width: 60px;
height: 60px;
border-radius: 50%;
color: white;
text-align: center;
font-size: 28px;
box-shadow: 0 4px 12px rgba(0,0,0,0.15);
transition: all 0.3s ease;
}
.whatsapp-btn {
background-color: #25D366;
}
.quote-btn {
background-color: var(--primary-color);
font-size: 16px;
width: auto;
height: auto;
padding: 15px 25px;
border-radius: 30px;
font-weight: bold;
}
.quote-btn:hover, .whatsapp-btn:hover {
transform: scale(1.1);
color: white;
}

View File

0
assets/images/bali.jpg Normal file
View File

0
assets/images/dubai.jpg Normal file
View File

0
assets/images/goa.jpg Normal file
View File

View File

0
assets/images/kerala.jpg Normal file
View File

View File

0
assets/images/manali.jpg Normal file
View File

View File

0
assets/images/uk.jpg Normal file
View File

View File

View File

View File

5
assets/js/main.js Normal file
View File

@ -0,0 +1,5 @@
// Custom JavaScript for Dreamz Destination
document.addEventListener('DOMContentLoaded', (event) => {
// Future JavaScript code will go here
});

31
blog.php Normal file
View File

@ -0,0 +1,31 @@
<?php
$page_title = "Travel Blog";
require_once 'partials/header.php';
?>
<main id="main">
<!-- ======= Breadcrumbs ======= -->
<section class="breadcrumbs">
<div class="container">
<h2><?php echo $page_title; ?></h2>
<p>Travel stories, tips, and inspiration from our team of experts.</p>
</div>
</section><!-- End Breadcrumbs -->
<section class="container py-5">
<div class="row">
<div class="col-lg-8 offset-lg-2 text-center">
<h1 class="mb-4">Our Blog is Coming Soon</h1>
<p class="lead">We are busy writing and curating inspiring travel stories, guides, and tips for you. Check back soon to explore our collection of articles that will help you plan your next adventure.</p>
<p>From hidden gems to iconic landmarks, our blog will be your go-to resource for all things travel.</p>
<div class="mt-4">
<i class="bi bi-pencil-square fs-1 text-primary"></i>
</div>
</div>
</div>
</section>
</main><!-- End #main -->
<?php require_once 'partials/footer.php'; ?>

59
contact.php Normal file
View File

@ -0,0 +1,59 @@
<?php
$page_title = "Contact Us";
require_once 'partials/header.php';
?>
<main id="main">
<!-- ======= Breadcrumbs ======= -->
<section class="breadcrumbs">
<div class="container">
<h2><?php echo $page_title; ?></h2>
<p>We'd love to hear from you. Reach out with your questions or start planning your trip today.</p>
</div>
</section><!-- End Breadcrumbs -->
<section class="container py-5">
<div class="row">
<div class="col-lg-8 offset-lg-2">
<div class="text-center mb-5">
<h1 class="mb-3">Get In Touch</h1>
<p class="lead">Have a question or ready to book your next adventure? Fill out the form below or contact us directly.</p>
</div>
<div class="row">
<div class="col-md-4">
<div class="contact-info-item text-center p-4">
<i class="bi bi-geo-alt fs-2 text-primary"></i>
<h3>Our Office</h3>
<p>123 Travel Lane, Adventure City, WORLD</p>
</div>
</div>
<div class="col-md-4">
<div class="contact-info-item text-center p-4">
<i class="bi bi-envelope fs-2 text-primary"></i>
<h3>Email Us</h3>
<p>info@dreamzdestination.com</p>
</div>
</div>
<div class="col-md-4">
<div class="contact-info-item text-center p-4">
<i class="bi bi-phone fs-2 text-primary"></i>
<h3>Call Us</h3>
<p>+1 234 567 8900</p>
</div>
</div>
</div>
<div class="mt-5 p-4 p-md-5 border rounded-3 bg-light">
<h3 class="text-center mb-4">Send Us a Message</h3>
<p class="text-center">Our contact form is coming soon. In the meantime, please feel free to email or call us.</p>
<!-- Contact Form will be implemented in Phase 3 -->
</div>
</div>
</div>
</section>
</main><!-- End #main -->
<?php require_once 'partials/footer.php'; ?>

79
db/setup.php Normal file
View File

@ -0,0 +1,79 @@
<?php
require_once __DIR__ . '/config.php';
try {
$pdo = db();
echo "Connected to the database successfully.\n";
// Create tour_packages table
$pdo->exec("
CREATE TABLE IF NOT EXISTS `tour_packages` (
`id` INT AUTO_INCREMENT PRIMARY KEY,
`name` VARCHAR(255) NOT NULL,
`description` TEXT,
`price` DECIMAL(10, 2),
`image_url` VARCHAR(255),
`category` ENUM('domestic', 'international') NOT NULL,
`location` VARCHAR(255),
`duration_days` INT
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
");
echo "Table 'tour_packages' created or already exists.\n";
// Create leads table
$pdo->exec("
CREATE TABLE IF NOT EXISTS `leads` (
`id` INT AUTO_INCREMENT PRIMARY KEY,
`name` VARCHAR(255) NOT NULL,
`email` VARCHAR(255) NOT NULL,
`phone` VARCHAR(50),
`message` TEXT,
`tour_package_id` INT,
`status` ENUM('new', 'contacted', 'closed') DEFAULT 'new',
`created_at` TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
FOREIGN KEY (`tour_package_id`) REFERENCES `tour_packages`(`id`) ON DELETE SET NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
");
echo "Table 'leads' created or already exists.\n";
// Check if tour_packages is empty before inserting data
$stmt = $pdo->query("SELECT COUNT(*) FROM `tour_packages`");
if ($stmt->fetchColumn() == 0) {
echo "Table 'tour_packages' is empty. Inserting sample data...\n";
// Sample Data for Tour Packages
$packages = [
// Domestic
['Kashmir Paradise', 'Experience the heaven on earth.', 25000.00, 'assets/images/kashmir.jpg', 'domestic', 'Kashmir', 7],
['Uttarakhand Adventures', 'Explore the mountains and rivers.', 18000.00, 'assets/images/uttarakhand.jpg', 'domestic', 'Uttarakhand', 5],
['Kerala Backwaters', 'Relax in the serene backwaters.', 22000.00, 'assets/images/kerala.jpg', 'domestic', 'Kerala', 6],
['Goa Beach Fun', 'Enjoy the sun, sand, and sea.', 15000.00, 'assets/images/goa.jpg', 'domestic', 'Goa', 4],
['Manali Winter Magic', 'A snowy escape in the Himalayas.', 17000.00, 'assets/images/manali.jpg', 'domestic', 'Manali', 5],
['Spiritual Varanasi', 'A journey through ancient traditions.', 12000.00, 'assets/images/varanasi.jpg', 'domestic', 'Varanasi', 3],
['Ayodhya Ram Mandir Tour', 'Visit the historic city of Ayodhya.', 10000.00, 'assets/images/ayodhya.jpg', 'domestic', 'Ayodhya', 2],
// International
['Dubai Extravaganza', 'Experience the luxury of Dubai.', 55000.00, 'assets/images/dubai.jpg', 'international', 'Dubai', 5],
['Thailand Temples & Beaches', 'A mix of culture and relaxation.', 45000.00, 'assets/images/thailand.jpg', 'international', 'Thailand', 7],
['Classic United Kingdom', 'Explore London, Edinburgh and more.', 85000.00, 'assets/images/uk.jpg', 'international', 'United Kingdom', 10],
['Vietnam\'s Natural Wonders', 'From Halong Bay to Ho Chi Minh City.', 60000.00, 'assets/images/vietnam.jpg', 'international', 'Vietnam', 8],
['Bali Island Escape', 'Volcanoes, beaches, and temples.', 50000.00, 'assets/images/bali.jpg', 'international', 'Bali', 7],
['Maldives Overwater Bungalow', 'The ultimate romantic getaway.', 95000.00, 'assets/images/maldives.jpg', 'international', 'Maldives', 5],
];
$stmt = $pdo->prepare("
INSERT INTO `tour_packages` (name, description, price, image_url, category, location, duration_days)
VALUES (?, ?, ?, ?, ?, ?, ?)");
foreach ($packages as $package) {
$stmt->execute($package);
}
echo "Sample data inserted successfully.\n";
} else {
echo "Table 'tour_packages' already contains data. Skipping sample data insertion.\n";
}
echo "Database setup completed successfully!\n";
} catch (PDOException $e) {
die("Database setup failed: " . $e->getMessage() . "\n");
}
?>

174
index.php
View File

@ -1,150 +1,32 @@
<?php
declare(strict_types=1);
@ini_set('display_errors', '1');
@error_reporting(E_ALL);
@date_default_timezone_set('UTC');
$page_title = 'Home';
require_once 'partials/header.php';
?>
$phpVersion = PHP_VERSION;
$now = date('Y-m-d H:i:s');
?>
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>New Style</title>
<?php
// Read project preview data from environment
$projectDescription = $_SERVER['PROJECT_DESCRIPTION'] ?? '';
$projectImageUrl = $_SERVER['PROJECT_IMAGE_URL'] ?? '';
?>
<?php if ($projectDescription): ?>
<!-- Meta description -->
<meta name="description" content='<?= htmlspecialchars($projectDescription) ?>' />
<!-- Open Graph meta tags -->
<meta property="og:description" content="<?= htmlspecialchars($projectDescription) ?>" />
<!-- Twitter meta tags -->
<meta property="twitter:description" content="<?= htmlspecialchars($projectDescription) ?>" />
<?php endif; ?>
<?php if ($projectImageUrl): ?>
<!-- Open Graph image -->
<meta property="og:image" content="<?= htmlspecialchars($projectImageUrl) ?>" />
<!-- Twitter image -->
<meta property="twitter:image" content="<?= htmlspecialchars($projectImageUrl) ?>" />
<?php endif; ?>
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;700&display=swap" rel="stylesheet">
<style>
:root {
--bg-color-start: #6a11cb;
--bg-color-end: #2575fc;
--text-color: #ffffff;
--card-bg-color: rgba(255, 255, 255, 0.01);
--card-border-color: rgba(255, 255, 255, 0.1);
}
body {
margin: 0;
font-family: 'Inter', sans-serif;
background: linear-gradient(45deg, var(--bg-color-start), var(--bg-color-end));
color: var(--text-color);
display: flex;
justify-content: center;
align-items: center;
min-height: 100vh;
text-align: center;
overflow: hidden;
position: relative;
}
body::before {
content: '';
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="100" height="100" viewBox="0 0 100 100"><path d="M-10 10L110 10M10 -10L10 110" stroke-width="1" stroke="rgba(255,255,255,0.05)"/></svg>');
animation: bg-pan 20s linear infinite;
z-index: -1;
}
@keyframes bg-pan {
0% { background-position: 0% 0%; }
100% { background-position: 100% 100%; }
}
main {
padding: 2rem;
}
.card {
background: var(--card-bg-color);
border: 1px solid var(--card-border-color);
border-radius: 16px;
padding: 2rem;
backdrop-filter: blur(20px);
-webkit-backdrop-filter: blur(20px);
box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.1);
}
.loader {
margin: 1.25rem auto 1.25rem;
width: 48px;
height: 48px;
border: 3px solid rgba(255, 255, 255, 0.25);
border-top-color: #fff;
border-radius: 50%;
animation: spin 1s linear infinite;
}
@keyframes spin {
from { transform: rotate(0deg); }
to { transform: rotate(360deg); }
}
.hint {
opacity: 0.9;
}
.sr-only {
position: absolute;
width: 1px; height: 1px;
padding: 0; margin: -1px;
overflow: hidden;
clip: rect(0, 0, 0, 0);
white-space: nowrap; border: 0;
}
h1 {
font-size: 3rem;
font-weight: 700;
margin: 0 0 1rem;
letter-spacing: -1px;
}
p {
margin: 0.5rem 0;
font-size: 1.1rem;
}
code {
background: rgba(0,0,0,0.2);
padding: 2px 6px;
border-radius: 4px;
font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
}
footer {
position: absolute;
bottom: 1rem;
font-size: 0.8rem;
opacity: 0.7;
}
</style>
</head>
<body>
<main>
<div class="card">
<h1>Analyzing your requirements and generating your website…</h1>
<div class="loader" role="status" aria-live="polite" aria-label="Applying initial changes">
<span class="sr-only">Loading…</span>
<!-- ======= Hero Section ======= -->
<section id="hero" class="hero">
<div class="container position-relative">
<div class="row gy-5" data-aos="fade-in">
<div class="col-lg-12 text-center">
<h1>Come See The World With Us</h1>
<p>Your journey to luxury and adventure begins here.</p>
<div class="col-md-8 offset-md-2 mt-5">
<div class="input-group input-group-lg">
<input type="text" class="form-control" placeholder="Search for your dream destination...">
<button class="btn btn-primary" type="button" id="button-addon2" style="background-color: var(--primary-color); border-color: var(--primary-color);">Search</button>
</div>
</div>
<div class="mt-5">
<a href="tours.php" class="btn btn-primary btn-lg" style="background-color: var(--primary-color); border-color: var(--primary-color);">View All Tours</a>
</div>
</div>
</div>
<p class="hint"><?= ($_SERVER['HTTP_HOST'] ?? '') === 'appwizzy.com' ? 'AppWizzy' : 'Flatlogic' ?> AI is collecting your requirements and applying the first changes.</p>
<p class="hint">This page will update automatically as the plan is implemented.</p>
<p>Runtime: PHP <code><?= htmlspecialchars($phpVersion) ?></code> — UTC <code><?= htmlspecialchars($now) ?></code></p>
</div>
</main>
<footer>
Page updated: <?= htmlspecialchars($now) ?> (UTC)
</footer>
</body>
</html>
</section>
<!-- End Hero Section -->
<main id="main">
<!-- Other sections will be added here -->
</main><!-- End #main -->
<?php require_once 'partials/footer.php'; ?>

69
partials/footer.php Normal file
View File

@ -0,0 +1,69 @@
<!-- ======= Footer ======= -->
<footer id="footer" class="footer">
<div class="container">
<div class="row gy-4">
<div class="col-lg-5 col-md-12 footer-info">
<a href="index.php" class="logo d-flex align-items-center">
<span>Dreamz Destination</span>
</a>
<p>Cras fermentum odio eu feugiat lide par naso tierra. Justo eget nada terra videa magna derita valies darta donna mare fermentum iaculis eu non diam phasellus.</p>
<div class="social-links d-flex mt-4">
<a href="#" class="twitter"><i class="bi bi-twitter"></i></a>
<a href="#" class="facebook"><i class="bi bi-facebook"></i></a>
<a href="#" class="instagram"><i class="bi bi-instagram"></i></a>
<a href="#" class="linkedin"><i class="bi bi-linkedin"></i></a>
</div>
</div>
<div class="col-lg-2 col-6 footer-links">
<h4>Quick Links</h4>
<ul>
<li><i class="bi bi-chevron-right"></i> <a href="index.php">Home</a></li>
<li><i class="bi bi-chevron-right"></i> <a href="about.php">About us</a></li>
<li><i class="bi bi-chevron-right"></i> <a href="services.php">Services</a></li>
<li><i class="bi bi-chevron-right"></i> <a href="#">Terms of service</a></li>
<li><i class="bi bi-chevron-right"></i> <a href="#">Privacy policy</a></li>
</ul>
</div>
<div class="col-lg-2 col-6 footer-links">
<h4>Our Services</h4>
<ul>
<li><i class="bi bi-chevron-right"></i> <a href="#">Visa</a></li>
<li><i class="bi bi-chevron-right"></i> <a href="#">Accommodation</a></li>
<li><i class="bi bi-chevron-right"></i> <a href="#">Flight Booking</a></li>
<li><i class="bi bi-chevron-right"></i> <a href="#">Travel Insurance</a></li>
<li><i class="bi bi-chevron-right"></i> <a href="#">Consultation</a></li>
</ul>
</div>
<div class="col-lg-3 col-md-12 footer-contact text-center text-md-start">
<h4>Contact Us</h4>
<p>
Faridabad, Haryana<br>
India <br><br>
<strong>Phone:</strong> +1 234 5678 90<br>
<strong>Email:</strong> info@dreamzdestination.com<br>
</p>
</div>
</div>
</div>
</footer><!-- End Footer -->
<!-- ======= Floating Widgets ======= -->
<div class="floating-widgets">
<a href="https://wa.me/1234567890" target="_blank" class="floating-btn whatsapp-btn">
<i class="bi bi-whatsapp"></i>
</a>
<a href="contact.php" class="floating-btn quote-btn mt-2">Quote</a>
</div>
<!-- Vendor JS Files -->
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.2/dist/js/bootstrap.bundle.min.js"></script>
<!-- Main JS File -->
<script src="assets/js/main.js?v=<?php echo time(); ?>"></script>
</body>
</html>

77
partials/header.php Normal file
View File

@ -0,0 +1,77 @@
<?php
function page_title($title) {
$base_title = 'Dreamz Destination - Come See The World With Us';
if (isset($title) && !empty($title)) {
return $title . ' | ' . $base_title;
}
return $base_title;
}
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title><?php echo page_title($page_title ?? null); ?></title>
<!-- SEO Meta Tags -->
<meta name="description" content="<?php echo htmlspecialchars($_SERVER['PROJECT_DESCRIPTION'] ?? 'Luxury travel and tour packages by Dreamz Destination.'); ?>">
<meta name="keywords" content="luxury travel, tours, vacation, international tours, domestic tours">
<!-- Open Graph / Facebook -->
<meta property="og:type" content="website">
<meta property="og:title" content="Dreamz Destination">
<meta property="og:description" content="<?php echo htmlspecialchars($_SERVER['PROJECT_DESCRIPTION'] ?? 'Come See The World With Us'); ?>">
<meta property="og:image" content="<?php echo htmlspecialchars($_SERVER['PROJECT_IMAGE_URL'] ?? ''); ?>">
<!-- Twitter -->
<meta property="twitter:card" content="summary_large_image">
<meta property="twitter:title" content="Dreamz Destination">
<meta property="twitter:description" content="<?php echo htmlspecialchars($_SERVER['PROJECT_DESCRIPTION'] ?? 'Come See The World With Us'); ?>">
<meta property="twitter:image" content="<?php echo htmlspecialchars($_SERVER['PROJECT_IMAGE_URL'] ?? ''); ?>">
<!-- Favicons -->
<link href="assets/images/favicon.png" rel="icon">
<!-- Google Fonts -->
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Lato:wght@400;700&family=Playfair+Display:wght@700&display=swap" rel="stylesheet">
<!-- Vendor CSS Files -->
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.2/dist/css/bootstrap.min.css" rel="stylesheet">
<link href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.3/font/bootstrap-icons.css" rel="stylesheet">
<!-- Main CSS File -->
<link href="assets/css/custom.css?v=<?php echo time(); ?>" rel="stylesheet">
</head>
<body>
<!-- ======= Header ======= -->
<header id="header" class="header fixed-top d-flex align-items-center">
<div class="container d-flex align-items-center justify-content-between">
<a href="index.php" class="logo d-flex align-items-center">
<h1>Dreamz Destination</h1>
</a>
<nav id="navbar" class="navbar">
<ul>
<li><a class="nav-link scrollto active" href="index.php">Home</a></li>
<li><a class="nav-link scrollto" href="about.php">About</a></li>
<li class="dropdown"><a href="tours.php"><span>Tours</span> <i class="bi bi-chevron-down"></i></a>
<ul>
<li><a href="tours.php?category=domestic">Domestic</a></li>
<li><a href="tours.php?category=international">International</a></li>
</ul>
</li>
<li><a class="nav-link scrollto" href="services.php">Services</a></li>
<li><a class="nav-link scrollto" href="blog.php">Blog</a></li>
<li><a class="getstarted scrollto" href="contact.php">Contact Us</a></li>
</ul>
<i class="bi bi-list mobile-nav-toggle"></i>
</nav><!-- .navbar -->
</div>
</header><!-- End Header -->

71
services.php Normal file
View File

@ -0,0 +1,71 @@
<?php
$page_title = "Our Services";
require_once 'partials/header.php';
?>
<main id="main">
<!-- ======= Breadcrumbs ======= -->
<section class="breadcrumbs">
<div class="container">
<h2><?php echo $page_title; ?></h2>
<p>Discover the range of services we offer to make your travel seamless and memorable.</p>
</div>
</section><!-- End Breadcrumbs -->
<section class="container py-5">
<div class="row gy-4">
<div class="col-lg-8 offset-lg-2 text-center">
<h1 class="mb-4">What We Offer</h1>
<p class="lead">At Dreamz Destination, we provide a comprehensive suite of travel services designed to cater to your every need. From bespoke itineraries to corporate travel, our expertise ensures a flawless experience.</p>
</div>
</div>
<div class="row gy-4 mt-4">
<div class="col-md-6 col-lg-4">
<div class="service-item p-4 border rounded-3">
<i class="bi bi-airplane-engines fs-2 text-primary mb-3"></i>
<h3>Custom Itineraries</h3>
<p>We design personalized travel plans based on your interests, budget, and timeline, ensuring a unique and personal journey.</p>
</div>
</div>
<div class="col-md-6 col-lg-4">
<div class="service-item p-4 border rounded-3">
<i class="bi bi-building fs-2 text-primary mb-3"></i>
<h3>Hotel Bookings</h3>
<p>Gain access to our curated selection of luxury hotels, boutique resorts, and exclusive accommodations worldwide.</p>
</div>
</div>
<div class="col-md-6 col-lg-4">
<div class="service-item p-4 border rounded-3">
<i class="bi bi-car-front fs-2 text-primary mb-3"></i>
<h3>Private Transport</h3>
<p>Enjoy the comfort and convenience of private airport transfers, chauffeur services, and local transportation.</p>
</div>
</div>
<div class="col-md-6 col-lg-4">
<div class="service-item p-4 border rounded-3">
<i class="bi bi-briefcase fs-2 text-primary mb-3"></i>
<h3>Corporate Travel</h3>
<p>We offer streamlined and cost-effective travel management solutions for businesses of all sizes.</p>
</div>
</div>
<div class="col-md-6 col-lg-4">
<div class="service-item p-4 border rounded-3">
<i class="bi bi-people fs-2 text-primary mb-3"></i>
<h3>Group Tours</h3>
<p>Join one of our expertly guided group tours to explore popular destinations with fellow travel enthusiasts.</p>
</div>
</div>
<div class="col-md-6 col-lg-4">
<div class="service-item p-4 border rounded-3">
<i class="bi bi-gem fs-2 text-primary mb-3"></i>
<h3>VIP Experiences</h3>
<p>From private gallery viewings to exclusive event access, we arrange unique experiences you won't find anywhere else.</p>
</div>
</div>
</div>
</section>
</main><!-- End #main -->
<?php require_once 'partials/footer.php'; ?>

85
tour-details.php Normal file
View File

@ -0,0 +1,85 @@
<?php
require_once 'db/config.php';
$tour_id = $_GET['id'] ?? null;
if (!$tour_id) {
header("Location: tours.php");
exit;
}
try {
$pdo = db();
$stmt = $pdo->prepare("SELECT * FROM tour_packages WHERE id = :id");
$stmt->bindParam(':id', $tour_id);
$stmt->execute();
$tour = $stmt->fetch();
} catch (PDOException $e) {
echo 'Failed to fetch tour details: ' . $e->getMessage();
$tour = null;
}
if (!$tour) {
echo "Tour not found.";
exit;
}
$page_title = $tour['name'];
require_once 'partials/header.php';
?>
<main id="main">
<!-- ======= Breadcrumbs ======= -->
<section class="breadcrumbs">
<div class="container">
<ol>
<li><a href="index.php">Home</a></li>
<li><a href="tours.php">Tours</a></li>
<li><?php echo htmlspecialchars($tour['name']); ?></li>
</ol>
<h2><?php echo htmlspecialchars($tour['name']); ?></h2>
</div>
</section><!-- End Breadcrumbs -->
<!-- ======= Tour Details Section ======= -->
<section id="tour-details" class="tour-details">
<div class="container">
<div class="row gy-4">
<div class="col-lg-8">
<div class="tour-details-slider swiper">
<div class="swiper-wrapper align-items-center">
<div class="swiper-slide">
<img src="<?php echo htmlspecialchars($tour['image_url']); ?>" alt="">
</div>
</div>
<div class="swiper-pagination"></div>
</div>
</div>
<div class="col-lg-4">
<div class="tour-info">
<h3>Tour information</h3>
<ul>
<li><strong>Category</strong>: <?php echo ucfirst(htmlspecialchars($tour['category'])); ?></li>
<li><strong>Location</strong>: <?php echo htmlspecialchars($tour['location']); ?></li>
<li><strong>Duration</strong>: <?php echo htmlspecialchars($tour['duration_days']); ?> days</li>
<li><strong>Price</strong>: <?php echo number_format($tour['price'], 2); ?></li>
</ul>
</div>
<div class="tour-description">
<h2>Description</h2>
<p>
<?php echo nl2br(htmlspecialchars($tour['description'])); ?>
</p>
</div>
</div>
</div>
</div>
</section><!-- End Tour Details Section -->
</main><!-- End #main -->
<?php require_once 'partials/footer.php'; ?>

84
tours.php Normal file
View File

@ -0,0 +1,84 @@
<?php
require_once 'db/config.php';
$page_title = 'Our Tours';
require_once 'partials/header.php';
$category_filter = $_GET['category'] ?? 'all';
try {
$pdo = db();
$sql = "SELECT * FROM tour_packages";
if ($category_filter !== 'all') {
$sql .= " WHERE category = :category";
}
$stmt = $pdo->prepare($sql);
if ($category_filter !== 'all') {
$stmt->bindParam(':category', $category_filter);
}
$stmt->execute();
$tours = $stmt->fetchAll();
} catch (PDOException $e) {
echo 'Failed to fetch tours: ' . $e->getMessage();
$tours = [];
}
?>
<main id="main">
<!-- ======= Breadcrumbs ======= -->
<section class="breadcrumbs">
<div class="container">
<ol>
<li><a href="index.php">Home</a></li>
<li>Tours</li>
</ol>
<h2>Our Tours</h2>
</div>
</section><!-- End Breadcrumbs -->
<!-- ======= Tours Section ======= -->
<section id="tours" class="tours">
<div class="container">
<div class="row">
<div class="col-lg-12 d-flex justify-content-center">
<ul id="tours-flters">
<li class="<?php echo $category_filter === 'all' ? 'filter-active' : ''; ?>"><a href="tours.php?category=all">All</a></li>
<li class="<?php echo $category_filter === 'domestic' ? 'filter-active' : ''; ?>"><a href="tours.php?category=domestic">Domestic</a></li>
<li class="<?php echo $category_filter === 'international' ? 'filter-active' : ''; ?>"><a href="tours.php?category=international">International</a></li>
</ul>
</div>
</div>
<div class="row gy-4 tours-container">
<?php if (empty($tours)): ?>
<div class="col-lg-12 text-center">
<p>No tours found for this category.</p>
</div>
<?php else: ?>
<?php foreach ($tours as $tour): ?>
<div class="col-lg-4 col-md-6 tour-item">
<div class="tour-wrap">
<img src="<?php echo htmlspecialchars($tour['image_url']); ?>" class="img-fluid" alt="">
<div class="tour-info">
<h4><a href="tour-details.php?id=<?php echo $tour['id']; ?>"><?php echo htmlspecialchars($tour['name']); ?></a></h4>
<p><?php echo htmlspecialchars($tour['location']); ?></p>
<div class="tour-links">
<a href="tour-details.php?id=<?php echo $tour['id']; ?>" title="More Details"><i class="bi bi-link"></i></a>
</div>
</div>
</div>
</div>
<?php endforeach; ?>
<?php endif; ?>
</div>
</div>
</section><!-- End Tours Section -->
</main><!-- End #main -->
<?php require_once 'partials/footer.php'; ?>