<?php
// Start session
session_start();
// Redirect to login page if not logged in
if (!isset($_SESSION["loggedin"]) || $_SESSION["loggedin"] !== true) {
header("Location: login.php");
exit;
}
// Include coredb.php for database connection
require_once('config/core.php');
// Check if the required constants are defined
if (!defined('DB_HOST') || !defined('DB_USER') || !defined('DB_PASS') || !defined('DB_NAME')) {
die("Database configuration error. Please check config/core.php.");
}
// Create connection
$conn = mysqli_connect(DB_HOST, DB_USER, DB_PASS, DB_NAME);
// Check connection
if (!$conn) {
die("Connection failed: " . mysqli_connect_error());
}
// Fetch favicon and company_copyright from site_settings table Begin
$sql = "SELECT favicon, company_copyright FROM site_settings LIMIT 1";
$result = $conn->query($sql);
// Check if data exists
if ($result && $result->num_rows > 0) {
$row = $result->fetch_assoc();
$favicon_url = $row['favicon'];
$company_copyright = $row['company_copyright'];
} else {
// Default values if not found in the database
$favicon_url = "default_favicon_url.ico";
$company_copyright = "";
}
// Fetch favicon and company_copyright from site_settings table End
// Initialize variables
$alertMessage = '';
// Handle form submission
if ($_SERVER["REQUEST_METHOD"] === "POST" && isset($_POST['site_submit'])) {
// Validate uploaded files
$companyLogo = isset($_FILES['company_logo']['name']) && !empty(trim($_FILES['company_logo']['name'])) ? $_FILES['company_logo']['name'] : null;
$companyLoader = isset($_FILES['company_loader']['name']) && !empty(trim($_FILES['company_loader']['name'])) ? $_FILES['company_loader']['name'] : null;
$favicon = isset($_FILES['favicon']['name']) && !empty(trim($_FILES['favicon']['name'])) ? $_FILES['favicon']['name'] : null;
$companyCopyright = isset($_POST['company_copyright']) ? $_POST['company_copyright'] : '';
if (!$companyLogo || !$companyLoader || !$favicon || empty($companyCopyright)) {
$alertMessage = 'Please fill in all fields.';
} else {
// Directory to upload files
$targetDir = 'uploads/';
// File paths
$companyLogoTarget = $targetDir . basename($companyLogo);
$companyLoaderTarget = $targetDir . basename($companyLoader);
$faviconTarget = $targetDir . basename($favicon);
// Move uploaded files to the target directory
if (move_uploaded_file($_FILES['company_logo']['tmp_name'], $companyLogoTarget) &&
move_uploaded_file($_FILES['favicon']['tmp_name'], $faviconTarget) &&
move_uploaded_file($_FILES['company_loader']['tmp_name'], $companyLoaderTarget)) {
// Prepare and execute SQL statement
$sql = "UPDATE site_settings SET company_logo = ?, company_loader = ?, favicon = ?, company_copyright = ?";
$stmt = mysqli_prepare($conn, $sql);
mysqli_stmt_bind_param($stmt, "ssss", $companyLogoTarget, $companyLoaderTarget, $faviconTarget, $companyCopyright);
if (mysqli_stmt_execute($stmt)) {
$alertMessage = "Record updated successfully";
} else {
$alertMessage = "Error updating record: " . mysqli_error($conn);
}
mysqli_stmt_close($stmt);
} else {
$alertMessage = "Error uploading files";
}
}
}
// metatitle, metadescription, metakeyword Begin
// Prepare and bind the SQL query
$sql = "SELECT title, meta_description, meta_keyword FROM webpages WHERE webpage_name = ?";
$stmt = $conn->prepare($sql);
$stmt->bind_param("s", $webpage_name);
// Set the webpage name
$webpage_name = "settings"; // Replace "your_webpage_name" with the actual webpage name
// Execute the query
$stmt->execute();
// Bind the result variables
$stmt->bind_result($title, $meta_description, $meta_keyword);
// Fetch the values
$stmt->fetch();
// Close statement
$stmt->close();
// metatitle, metadescription, metakeyword End
// fetch google_adsense data Begin
// Fetch data from google_adsense table
$sql = "SELECT script FROM google_adsense ORDER BY id DESC LIMIT 1";
$result = $conn->query($sql);
// Initialize variable to store the script
$script = '';
// Check if the query was successful
if ($result && $result->num_rows > 0) {
// Fetch the script
$row = $result->fetch_assoc();
$script = $row['script'];
}
// fetch google_adsense data End
// fetch data google_analytics Begin
// Initialize the variable
$analytics_script = '';
// SQL query to select the analytics_script from google_analytics table
$sql = "SELECT analytics_script FROM google_analytics";
// Execute the query
$result = $conn->query($sql);
// Check if the query was successful and if there is at least one row returned
if ($result && $result->num_rows > 0) {
// Fetch the data
$row = $result->fetch_assoc();
// Assign the analytics_script to the variable
$analytics_script = $row['analytics_script'];
} else {
$analytics_script = 'No analytics script found.';
}
// fetch data google_analytics End
// Close the database connection
mysqli_close($conn);
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title><?php echo $title; ?></title>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<link id="image_2" rel="icon" type="image/x-icon" href="<?php echo $favicon_url; ?>">
<meta name="robots" content="index, follow" />
<meta name="author" content="Design Collection">
<meta name="description" content="<?php echo $meta_description; ?>">
<meta name="keywords" content="<?php echo $meta_keyword; ?>">
<!-- Viewport configuration, scaling options -->
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
<!-- Bootstrap CSS -->
<link href="assets/css/bootstrap.min.css" rel="stylesheet">
<!-- custom CSS -->
<link href="assets/css/custom.css" rel="stylesheet">
<!-- Font Awesome icon -->
<link href="assets/fontawesome/css/fontawesome.css" rel="stylesheet" />
<!-- Google web font -->
<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=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap" rel="stylesheet">
<!-- HTML5 Shim and Respond.js IE8 support of HTML5 elements and media queries -->
<!--[if lt IE 9]>
<script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script>
<script src="https://oss.maxcdn.com/libs/respond.js/1.4.2/respond.min.js"></script>
<![endif]-->
<!--analytics_script Begin-->
<?php echo $analytics_script ?>
<!--analytics_script End-->
</head>
<body>
<!--unique id begin -->
<div id="s_mm">
<?php include 'preloader.php';?>
<!--scroll-top Begin-->
<div id="scroll-top">
<!--sidebarwrapper Begin-->
<div id="sidebarwrapper">
<!--Sidebarmenu Begin-->
<?php include 'sidebar-menu.php';?>
<!--Sidebarmenu End-->
<!--content-wrapper Begin-->
<div id="content-wrapper" class="d-flex flex-column dashboard-navbar">
<!--maincontent Begin-->
<div id="maincontent">
<!-- Navbar Topbar Begin-->
<nav class="navbar navbar-expand navbar-light bg-white topbar mb-4 static-top shadow">
<button id="humbergersidebarToggleTop" class="btn btn-link rounded-circle mr-3">
<i class="fa fa-bars"></i>
</button>
</nav>
<!-- Navbar Topbar End-->
<!-- Container Begin-->
<div class="container-fluid px-4">
<div class="d-sm-flex align-items-center justify-content-between mb-4">
<h3>
Settings
</h3>
</div>
<!--Row Begin-->
<div class="row">
<!--Edit Settings Begin-->
<div class="col-md-12">
<div class="card border-0 shadow mb-4">
<div class="card-header bg-white border-bottom py-3 border-top-left-right">
<h6 class="m-0 fw-bold">Edit Settings</h6>
</div>
<!--card Body Begin-->
<div class="card-body">
<form method="post" enctype="multipart/form-data">
<div class="row">
<!--Company Logo Begin-->
<div class="col-md-6">
<div class="mb-3">
<label for="company_logo" class="form-label">Logo</label>
<small class="fs-11 text-danger"> (Image Recommended size 143*46 in .png format)</small>
<input class="form-control" type="file" id="company_logo" name="company_logo" required accept="image/png">
</div>
</div>
<!--Company Logo End-->
<!--Upload Favicon Begin-->
<div class="col-md-6">
<div class="mb-3">
<label for="favicon" class="form-label">Favicon</label>
<small class="fs-11 text-danger"> (Image Recommended size 32*32 in .png format)</small>
<input type="file" class="form-control" id="favicon" name="favicon" required accept="image/png">
</div>
</div>
<!--Upload Favicon End-->
<!--Upload Loader Begin-->
<div class="col-md-6">
<div class="mb-3">
<label for="company_loader" class="form-label">Loader</label>
<small class="fs-11 text-danger"> (Image Recommended size 128*128 in .gif format)</small>
<input type="file" class="form-control" id="company_loader" name="company_loader" accept="image/gif">
</div>
</div>
<!--Upload Loader End-->
<!--Copyright Begin-->
<div class="col-md-6">
<div class="mb-3">
<label for="company_copyright" class="form-label">Copyright</label>
<input type="text" class="form-control" id="company_copyright" name="company_copyright" maxlength="80" placeholder="Copyright" required>
</div>
</div>
<!--Copyright End-->
<div>
<button type="submit" name="site_submit" class="btn btn-primary my-4">Save</button>
</div>
</div>
</form>
<!-- Display alert message -->
<?php if (!empty($alertMessage)): ?>
<div id="success-alert" class="alert alert-success alert-dismissible fade show mt-3" role="alert">
<?php echo $alertMessage; ?>
<button type="button" class="btn-close" data-bs-dismiss="alert" aria-label="Close"></button>
</div>
<?php endif; ?>
</div>
<!--card Body End-->
</div>
</div>
<!--Edit Settings End-->
<!--Adsense Begin-->
<div class='col-md-12'>
<?php echo $script; ?>
</div>
<!--Adsense End-->
</div>
<!--Row End-->
</div>
<!-- Container End-->
</div>
<!--maincontent End-->
<!--Copyright Begin-->
<div class="p-4 border bg-white">
<div class="container">
<div class="row align-items-center">
<div class="col-lg-12 col-sm-12">
<p class="small text-center p-0 m-0"><?php echo $company_copyright; ?></p>
</div>
</div>
</div>
</div>
<!--Copyright End-->
</div>
<!--content-wrapper End-->
</div>
<!--sidebarwrapper End-->
<!--scroll to top Begin-->
<button onclick="topFunction()" id="gobackToTop" title="arrow-right"><i class="fas fa-angle-up"></i></button>
<!--scroll to top End-->
<!-- Jquery Script -->
<script src="assets/js/jquery-3.4.1.min.js"></script>
<!-- Bootstrap Script -->
<script src="assets/js/bootstrap.bundle.min.js"></script>
<!-- theme-min Script -->
<script src="assets/js/dashboard-custom.js"></script>
<script>
// Wait for the DOM to be fully loaded
document.addEventListener("DOMContentLoaded", function() {
// Select the alert element
var alertElement = document.getElementById('success-alert');
// If the alert element exists
if (alertElement) {
// Hide the alert after 2 seconds
setTimeout(function() {
alertElement.style.display = 'none';
}, 2000);
}
});
</script>
</div>
<!--scroll-top End-->
</div>
<!--unique id End -->
</body>
</html>