|
Server IP : 217.21.85.138 / Your IP : 216.73.216.103 Web Server : LiteSpeed System : Linux in-mum-web906.main-hosting.eu 4.18.0-553.37.1.lve.el8.x86_64 #1 SMP Mon Feb 10 22:45:17 UTC 2025 x86_64 User : u915722082 ( 915722082) PHP Version : 7.4.33 Disable Function : system, exec, shell_exec, passthru, mysql_list_dbs, ini_alter, dl, symlink, link, chgrp, leak, popen, apache_child_terminate, virtual, mb_send_mail MySQL : OFF | cURL : ON | WGET : ON | Perl : OFF | Python : OFF Directory (0755) : /home/u915722082/public_html/pms/admin/ |
| [ Home ] | [ C0mmand ] | [ Upload File ] |
|---|
<!--edit-customer.php-->
<?php
session_start();
if (!isset($_SESSION['admin_id'])) {
header("Location: login.php");
exit;
}
// ADMIN/MANAGER ONLY ACCESS
if ($_SESSION['role'] === 'Employee') {
header("Location: employee.php");
exit;
}
require_once '../config/config.php';
require_once '../config/db.php';
$current_user_role = $_SESSION['role'] ?? 'Manager';
$current_user_id = $_SESSION['admin_id'];
$current_user_name = $_SESSION['user_name'] ?? 'Admin';
// Get customer ID from URL
$customer_id = isset($_GET['id']) ? intval($_GET['id']) : 0;
if ($customer_id <= 0) {
header("Location: customers.php");
exit;
}
// Fetch customer data
// $customer_query = "SELECT * FROM tbl_customers WHERE customer_id = $customer_id";
// $customer_result = mysqli_query($con, $customer_query);
// Fetch customer data with active address
$customer_query = "SELECT c.*,
ca.city as address_city,
ca.state as address_state,
ca.country as address_country,
ca.pincode as address_pincode
FROM tbl_customers c
LEFT JOIN tbl_customer_addresses ca ON c.customer_id = ca.customer_id AND ca.is_active = 1
WHERE c.customer_id = $customer_id";
$customer_result = mysqli_query($con, $customer_query);
if (mysqli_num_rows($customer_result) === 0) {
header("Location: customers.php");
exit;
}
$customer = mysqli_fetch_assoc($customer_result);
// Fetch customer users
$users_query = "SELECT * FROM tbl_customer_users WHERE customer_id = $customer_id ORDER BY is_default DESC, user_id ASC";
$users_result = mysqli_query($con, $users_query);
$customer_users = [];
while ($user = mysqli_fetch_assoc($users_result)) {
$customer_users[] = $user;
}
// Fetch billing addresses
$addresses_query = "SELECT * FROM tbl_customer_addresses WHERE customer_id = $customer_id ORDER BY is_active DESC, address_id ASC";
$addresses_result = mysqli_query($con, $addresses_query);
$billing_addresses = [];
while ($address = mysqli_fetch_assoc($addresses_result)) {
$billing_addresses[] = $address;
}
?>
<!DOCTYPE html>
<html lang="en">
<head>
<base href="../" />
<title>Edit Client - <?php echo htmlspecialchars($customer['customer_name']); ?> - TDS Admin Hub</title>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Inter:300,400,500,600,700" />
<link href="assets/plugins/global/plugins.bundle.css" rel="stylesheet" type="text/css" />
<link href="assets/css/style.bundle.css" rel="stylesheet" type="text/css" />
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/intl-tel-input/17.0.8/css/intlTelInput.css"/>
<script src="https://cdnjs.cloudflare.com/ajax/libs/intl-tel-input/17.0.8/js/intlTelInput.min.js"></script>
</head>
<body id="kt_app_body" data-kt-app-layout="dark-sidebar" data-kt-app-header-fixed="true"
data-kt-app-sidebar-enabled="true" data-kt-app-sidebar-fixed="true"
data-kt-app-sidebar-hoverable="true" data-kt-app-sidebar-push-header="true"
data-kt-app-sidebar-push-toolbar="true" data-kt-app-sidebar-push-footer="true"
data-kt-app-toolbar-enabled="true" class="app-default">
<script>
var defaultThemeMode = "light";
var themeMode;
if (document.documentElement) {
if (document.documentElement.hasAttribute("data-bs-theme-mode")) {
themeMode = document.documentElement.getAttribute("data-bs-theme-mode");
} else {
if (localStorage.getItem("data-bs-theme") !== null) {
themeMode = localStorage.getItem("data-bs-theme");
} else {
themeMode = defaultThemeMode;
}
}
if (themeMode === "system") {
themeMode = window.matchMedia("(prefers-color-scheme: dark)").matches ? "dark" : "light";
}
document.documentElement.setAttribute("data-bs-theme", themeMode);
}
</script>
<div class="d-flex flex-column flex-root app-root" id="kt_app_root">
<div class="app-page flex-column flex-column-fluid" id="kt_app_page">
<?php include 'includes/header.php'; ?>
<div class="app-wrapper flex-column flex-row-fluid" id="kt_app_wrapper">
<?php include 'includes/sidebar.php'; ?>
<div class="app-main flex-column flex-row-fluid" id="kt_app_main">
<div class="d-flex flex-column flex-column-fluid">
<!-- Toolbar -->
<div id="kt_app_toolbar" class="app-toolbar py-3 py-lg-6">
<div id="kt_app_toolbar_container" class="app-container container-xxl d-flex flex-stack">
<div class="page-title d-flex flex-column justify-content-center flex-wrap me-3">
<h1 class="page-heading d-flex text-dark fw-bold fs-3 flex-column justify-content-center my-0">
Edit Client
</h1>
<ul class="breadcrumb breadcrumb-separatorless fw-semibold fs-7 my-0 pt-1">
<li class="breadcrumb-item text-muted">
<a href="admin/dashboard.php" class="text-muted text-hover-primary">Home</a>
</li>
<li class="breadcrumb-item">
<span class="bullet bg-gray-400 w-5px h-2px"></span>
</li>
<li class="breadcrumb-item text-muted">
<a href="admin/customers.php" class="text-muted text-hover-primary">Client</a>
</li>
<li class="breadcrumb-item">
<span class="bullet bg-gray-400 w-5px h-2px"></span>
</li>
<li class="breadcrumb-item text-muted">Edit</li>
</ul>
</div>
</div>
</div>
<form id="editCustomerForm" class="form" method="POST" enctype="multipart/form-data">
<input type="hidden" name="action" value="update">
<input type="hidden" name="customer_id" value="<?php echo $customer_id; ?>">
<input type="hidden" name="customer_status" value="<?php echo $customer['customer_status']; ?>">
<!-- Content -->
<div id="kt_app_content" class="app-content flex-column-fluid">
<div id="kt_app_content_container" class="app-container container-xxl">
<!-- Navbar Card -->
<div class="card mb-5 mb-xl-10">
<div class="card-body pt-9 pb-0">
<div class="d-flex flex-wrap flex-sm-nowrap mb-3">
<!-- Avatar -->
<div class="me-7">
<div class="symbol symbol-100px symbol-lg-160px symbol-fixed position-relative">
<!--<img style="object-fit:cover" src="<?php echo !empty($customer['avatar']) ? 'uploads/customers/' . htmlspecialchars($customer['avatar']) : 'assets/media/avatars/blank.png'; ?>" alt="image" />-->
<!--<div class="position-absolute translate-middle bottom-0 start-100 mb-6 bg-<?php echo $customer['customer_status'] === 'Active' ? 'success' : ($customer['customer_status'] === 'Inactive' ? 'danger' : 'warning'); ?> rounded-circle border border-4 border-body h-20px w-20px"></div>-->
<div class="row mb-6">
<div class="col-lg-12">
<div class="image-input image-input-outline" data-kt-image-input="true"
style="background-image: url('assets/media/svg/avatars/blank.svg')">
<div class="image-input-wrapper"
style="
height:150px;
width:150px;
background-image: url('<?php
echo !empty($customer['avatar'])
? 'uploads/customers/' . htmlspecialchars($customer['avatar'])
: 'assets/media/avatars/blank.png';
?>');
">
</div>
<label class="btn btn-icon btn-circle btn-active-color-primary w-25px h-25px bg-body shadow"
data-kt-image-input-action="change" data-bs-toggle="tooltip" title="Change avatar">
<i class="bi bi-pencil-fill fs-7"></i>
<input type="file" name="avatar" accept=".png, .jpg, .jpeg" />
<input type="hidden" name="avatar_remove" />
</label>
<span class="btn btn-icon btn-circle btn-active-color-primary w-25px h-25px bg-body shadow"
data-kt-image-input-action="cancel" data-bs-toggle="tooltip" title="Cancel avatar">
<i class="bi bi-x fs-2"></i>
</span>
<span class="btn btn-icon btn-circle btn-active-color-primary w-25px h-25px bg-body shadow"
data-kt-image-input-action="remove" data-bs-toggle="tooltip" title="Remove avatar">
<i class="bi bi-x fs-2"></i>
</span>
</div>
<div class="form-text">Allowed file types: png, jpg, jpeg.</div>
</div>
</div>
</div>
</div>
<!-- Info -->
<div class="flex-grow-1">
<div class="d-flex justify-content-between align-items-start flex-wrap mb-2">
<div class="d-flex flex-column">
<div class="d-flex align-items-center mb-2">
<a class="text-gray-900 text-hover-primary fs-2 fw-bold me-1">
<?php echo htmlspecialchars($customer['customer_name']); ?>
</a>
<span class="badge badge-light-<?php
echo $customer['company_type'] === 'Company' ? 'primary' :
($customer['company_type'] === 'Startup' ? 'success' : 'info');
?> fs-7 fw-bold ms-2">
<?php echo $customer['company_type']; ?>
</span>
</div>
<div class="d-flex flex-wrap fw-semibold fs-6 mb-4 pe-2">
<a href="mailto:<?php echo $customer['email']; ?>" class="d-flex align-items-center text-gray-400 text-hover-primary me-5 mb-2">
<i class="ki-duotone ki-sms fs-4 me-1">
<span class="path1"></span>
<span class="path2"></span>
</i>
<?php echo htmlspecialchars($customer['email']); ?>
</a>
<a href="tel:<?php echo $customer['phone']; ?>" class="d-flex align-items-center text-gray-400 text-hover-primary me-5 mb-2">
<i class="ki-duotone ki-phone fs-4 me-1">
<span class="path1"></span>
<span class="path2"></span>
</i>
<?php echo htmlspecialchars($customer['phone']); ?>
</a>
<span class="d-flex align-items-center text-gray-400 mb-2">
<i class="ki-duotone ki-geolocation fs-4 me-1">
<span class="path1"></span>
<span class="path2"></span>
</i>
<?php
$display_city = !empty($customer['address_city']) ? $customer['address_city'] : $customer['city'];
$display_state = !empty($customer['address_state']) ? $customer['address_state'] : $customer['state'];
$display_country = !empty($customer['address_country']) ? $customer['address_country'] : $customer['country'];
echo htmlspecialchars($display_city) . ', ' . htmlspecialchars($display_state) . ', ' . htmlspecialchars($display_country);
?>
</span>
</div>
</div>
<!-- Status Dropdown with Three Dot Menu -->
<div class="d-flex align-items-center gap-2 my-4">
<input type="hidden" id="statusCustomerId" value="<?php echo $customer_id; ?>">
<!-- Status Dropdown -->
<select id="statusDropdown"
data-control="select2"
data-hide-search="true"
data-placeholder="Select Status"
class="form-select form-select-solid w-200px">
<option value="Active" <?php echo $customer['customer_status'] === 'Active' ? 'selected' : ''; ?>>Active</option>
<option value="Inactive" <?php echo $customer['customer_status'] === 'Inactive' ? 'selected' : ''; ?>>Inactive</option>
<option value="Lead" <?php echo $customer['customer_status'] === 'Lead' ? 'selected' : ''; ?>>Lead</option>
</select>
<!-- Three Dot Menu Button -->
<button type="button"
class="btn btn-lg btn-icon btn-primary btn-active-primary p-3"
data-kt-menu-trigger="click"
data-kt-menu-placement="bottom-end">
<i class="ki-solid ki-dots-horizontal fs-2x"></i>
</button>
<!-- Dropdown Menu -->
<div class="menu menu-sub menu-sub-dropdown menu-column menu-rounded menu-gray-800 menu-state-bg-light-primary fw-semibold w-200px py-3"
data-kt-menu="true">
<!-- Menu Header -->
<div class="menu-item px-3">
<div class="menu-content text-muted pb-2 px-3 fs-7 text-uppercase">
Payments
</div>
</div>
<!-- Create Invoice -->
<div class="menu-item px-3">
<a href="#" class="menu-link px-3">
<span class="menu-icon">
<i class="ki-duotone ki-document fs-2">
<span class="path1"></span>
<span class="path2"></span>
</i>
</span>
<span class="menu-title">Create Invoice</span>
</a>
</div>
<!-- Create Payment -->
<div class="menu-item px-3">
<a href="#" class="menu-link px-3">
<span class="menu-icon">
<i class="ki-duotone ki-wallet fs-2">
<span class="path1"></span>
<span class="path2"></span>
<span class="path3"></span>
<span class="path4"></span>
</i>
</span>
<span class="menu-title">Create Payment</span>
<span class="menu-badge">
<i class="ki-duotone ki-plus-circle fs-4">
<span class="path1"></span>
<span class="path2"></span>
</i>
</span>
</a>
</div>
<!-- Generate Bill -->
<div class="menu-item px-3">
<a href="#" class="menu-link px-3">
<span class="menu-icon">
<i class="ki-duotone ki-bill fs-2">
<span class="path1"></span>
<span class="path2"></span>
<span class="path3"></span>
<span class="path4"></span>
<span class="path5"></span>
<span class="path6"></span>
</i>
</span>
<span class="menu-title">Generate Bill</span>
</a>
</div>
</div>
</div>
</div>
</div>
</div>
<!-- Navigation Tabs -->
<ul class="nav nav-stretch nav-line-tabs nav-line-tabs-2x border-transparent fs-5 fw-bold">
<li class="nav-item mt-2">
<a class="nav-link text-active-primary ms-0 me-10 py-5"
data-bs-toggle="tab"
href="#kt_tab_overview">
Overview
</a>
</li>
<li class="nav-item mt-2">
<a class="nav-link text-active-primary ms-0 me-10 py-5"
data-bs-toggle="tab"
href="#kt_tab_billing">
Billing
</a>
</li>
<li class="nav-item mt-2">
<a class="nav-link text-active-primary ms-0 me-10 py-5"
data-bs-toggle="tab"
href="#kt_tab_users">
Users
</a>
</li>
<li class="nav-item mt-2">
<a class="nav-link text-active-primary ms-0 me-10 py-5"
data-bs-toggle="tab"
href="#kt_tab_statement">
Statement
</a>
</li>
<li class="nav-item mt-2">
<a class="nav-link text-active-primary ms-0 me-10 py-5 active"
data-bs-toggle="tab"
href="#kt_tab_info">
Settings
</a>
</li>
</ul>
</div>
</div>
<!-- Tab Content -->
<div class="tab-content" id="myTabContent">
<!-- INFO TAB -->
<!-- STATEMENT TAB -->
<!-- STATEMENT TAB -->
<div class="tab-pane fade" id="kt_tab_statement" role="tabpanel">
<!-- Orders Table -->
<div class="card mb-5 mb-xl-10">
<div class="card-header border-0 pt-6">
<div class="card-title">
<h3 class="fw-bold m-0">Orders</h3>
</div>
<div class="card-toolbar">
<div class="d-flex align-items-center gap-2">
<!-- OLD CODE - REMOVE THIS -->
<!--<button type="button" class="btn btn-sm btn-light" id="kt_orders_daterangepicker">-->
<!-- <i class="ki-duotone ki-calendar fs-3">-->
<!-- <span class="path1"></span>-->
<!-- <span class="path2"></span>-->
<!-- </i>-->
<!-- Pick date range-->
<!--</button>-->
<!-- NEW CODE - ADD THIS -->
<select id="kt_orders_range_selector" class="form-select form-select-sm form-select-solid w-200px" data-control="select2" data-hide-search="true">
<option value="all">All Time</option>
<option value="1">Last 1 Day</option>
<option value="10">Last 10 Days</option>
<option value="13">Last 13 Days</option>
<option value="30">Last 1 Month</option>
<option value="custom">Custom Range</option>
</select>
<input type="text" id="kt_orders_custom_range" class="form-control form-control-sm form-control-solid w-250px ms-3" placeholder="Select custom range" style="display:none;" />
<button type="button" class="btn btn-sm btn-primary text-nowrap" data-bs-toggle="modal" data-bs-target="#kt_modal_add_payment">
<i class="ki-duotone ki-plus fs-3"></i>
Add payment
</button>
</div>
</div>
</div>
<div class="card-body pt-0">
<div class="table-responsive">
<table class="table align-middle table-row-dashed fs-6 gy-5" id="kt_orders_table">
<thead>
<tr class="text-start text-muted fw-bold fs-7 text-uppercase gs-0">
<th class="min-w-125px">ORDER NO.</th>
<th class="min-w-125px">TOTAL AMOUNT</th>
<th class="min-w-125px">BALANCE</th>
<th class="min-w-100px">STATUS</th>
<th class="min-w-125px">CREATED DATE</th>
</tr>
</thead>
<tbody class="text-gray-600 fw-semibold" id="orders_table_body">
<tr data-date="2025-12-11">
<td>
<span class="text-gray-800 text-hover-primary">VOH121125211303</span>
</td>
<td class="text-gray-800">₹ 44000.00</td>
<td class="text-gray-800">₹ 34000.00</td>
<td>
<span class="badge badge-light-warning">PENDING</span>
</td>
<td>Dec 11, 2025</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
<!-- Payment Records Table -->
<div class="card">
<!--<div class="card-header border-0 pt-6">-->
<!-- <div class="card-title">-->
<!-- <h3 class="fw-bold m-0">Payment Records</h3>-->
<!-- </div>-->
<!-- <div class="card-toolbar">-->
<!-- <ul class="nav nav-pills nav-pills-custom">-->
<!-- <li class="nav-item mb-3 me-3 me-lg-6">-->
<!-- <a class="nav-link btn btn-outline btn-flex btn-color-muted btn-active-color-primary flex-column overflow-hidden w-80px h-85px pt-5 pb-2 active" data-bs-toggle="tab" href="#payment_2025">-->
<!-- <div class="nav-icon mb-3">-->
<!-- <i class="ki-duotone ki-calendar fs-1">-->
<!-- <span class="path1"></span>-->
<!-- <span class="path2"></span>-->
<!-- </i>-->
<!-- </div>-->
<!-- <span class="nav-text text-gray-800 fw-bold fs-6 lh-1">2025</span>-->
<!-- </a>-->
<!-- </li>-->
<!-- <li class="nav-item mb-3 me-3 me-lg-6">-->
<!-- <a class="nav-link btn btn-outline btn-flex btn-color-muted btn-active-color-primary flex-column overflow-hidden w-80px h-85px pt-5 pb-2" data-bs-toggle="tab" href="#payment_2024">-->
<!-- <div class="nav-icon mb-3">-->
<!-- <i class="ki-duotone ki-calendar fs-1">-->
<!-- <span class="path1"></span>-->
<!-- <span class="path2"></span>-->
<!-- </i>-->
<!-- </div>-->
<!-- <span class="nav-text text-gray-800 fw-bold fs-6 lh-1">2024</span>-->
<!-- </a>-->
<!-- </li>-->
<!-- </ul>-->
<!-- </div>-->
<!--</div>-->
<div class="card-header border-0 pt-6">
<div class="card-title">
<h3 class="fw-bold m-0">Payment Records</h3>
</div>
<div class="card-toolbar">
<div class="d-flex align-items-center gap-2">
<select id="kt_payments_range_selector" class="form-select form-select-sm form-select-solid w-200px" data-control="select2" data-hide-search="true">
<option value="all">All Time</option>
<option value="1">Last 1 Day</option>
<option value="10">Last 10 Days</option>
<option value="13">Last 13 Days</option>
<option value="30">Last 1 Month</option>
<option value="custom">Custom Range</option>
</select>
<input type="text" id="kt_payments_custom_range" class="form-control form-control-sm form-control-solid w-250px" placeholder="Select custom range" style="display:none;" />
</div>
</div>
</div>
<div class="card-body pt-0">
<div class="table-responsive">
<table class="table align-middle table-row-dashed fs-6 gy-5">
<thead>
<tr class="text-start text-muted fw-bold fs-7 text-uppercase gs-0">
<th class="min-w-125px">ORDER NO</th>
<th class="min-w-125px">AMOUNT</th>
<th class="min-w-100px">STATUS</th>
<th class="min-w-125px">PAYMENT TYPE</th>
<th class="min-w-125px">DATE</th>
</tr>
</thead>
<tbody class="text-gray-600 fw-semibold" id="payments_table_body">
<tr data-date="2025-12-11">
<td>
<span class="text-gray-800 text-hover-primary">VOH121125211303</span>
</td>
<td class="text-success fw-bold">₹ 10000.00</td>
<td>
<span class="badge badge-light-warning">pending</span>
</td>
<td>
<span class="text-danger fw-bold">CASH</span>
</td>
<td>Dec 11, 2025</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</div>
<!-- Add Payment Modal -->
<div class="modal fade" id="kt_modal_add_payment" tabindex="-1" aria-hidden="true">
<div class="modal-dialog modal-dialog-centered mw-650px">
<div class="modal-content">
<div class="modal-header">
<h2 class="fw-bold">Add a Payment Record</h2>
<div class="btn btn-icon btn-sm btn-active-icon-primary" data-bs-dismiss="modal">
<i class="ki-duotone ki-cross fs-1">
<span class="path1"></span>
<span class="path2"></span>
</i>
</div>
</div>
<div class="modal-body scroll-y mx-5 mx-xl-15 my-7">
<form id="addPaymentForm">
<div class="fv-row mb-7">
<label class="required fw-semibold fs-6 mb-2">Select Order/Service</label>
<select name="order_id" class="form-select form-select-solid" data-control="select2" data-placeholder="Select an option" data-dropdown-parent="#kt_modal_add_payment">
<option value="">Select an option</option>
<option value="VOH121125211303">VOH121125211303 - ₹44,000.00</option>
</select>
</div>
<div class="fv-row mb-7">
<label class="required fw-semibold fs-6 mb-2">Status</label>
<select name="status" class="form-select form-select-solid" data-control="select2" data-hide-search="true" data-dropdown-parent="#kt_modal_add_payment">
<option value="Pending" selected>Pending</option>
<option value="Completed">Completed</option>
<option value="Failed">Failed</option>
</select>
</div>
<div class="row mb-7">
<div class="col-6 fv-row">
<label class="required fw-semibold fs-6 mb-2">Total Amount</label>
<input type="number" name="total_amount" class="form-control form-control-solid" placeholder="0.00" step="0.01" />
</div>
<div class="col-6 fv-row">
<label class="required fw-semibold fs-6 mb-2">Balance Amount</label>
<input type="number" name="balance_amount" class="form-control form-control-solid" placeholder="0.00" step="0.01" readonly />
</div>
</div>
<div class="fv-row mb-7">
<label class="required fw-semibold fs-6 mb-2">Received amount</label>
<input type="number" name="received_amount" class="form-control form-control-solid" placeholder="0.00" step="0.01" />
</div>
<div class="fv-row mb-7">
<label class="required fw-semibold fs-6 mb-2">Payment Type</label>
<select name="payment_type"
class="form-select form-select-solid"
data-control="select2"
data-hide-search="true"
data-dropdown-parent="#kt_modal_add_payment">
<option value="Cash" selected>Cash</option>
<option value="Bank Transfer">Bank Transfer</option>
<option value="UPI">UPI</option>
<option value="Card">Card</option>
<option value="Cheque">Cheque</option>
</select>
</div>
<!-- Remarks -->
<div class="fv-row mb-7">
<label class="fw-semibold fs-6 mb-2">Remarks</label>
<textarea name="remarks"
class="form-control form-control-solid"
rows="4"
placeholder="Enter payment remarks..."></textarea>
</div>
<div class="text-center pt-15">
<button type="reset" class="btn btn-light me-3" data-bs-dismiss="modal">Discard</button>
<button type="submit" class="btn btn-primary">
<span class="indicator-label">Submit</span>
<span class="indicator-progress">Please wait...
<span class="spinner-border spinner-border-sm align-middle ms-2"></span></span>
</button>
</div>
</form>
</div>
</div>
</div>
</div>
<div class="tab-pane fade show active" id="kt_tab_info" role="tabpanel">
<!-- Edit Form Card -->
<div class="card mb-5">
<div class="card-header border-0 cursor-pointer">
<div class="card-title m-0">
<h3 class="fw-bold m-0">Contact information</h3>
</div>
</div>
<div id="kt_account_settings_profile_details">
<div class="card-body border-top">
<!-- Alert Box -->
<div id="alertBox"></div>
<!-- Avatar Upload -->
<!--<div class="row mb-6">-->
<!-- <label class="col-lg-4 col-form-label fw-semibold fs-6">Avatar (Optional)</label>-->
<!-- <div class="col-lg-8">-->
<!-- <div class="image-input image-input-outline" data-kt-image-input="true" -->
<!-- style="background-image: url('assets/media/svg/avatars/blank.svg')">-->
<!-- <div class="image-input-wrapper w-125px h-125px" -->
<!-- style="background-image: url(<?php echo !empty($customer['avatar']) ? 'uploads/customers/' . htmlspecialchars($customer['avatar']) : 'assets/media/avatars/blank.png'; ?>)"></div>-->
<!-- <label class="btn btn-icon btn-circle btn-active-color-primary w-25px h-25px bg-body shadow" -->
<!-- data-kt-image-input-action="change" data-bs-toggle="tooltip" title="Change avatar">-->
<!-- <i class="bi bi-pencil-fill fs-7"></i>-->
<!-- <input type="file" name="avatar" accept=".png, .jpg, .jpeg" />-->
<!-- <input type="hidden" name="avatar_remove" />-->
<!-- </label>-->
<!-- <span class="btn btn-icon btn-circle btn-active-color-primary w-25px h-25px bg-body shadow" -->
<!-- data-kt-image-input-action="cancel" data-bs-toggle="tooltip" title="Cancel avatar">-->
<!-- <i class="bi bi-x fs-2"></i>-->
<!-- </span>-->
<!-- <span class="btn btn-icon btn-circle btn-active-color-primary w-25px h-25px bg-body shadow" -->
<!-- data-kt-image-input-action="remove" data-bs-toggle="tooltip" title="Remove avatar">-->
<!-- <i class="bi bi-x fs-2"></i>-->
<!-- </span>-->
<!-- </div>-->
<!-- <div class="form-text">Allowed file types: png, jpg, jpeg.</div>-->
<!-- </div>-->
<!--</div>-->
<!--<div class="separator my-6"></div>-->
<div class="row mb-6">
<label class="col-lg-8 col-form-label fw-semibold fs-6">
<h3 class="fw-bold text-gray-800 mb-6 d-flex align-items-center gap-2">
<i class="ki-duotone ki-user-square fs-2">
<span class="path1"></span>
<span class="path2"></span>
<span class="path3"></span>
</i>
Primary Contact
</h3>
</label>
<div class="col-lg-4 fv-row">
<div class="d-flex gap-2">
<?php if (empty($customer_users)): ?>
<select id="userSelector" class="form-select form-select-lg form-select-solid flex-grow-1" disabled>
<option value="">No users added - Using company details</option>
</select>
<?php else: ?>
<select id="userSelector"
class="form-select form-select-lg form-select-solid flex-grow-1"
data-control="select2"
data-placeholder="Select a user or enter manually">
<option value="">Enter Manually</option>
<?php foreach ($customer_users as $user): ?>
<option value="<?php echo $user['user_id']; ?>"
data-name="<?php echo htmlspecialchars($user['name']); ?>"
data-designation="<?php echo htmlspecialchars($user['designation']); ?>"
data-phone="<?php echo htmlspecialchars($user['phone']); ?>"
data-email="<?php echo htmlspecialchars($user['email']); ?>"
<?php echo $user['is_default'] ? 'selected' : ''; ?>>
<?php echo htmlspecialchars($user['name']) . ' - ' . htmlspecialchars($user['designation']); ?>
</option>
<?php endforeach; ?>
</select>
<?php endif; ?>
<button type="button" class="btn btn-sm btn-primary" title="Go to Users tab" data-bs-toggle="modal" data-bs-target="#kt_modal_add_user">
<i class="ki-duotone ki-user-tick fs-2">
<span class="path1"></span>
<span class="path2"></span>
<span class="path3"></span>
</i>
</button>
</div>
<?php if (empty($customer_users)): ?>
<div class="form-text text-warning">No users found. Current company contact details are shown below.</div>
<?php else: ?>
<div class="form-text">Select a user from the company or enter manually</div>
<?php endif; ?>
</div>
</div>
<input type="hidden" name="default_user_id" id="default_user_id_hidden" value="<?php echo !empty($customer_users) ? ($customer_users[0]['is_default'] ? $customer_users[0]['user_id'] : '') : ''; ?>">
<div class="row mb-6">
<div class="col-lg-6 fv-row">
<label class="form-label required fw-semibold fs-6">User Name</label>
<input type="text" name="contact_person" id="contact_person"
class="form-control form-control-lg form-control-solid"
placeholder="Employee/User name"
value="<?php echo htmlspecialchars($customer['contact_person']); ?>" />
</div>
<div class="col-lg-6 fv-row">
<label class="form-label fw-semibold fs-6">Designation</label>
<input type="text" name="designation" id="designation"
class="form-control form-control-lg form-control-solid"
placeholder="Manager, Director, etc."
value="" />
</div>
</div>
<style>
.iti--separate-dial-code .iti__selected-flag {
background-color: unset !important;
}
</style>
<div class="row mb-6">
<div class="col-lg-6 fv-row">
<label class="form-label required fw-semibold fs-6">Mobile Number</label>
<input type="text" name="phone" id="phone" maxlength="12"
class="form-control form-control-lg form-control-solid"
placeholder="10-digit phone"
value="<?php echo htmlspecialchars($customer['phone']); ?>" />
</div>
<div class="col-lg-6 fv-row">
<label class="form-label fw-semibold fs-6">Email ID</label>
<input type="email" name="email" id="email"
class="form-control form-control-lg form-control-solid"
placeholder="Email address"
value="<?php echo htmlspecialchars($customer['email']); ?>" />
</div>
</div>
<div class="separator my-6"></div>
<!-- Business Information Section -->
<h3 class="fw-bold text-gray-800 mb-6 d-flex align-items-center gap-2 mt-xl-15">
<i class="ki-duotone ki-briefcase fs-2">
<span class="path1"></span>
<span class="path2"></span>
</i>
Business Information
</h3>
<div class="separator my-6"></div>
<div class="row mb-6 mt-xl-10">
<!--<div class="col-lg-6 fv-row">-->
<!-- <label class="form-label fw-semibold fs-6">Client Code</label>-->
<!-- <input type="text" -->
<!-- class="form-control form-control-lg form-control-solid" -->
<!-- value="<?php echo htmlspecialchars($customer['customer_code']); ?>" -->
<!-- readonly disabled />-->
<!--</div>-->
<div class="col-lg-6 fv-row">
<label class="form-label required fw-semibold fs-6">Business Name</label>
<input type="text" name="customer_name"
class="form-control form-control-lg form-control-solid"
placeholder="Business/Company name"
value="<?php echo htmlspecialchars($customer['customer_name']); ?>" />
</div>
<div class="col-lg-6 fv-row mb-6">
<label class="form-label fw-semibold fs-6">Business Email</label>
<input type="text" name="alternate_phone"
class="form-control form-control-lg form-control-solid"
placeholder="business@company.com"
value="<?php echo htmlspecialchars($customer['alternate_phone']); ?>" />
</div>
<input type="hidden" name="full_phone" id="full_phone">
<input type="hidden" name="country_code" id="country_code" value="+91">
<div class="col-lg-6 fv-row mb-6">
<label class="form-label fw-semibold fs-6">Business Phone</label>
<input type="text" name="website"
class="form-control form-control-lg form-control-solid"
placeholder="+91-XXXXXXXXXX"
value="<?php echo htmlspecialchars($customer['website']); ?>" />
</div>
<div class="col-lg-6 fv-row mb-6">
<label class="form-label fw-semibold fs-6">GST Number</label>
<input type="text" name="gst_number" maxlength="15"
class="form-control form-control-lg form-control-solid"
placeholder="22AAAAA0000A1Z5"
value="<?php echo htmlspecialchars($customer['gst_number']); ?>" />
</div>
<div class="col-lg-6 fv-row mb-6">
<label class="form-label fw-semibold fs-6">PAN Number</label>
<input type="text" name="pan_number" maxlength="10"
class="form-control form-control-lg form-control-solid"
placeholder="AAAAA0000A"
value="<?php echo htmlspecialchars($customer['pan_number']); ?>" />
</div>
</div>
<div class="separator my-6"></div>
<!-- Additional Details Section -->
<h3 class="fw-bold text-gray-800 mb-6 d-flex align-items-center gap-2 mt-xl-15">
<i class="ki-duotone ki-information-5 fs-2">
<span class="path1"></span>
<span class="path2"></span>
<span class="path3"></span>
</i>
Additional Details
</h3>
<div class="separator my-6"></div>
<div class="row mb-6">
<div class="col-lg-6 fv-row">
<label class="form-label required fw-semibold fs-6">Business Type</label>
<select name="company_type"
class="form-select form-select-lg form-select-solid"
data-control="select2"
data-placeholder="Select business type"
data-hide-search="true">
<option value="">Select business type</option>
<option value="Individual" <?php echo $customer['company_type'] === 'Individual' ? 'selected' : ''; ?>>Individual</option>
<option value="Company" <?php echo $customer['company_type'] === 'Company' ? 'selected' : ''; ?>>Company</option>
<option value="Startup" <?php echo $customer['company_type'] === 'Startup' ? 'selected' : ''; ?>>Startup</option>
</select>
</div>
<div class="col-lg-6 fv-row">
<label class="form-label fw-semibold fs-6">Industry</label>
<select name="industry"
class="form-select form-select-lg form-select-solid"
data-control="select2"
data-placeholder="Select industry">
<option value="">Select Industry</option>
<option value="IT" <?php echo $customer['industry'] === 'IT' ? 'selected' : ''; ?>>IT / Software</option>
<option value="Manufacturing" <?php echo $customer['industry'] === 'Manufacturing' ? 'selected' : ''; ?>>Manufacturing</option>
<option value="Retail" <?php echo $customer['industry'] === 'Retail' ? 'selected' : ''; ?>>Retail</option>
<option value="Healthcare" <?php echo $customer['industry'] === 'Healthcare' ? 'selected' : ''; ?>>Healthcare</option>
<option value="Education" <?php echo $customer['industry'] === 'Education' ? 'selected' : ''; ?>>Education</option>
<option value="Finance" <?php echo $customer['industry'] === 'Finance' ? 'selected' : ''; ?>>Finance</option>
<option value="Real Estate" <?php echo $customer['industry'] === 'Real Estate' ? 'selected' : ''; ?>>Real Estate</option>
<option value="Other" <?php echo $customer['industry'] === 'Other' ? 'selected' : ''; ?>>Other</option>
</select>
</div>
</div>
<div class="row mb-6">
<div class="col-lg-6 fv-row">
<label class="form-label required fw-semibold fs-6">Payment Terms</label>
<select name="payment_terms"
class="form-select form-select-lg form-select-solid"
data-control="select2"
data-placeholder="Select payment terms"
data-hide-search="true">
<option value="Advance" <?php echo $customer['payment_terms'] === 'Advance' ? 'selected' : ''; ?>>Advance</option>
<option value="COD" <?php echo $customer['payment_terms'] === 'COD' ? 'selected' : ''; ?>>COD</option>
<option value="Net 15" <?php echo $customer['payment_terms'] === 'Net 15' ? 'selected' : ''; ?>>Net 15</option>
<option value="Net 30" <?php echo $customer['payment_terms'] === 'Net 30' ? 'selected' : ''; ?>>Net 30</option>
<option value="Net 60" <?php echo $customer['payment_terms'] === 'Net 60' ? 'selected' : ''; ?>>Net 60</option>
</select>
</div>
<div class="col-lg-6 fv-row">
<label class="form-label required fw-semibold fs-6">Country</label>
<input type="text" name="country" id="country"
class="form-control form-control-lg form-control-solid"
value="<?php echo htmlspecialchars($customer['country']); ?>" readonly />
</div>
</div>
<div class="row fv-row">
<div class="col-lg-6 fv-row">
<label class="form-label required">Enroll Year</label>
<input type="text" name="year" id="year" placeholder="YYYY" maxlength="4"
class="form-control form-control-lg form-control-solid"
value="<?php echo htmlspecialchars($customer['year']); ?>" />
</div>
</div>
<!-- Billing Addresses Section -->
<div class="d-flex justify-content-between align-items-center mb-6 mt-xl-15">
<h3 class="fw-bold text-gray-800 m-0 d-flex align-items-center gap-2">
<i class="ki-duotone ki-map fs-2">
<span class="path1"></span>
<span class="path2"></span>
</i>
Billing Addresses
</h3>
<button type="button" class="btn btn-primary" data-bs-toggle="modal" data-bs-target="#kt_modal_new_address">
<i class="ki-duotone ki-plus fs-2"></i>
Add Address
</button>
</div>
<div class="separator my-6"></div>
<div class="row gx-9 gy-6 mt-xl-10" id="billingAddressesList">
<?php if (empty($billing_addresses)): ?>
<div class="col-12">
<div class="alert alert-info">No billing addresses added yet. Click "Add Address" to create one.</div>
</div>
<?php else: ?>
<?php foreach ($billing_addresses as $address): ?>
<div class="col-xl-6" data-address-id="<?php echo $address['address_id']; ?>">
<div class="card card-dashed h-100 flex-row flex-stack flex-wrap p-6">
<div class="d-flex flex-column py-2">
<div class="d-flex align-items-center fs-5 fw-bold mb-3">
<?php echo htmlspecialchars($address['address_label'] ?? 'Address'); ?>
<?php if ($address['is_active']): ?>
<span class="badge badge-light-success fs-7 ms-2">Active</span>
<?php endif; ?>
</div>
<div class="fs-6 fw-semibold text-gray-600">
<?php echo htmlspecialchars($address['address_line1']); ?>
<?php if (!empty($address['address_line2'])): ?>
<br><?php echo htmlspecialchars($address['address_line2']); ?>
<?php endif; ?>
<br><?php echo htmlspecialchars($address['city']); ?>, <?php echo htmlspecialchars($address['state']); ?> - <?php echo htmlspecialchars($address['pincode']); ?>
<br><?php echo htmlspecialchars($address['country']); ?>
</div>
</div>
<div class="d-flex align-items-center py-2">
<button type="button" class="btn btn-sm btn-light btn-active-light-primary me-3" onclick="deleteAddress(<?php echo $address['address_id']; ?>)">Delete</button>
<button type="button" class="btn btn-sm btn-light btn-active-light-primary" onclick="editAddress(<?php echo $address['address_id']; ?>)">Edit</button>
</div>
</div>
</div>
<?php endforeach; ?>
<?php endif; ?>
</div>
</div>
<!-- Actions -->
<div class="card-footer d-flex justify-content-end py-6 px-9">
<a href="admin/customers.php" class="btn btn-light btn-active-light-primary me-2">Cancel</a>
<button type="submit" class="btn btn-primary" id="updateBtn">
<span class="indicator-label">Save Changes</span>
<span class="indicator-progress">
Please wait...
<span class="spinner-border spinner-border-sm align-middle ms-2"></span>
</span>
</button>
</div>
</form>
</div>
</div>
</div>
<!-- OVERVIEW TAB -->
<!-- OVERVIEW TAB -->
<div class="tab-pane fade" id="kt_tab_overview" role="tabpanel">
<?php
// Get default user or use company details
$default_user = null;
foreach ($customer_users as $user) {
if ($user['is_default']) {
$default_user = $user;
break;
}
}
// If no users exist, show company profile instead
$show_company_profile = empty($customer_users);
?>
<!-- Default User Profile -->
<?php if ($show_company_profile): ?>
<div class="card mb-5 mb-xl-10">
<div class="card-header cursor-pointer">
<div class="card-title m-0">
<h3 class="fw-bold m-0">Company Profile</h3>
</div>
<div class="card-toolbar">
<span class="badge badge-light-warning">No users added</span>
</div>
</div>
<div class="card-body p-9">
<div class="row mb-7">
<label class="col-lg-4 fw-semibold text-muted">Full Name</label>
<div class="col-lg-8">
<span class="fw-bold fs-6 text-gray-800"><?php echo htmlspecialchars($customer['contact_person']); ?></span>
</div>
</div>
<div class="row mb-7">
<label class="col-lg-4 fw-semibold text-muted">Company</label>
<div class="col-lg-8">
<span class="fw-bold fs-6 text-gray-800"><?php echo htmlspecialchars($customer['customer_name']); ?></span>
</div>
</div>
<div class="row mb-7">
<label class="col-lg-4 fw-semibold text-muted">Contact Phone
<i class="fas fa-exclamation-circle ms-1 fs-7" data-bs-toggle="tooltip" title="Phone number must be active"></i></label>
<div class="col-lg-8">
<span class="fw-bold fs-6 text-gray-800"><?php echo htmlspecialchars($customer['phone']); ?></span>
</div>
</div>
<div class="row mb-7">
<label class="col-lg-4 fw-semibold text-muted">Country</label>
<div class="col-lg-8">
<span class="fw-bold fs-6 text-gray-800"><?php echo htmlspecialchars($customer['country']); ?></span>
</div>
</div>
<div class="row mb-7">
<label class="col-lg-4 fw-semibold text-muted">Email</label>
<div class="col-lg-8">
<a href="mailto:<?php echo htmlspecialchars($customer['email']); ?>" class="fw-semibold fs-6 text-gray-800 text-hover-primary"><?php echo htmlspecialchars($customer['email']); ?></a>
</div>
</div>
<div class="row mb-7">
<label class="col-lg-4 fw-semibold text-muted">Communication</label>
<div class="col-lg-8">
<span class="fw-bold fs-6 text-gray-800">Email, Phone</span>
</div>
</div>
<div class="row mb-10">
<label class="col-lg-4 fw-semibold text-muted">Allow Changes</label>
<div class="col-lg-8">
<span class="fw-semibold fs-6 text-gray-800">Yes</span>
</div>
</div>
<div class="alert alert-info d-flex align-items-center p-5">
<i class="ki-duotone ki-information-5 fs-2hx text-info me-4">
<span class="path1"></span>
<span class="path2"></span>
<span class="path3"></span>
</i>
<div class="d-flex flex-column">
<span>Add users to manage multiple contacts for this client</span>
</div>
</div>
</div>
</div>
<?php elseif ($default_user): ?>
<div class="card mb-5 mb-xl-10">
<div class="card-header cursor-pointer">
<div class="card-title m-0">
<h3 class="fw-bold m-0">Primary Contact</h3>
</div>
</div>
<div class="card-body p-9">
<div class="row mb-7">
<label class="col-lg-4 fw-semibold text-muted">Full Name</label>
<div class="col-lg-8">
<span class="fw-bold fs-6 text-gray-800"><?php echo htmlspecialchars($default_user['name']); ?></span>
</div>
</div>
<div class="row mb-7">
<label class="col-lg-4 fw-semibold text-muted">Designation</label>
<div class="col-lg-8 fv-row">
<span class="fw-semibold text-gray-800 fs-6"><?php echo htmlspecialchars($default_user['designation']); ?></span>
</div>
</div>
<div class="row mb-7">
<label class="col-lg-4 fw-semibold text-muted">Contact Phone</label>
<div class="col-lg-8 d-flex align-items-center">
<span class="fw-bold fs-6 text-gray-800 me-2"><?php echo htmlspecialchars($default_user['phone']); ?></span>
</div>
</div>
<div class="row mb-7">
<label class="col-lg-4 fw-semibold text-muted">Email</label>
<div class="col-lg-8">
<a href="mailto:<?php echo htmlspecialchars($default_user['email']); ?>" class="fw-semibold fs-6 text-gray-800 text-hover-primary"><?php echo htmlspecialchars($default_user['email']); ?></a>
</div>
</div>
</div>
</div>
<?php endif; ?>
<div class="row gy-5 g-xl-10">
<!--begin::Col-->
<div class="col-xl-12 mb-xl-10">
<!--begin::Chart widget 5-->
<div class="card card-flush h-lg-100">
<!--begin::Header-->
<div class="card-header flex-nowrap pt-5">
<!--begin::Title-->
<h3 class="card-title align-items-start flex-column">
<span class="card-label fw-bold text-dark">Top Selling Categories</span>
<span class="text-gray-400 pt-2 fw-semibold fs-6">8k social visitors</span>
</h3>
<!--end::Title-->
<!--begin::Toolbar-->
<div class="card-toolbar">
<!--begin::Menu-->
<button class="btn btn-icon btn-color-gray-400 btn-active-color-primary justify-content-end" data-kt-menu-trigger="click" data-kt-menu-placement="bottom-end" data-kt-menu-overflow="true">
<!--begin::Svg Icon | path: icons/duotune/general/gen023.svg-->
<span class="svg-icon svg-icon-1 svg-icon-gray-300 me-n1">
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect opacity="0.3" x="2" y="2" width="20" height="20" rx="4" fill="currentColor" />
<rect x="11" y="11" width="2.6" height="2.6" rx="1.3" fill="currentColor" />
<rect x="15" y="11" width="2.6" height="2.6" rx="1.3" fill="currentColor" />
<rect x="7" y="11" width="2.6" height="2.6" rx="1.3" fill="currentColor" />
</svg>
</span>
<!--end::Svg Icon-->
</button>
<!--begin::Menu 2-->
<div class="menu menu-sub menu-sub-dropdown menu-column menu-rounded menu-gray-800 menu-state-bg-light-primary fw-semibold w-200px" data-kt-menu="true">
<!--begin::Menu item-->
<div class="menu-item px-3">
<div class="menu-content fs-6 text-dark fw-bold px-3 py-4">Quick Actions</div>
</div>
<!--end::Menu item-->
<!--begin::Menu separator-->
<div class="separator mb-3 opacity-75"></div>
<!--end::Menu separator-->
<!--begin::Menu item-->
<div class="menu-item px-3">
<a class="menu-link px-3">New Ticket</a>
</div>
<!--end::Menu item-->
<!--begin::Menu item-->
<div class="menu-item px-3">
<a class="menu-link px-3">New Customer</a>
</div>
<!--end::Menu item-->
<!--begin::Menu item-->
<div class="menu-item px-3" data-kt-menu-trigger="hover" data-kt-menu-placement="right-start">
<!--begin::Menu item-->
<a class="menu-link px-3">
<span class="menu-title">New Group</span>
<span class="menu-arrow"></span>
</a>
<!--end::Menu item-->
<!--begin::Menu sub-->
<div class="menu-sub menu-sub-dropdown w-175px py-4">
<!--begin::Menu item-->
<div class="menu-item px-3">
<a class="menu-link px-3">Admin Group</a>
</div>
<!--end::Menu item-->
<!--begin::Menu item-->
<div class="menu-item px-3">
<a class="menu-link px-3">Staff Group</a>
</div>
<!--end::Menu item-->
<!--begin::Menu item-->
<div class="menu-item px-3">
<a class="menu-link px-3">Member Group</a>
</div>
<!--end::Menu item-->
</div>
<!--end::Menu sub-->
</div>
<!--end::Menu item-->
<!--begin::Menu item-->
<div class="menu-item px-3">
<a class="menu-link px-3">New Contact</a>
</div>
<!--end::Menu item-->
<!--begin::Menu separator-->
<div class="separator mt-3 opacity-75"></div>
<!--end::Menu separator-->
<!--begin::Menu item-->
<div class="menu-item px-3">
<div class="menu-content px-3 py-3">
<a class="btn btn-primary btn-sm px-4" href="#">Generate Reports</a>
</div>
</div>
<!--end::Menu item-->
</div>
<!--end::Menu 2-->
<!--end::Menu-->
</div>
<!--end::Toolbar-->
</div>
<!--end::Header-->
<!--begin::Body-->
<div class="card-body pt-5 ps-6">
<div id="kt_charts_widget_5" class="min-h-auto"></div>
</div>
<!--end::Body-->
</div>
<!--end::Chart widget 5-->
</div>
<!--end::Col-->
<!--begin::Col-->
<!--end::Col-->
</div>
</div>
<!-- BILLING TAB (Unchanged) -->
<!-- BILLING TAB -->
<div class="tab-pane fade" id="kt_tab_billing" role="tabpanel">
<div class="card">
<!--begin::Card header-->
<!--begin::Card header-->
<div class="card-header border-0 pt-6 d-flex justify-content-between align-items-center">
<div class="card-title">
<h3 class="fw-bold m-0">Billing History</h3>
</div>
<div class="card-toolbar">
<div class="d-flex align-items-center gap-3">
<select id="kt_billing_range_selector"
class="form-select form-select-sm form-select-solid w-200px"
data-control="select2"
data-hide-search="true">
<option value="all">All Time</option>
<option value="1">Last 1 Day</option>
<option value="10">Last 10 Days</option>
<option value="13">Last 13 Days</option>
<option value="30">Last 1 Month</option>
<option value="custom">Custom Range</option>
</select>
<input type="text"
id="kt_billing_custom_range"
class="form-control form-control-sm form-control-solid w-250px"
placeholder="Select custom range"
style="display:none;" />
</div>
</div>
</div>
<!--end::Card header-->
<!--end::Card header-->
<!--begin::Card body-->
<div class="card-body p-0">
<!--begin::Table container-->
<div class="table-responsive">
<!--begin::Table-->
<table class="table table-row-bordered align-middle gy-4 gs-9">
<thead class="border-bottom border-gray-200 fs-6 text-gray-600 fw-bold bg-light bg-opacity-75">
<tr>
<td class="min-w-150px">Date</td>
<td class="min-w-250px">Description</td>
<td class="min-w-150px">Type</td>
<td class="min-w-150px">Amount</td>
<td class="min-w-150px">Invoice</td>
<td></td>
</tr>
</thead>
<tbody class="fw-semibold text-gray-600" id="billing_table_body">
<tr>
<td>Nov 01, 2020</td>
<td>Invoice for October 2022</td>
<td><span class="badge badge-light-success">With GST</span></td>
<td>$123.79</td>
<td><a class="btn btn-sm btn-light btn-active-light-primary">PDF</a></td>
<td class="text-end"><a class="btn btn-sm btn-light btn-active-light-primary">View</a></td>
</tr>
<tr>
<td>Oct 08, 2020</td>
<td>Invoice for September 2022</td>
<td><span class="badge badge-light-danger">Without GST</span></td>
<td>$98.03</td>
<td><a class="btn btn-sm btn-light btn-active-light-primary">PDF</a></td>
<td class="text-end"><a class="btn btn-sm btn-light btn-active-light-primary">View</a></td>
</tr>
<tr>
<td>Aug 24, 2020</td>
<td>Paypal</td>
<td><span class="badge badge-light-success">With GST</span></td>
<td>$35.07</td>
<td><a class="btn btn-sm btn-light btn-active-light-primary">PDF</a></td>
<td class="text-end"><a class="btn btn-sm btn-light btn-active-light-primary">View</a></td>
</tr>
<tr>
<td>Aug 01, 2020</td>
<td>Invoice for July 2022</td>
<td><span class="badge badge-light-danger">Without GST</span></td>
<td>$142.80</td>
<td><a class="btn btn-sm btn-light btn-active-light-primary">PDF</a></td>
<td class="text-end"><a class="btn btn-sm btn-light btn-active-light-primary">View</a></td>
</tr>
<tr>
<td>Jul 01, 2020</td>
<td>Invoice for June 2022</td>
<td><span class="badge badge-light-success">With GST</span></td>
<td>$123.79</td>
<td><a class="btn btn-sm btn-light btn-active-light-primary">PDF</a></td>
<td class="text-end"><a class="btn btn-sm btn-light btn-active-light-primary">View</a></td>
</tr>
<tr>
<td>Jun 17, 2020</td>
<td>Paypal</td>
<td><span class="badge badge-light-danger">Without GST</span></td>
<td>$523.09</td>
<td><a class="btn btn-sm btn-light btn-active-light-primary">PDF</a></td>
<td class="text-end"><a class="btn btn-sm btn-light btn-active-light-primary">View</a></td>
</tr>
<tr>
<td>Jun 01, 2020</td>
<td>Invoice for May 2022</td>
<td><span class="badge badge-light-success">With GST</span></td>
<td>$123.79</td>
<td><a class="btn btn-sm btn-light btn-active-light-primary">PDF</a></td>
<td class="text-end"><a class="btn btn-sm btn-light btn-active-light-primary">View</a></td>
</tr>
</tbody>
</table>
<!--end::Table-->
</div>
<!--end::Table container-->
</div>
<!--end::Card body-->
</div>
</div>
<!-- USERS TAB -->
<div class="tab-pane fade" id="kt_tab_users" role="tabpanel">
<div class="card">
<!-- Toolbar -->
<!-- Toolbar -->
<div class="card-header border-0 pt-6">
<div class="card-title">
<!-- Search -->
<div class="d-flex align-items-center position-relative my-1">
<i class="ki-duotone ki-magnifier fs-3 position-absolute ms-5">
<span class="path1"></span>
<span class="path2"></span>
</i>
<input type="text" id="kt_filter_search" class="form-control form-control-solid w-250px ps-13 bg-gray-100" placeholder="Search users" />
</div>
</div>
<div class="card-toolbar">
<!-- View Toggle -->
<div class="d-flex justify-content-end align-items-center">
<ul class="nav nav-pills me-6 mb-2 mb-sm-0">
<li class="nav-item m-0">
<a class="btn btn-sm btn-icon btn-light btn-color-muted btn-active-primary me-3" data-bs-toggle="tab" href="#kt_users_card_view">
<span class="svg-icon svg-icon-2">
<svg xmlns="http://www.w3.org/2000/svg" width="24px" height="24px" viewBox="0 0 24 24">
<g stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<rect x="5" y="5" width="5" height="5" rx="1" fill="currentColor" />
<rect x="14" y="5" width="5" height="5" rx="1" fill="currentColor" opacity="0.3" />
<rect x="5" y="14" width="5" height="5" rx="1" fill="currentColor" opacity="0.3" />
<rect x="14" y="14" width="5" height="5" rx="1" fill="currentColor" opacity="0.3" />
</g>
</svg>
</span>
</a>
</li>
<li class="nav-item m-0">
<a class="btn btn-sm btn-icon btn-light btn-color-muted btn-active-primary active" data-bs-toggle="tab" href="#kt_users_table_view">
<span class="svg-icon svg-icon-2">
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M21 7H3C2.4 7 2 6.6 2 6V4C2 3.4 2.4 3 3 3H21C21.6 3 22 3.4 22 4V6C22 6.6 21.6 7 21 7Z" fill="currentColor" />
<path opacity="0.3" d="M21 14H3C2.4 14 2 13.6 2 13V11C2 10.4 2.4 10 3 10H21C21.6 10 22 10.4 22 11V13C22 13.6 21.6 14 21 14ZM22 20V18C22 17.4 21.6 17 21 17H3C2.4 17 2 17.4 2 18V20C2 20.6 2.4 21 3 21H21C21.6 21 22 20.6 22 20Z" fill="currentColor" />
</svg>
</span>
</a>
</li>
</ul>
<?php if (empty($customer_users)): ?>
<?php else: ?>
<!-- Content when $customer_users is NOT empty -->
<button type="button" class="btn btn-sm btn-primary text-nowrap"
data-bs-toggle="modal" data-bs-target="#kt_modal_add_user">
<i class="ki-duotone ki-plus fs-2"></i>
Add User
</button>
<?php endif; ?>
</div>
</div>
</div>
<!-- Tab Content -->
<div class="card-body pt-0">
<div class="tab-content">
<!-- Grid View -->
<!-- Grid View -->
<div id="kt_users_card_view" class="tab-pane fade" role="tabpanel">
<?php if (empty($customer_users)): ?>
<tr>
<td colspan="8" class="text-center py-10">
<div class="card-px text-center py-10 my-10">
<h2 class="fs-2x fw-bold mb-10">Welcome to the Contacts App</h2>
<p class="text-gray-500 fs-4 fw-semibold mb-10">
It's time to expand our contacts.<br>
Kickstart your contacts growth by adding a your next contact.
</p>
<button type="button" class="btn btn-primary"
data-bs-toggle="modal" data-bs-target="#kt_modal_add_user">Add New Customer</button>
</div>
<div class="text-center px-4">
<img class="mw-100 mh-300px" alt="" src="admin/images/5.png">
</div>
</td>
</tr>
<?php else: ?>
<div class="row g-6 g-xl-9">
<?php foreach ($customer_users as $user): ?>
<div class="col-md-6 col-xl-6">
<div class="card h-100">
<div class="card-body d-flex flex-column align-items-center pt-9">
<!-- Avatar -->
<div class="symbol symbol-65px symbol-circle mb-5">
<span class="symbol-label bg-light-primary text-primary fs-2x fw-bold">
<?php echo strtoupper(substr($user['name'], 0, 1)); ?>
</span>
</div>
<!-- Name -->
<div class="fs-4 fw-bold text-gray-800 text-center mb-2">
<?php echo htmlspecialchars($user['name']); ?>
</div>
<!-- Default Badge -->
<?php if ($user['is_default']): ?>
<span class="badge badge-light-success fs-7 mb-3">Primary contact</span>
<?php endif; ?>
<!-- Designation -->
<div class="fw-semibold text-gray-400 text-center mb-6">
<?php echo htmlspecialchars($user['designation']); ?>
</div>
<!-- Phone & Email - Side by Side -->
<div class="d-flex gap-3 w-100 mb-6">
<!-- Phone -->
<div class="flex-fill">
<div class="border border-gray-300 border-dashed rounded py-3 px-4">
<div class="text-center">
<div class="fw-bold text-gray-800 fs-6 mb-1">
<?php echo htmlspecialchars($user['phone']); ?>
</div>
<div class="text-gray-400 fw-semibold fs-7">Phone</div>
</div>
</div>
</div>
<!-- Email -->
<div class="flex-fill">
<div class="border border-gray-300 border-dashed rounded py-3 px-4">
<div class="text-center">
<div class="fw-bold text-gray-800 fs-6 mb-1 text-truncate">
<?php echo htmlspecialchars($user['email']); ?>
</div>
<div class="text-gray-400 fw-semibold fs-7">Email</div>
</div>
</div>
</div>
</div>
<!-- Action Buttons -->
<!-- Action Buttons -->
<div class="d-flex flex-center flex-wrap gap-2 w-100">
<?php if (!$user['is_default']): ?>
<button class="btn btn-sm btn-light btn-set-default-user" data-user-id="<?php echo $user['user_id']; ?>">
Set Default
</button>
<?php endif; ?>
<button class="btn btn-sm btn-light-primary btn-edit-user" data-user-id="<?php echo $user['user_id']; ?>">
Edit
</button>
<button class="btn btn-sm btn-light-danger btn-delete-user" data-user-id="<?php echo $user['user_id']; ?>">
Delete
</button>
</div>
</div>
</div>
</div>
<?php endforeach; ?>
</div>
<?php endif; ?>
</div>
<!-- Table View -->
<div id="kt_users_table_view" class="tab-pane fade show active" role="tabpanel">
<div class="table-responsive">
<table class="table table-row-dashed table-row-gray-300 align-middle gs-0 gy-4">
<thead>
<tr class="fw-bold text-muted">
<th class="min-w-200px">Name</th>
<th class="min-w-150px">Designation</th>
<th class="min-w-150px">Phone</th>
<th class="min-w-200px">Email</th>
<th class="min-w-100px">Default</th>
<th class="min-w-100px text-end">Actions</th>
</tr>
</thead>
<tbody id="usersTableBody">
<?php if (empty($customer_users)): ?>
<tr>
<td colspan="8" class="text-center py-10">
<div class="card-px text-center py-10 my-10">
<h2 class="fs-2x fw-bold mb-10">Welcome to the Contacts App</h2>
<p class="text-gray-500 fs-4 fw-semibold mb-10">
It's time to expand our contacts.<br>
Kickstart your contacts growth by adding a your next contact.
</p>
<button type="button" class="btn btn-primary"
data-bs-toggle="modal" data-bs-target="#kt_modal_add_user">Add New Customer</button>
</div>
<div class="text-center px-4">
<img class="mw-100 mh-300px" alt="" src="admin/images/5.png">
</div>
</td>
</tr>
<?php else: ?>
<?php foreach ($customer_users as $user): ?>
<tr data-user-id="<?php echo $user['user_id']; ?>">
<td>
<div class="d-flex align-items-center">
<div class="symbol symbol-45px me-5">
<span class="symbol-label bg-light-primary text-primary fw-bold">
<?php echo strtoupper(substr($user['name'], 0, 1)); ?>
</span>
</div>
<div class="d-flex justify-content-start flex-column">
<span class="text-dark fw-bold text-hover-primary fs-6">
<?php echo htmlspecialchars($user['name']); ?>
</span>
</div>
</div>
</td>
<td>
<span class="text-gray-800 fw-bold"><?php echo htmlspecialchars($user['designation']); ?></span>
</td>
<td>
<span class="text-gray-800"><?php echo htmlspecialchars($user['phone']); ?></span>
</td>
<td>
<a href="mailto:<?php echo htmlspecialchars($user['email']); ?>" class="text-gray-800 text-hover-primary">
<?php echo htmlspecialchars($user['email']); ?>
</a>
</td>
<td>
<?php if ($user['is_default']): ?>
<span class="badge badge-light-success">Yes</span>
<?php else: ?>
<button class="btn btn-sm btn-light btn-set-default-user" data-user-id="<?php echo $user['user_id']; ?>">
Set Default
</button>
<?php endif; ?>
</td>
<td class="text-end">
<button class="btn btn-icon btn-bg-light btn-active-color-primary btn-sm me-1 btn-edit-user"
data-user-id="<?php echo $user['user_id']; ?>">
<i class="ki-duotone ki-pencil fs-2">
<span class="path1"></span>
<span class="path2"></span>
</i>
</button>
<button class="btn btn-icon btn-bg-light btn-active-color-danger btn-sm btn-delete-user"
data-user-id="<?php echo $user['user_id']; ?>">
<i class="ki-duotone ki-trash fs-2">
<span class="path1"></span>
<span class="path2"></span>
<span class="path3"></span>
<span class="path4"></span>
<span class="path5"></span>
</i>
</button>
</td>
</tr>
<?php endforeach; ?>
<?php endif; ?>
</tbody>
</table>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<?php include 'includes/footer.php'; ?>
</div>
</div>
</div>
</div>
<!-- Add User Modal -->
<div class="modal fade" id="kt_modal_add_user" tabindex="-1" aria-hidden="true">
<div class="modal-dialog modal-dialog-centered mw-650px">
<div class="modal-content">
<div class="modal-header">
<h2 class="fw-bold">Add User</h2>
<div class="btn btn-icon btn-sm btn-active-icon-primary" data-bs-dismiss="modal">
<i class="ki-duotone ki-cross fs-1">
<span class="path1"></span>
<span class="path2"></span>
</i>
</div>
</div>
<div class="modal-body mx-5 mx-xl-15 my-7">
<form id="addUserForm">
<input type="hidden" name="action" value="add_user">
<input type="hidden" name="customer_id" value="<?php echo $customer_id; ?>">
<input type="hidden" name="user_id" id="edit_user_id">
<div class="fv-row mb-7">
<label class="required fw-semibold fs-6 mb-2">Name</label>
<input type="text" name="name" class="form-control form-control-solid mb-3 mb-lg-0" placeholder="Full name" required />
</div>
<div class="fv-row mb-7">
<label class="required fw-semibold fs-6 mb-2">Designation</label>
<select name="designation"
class="form-select form-select-solid"
data-control="select2"
data-placeholder="Select designation"
data-hide-search="true"
data-dropdown-parent="#kt_modal_add_user"
required>
<option value="">Select designation</option>
<option value="Manager">Manager</option>
<option value="Director">Director</option>
<option value="CEO">CEO</option>
</select>
</div>
<div class="fv-row mb-7">
<label class="required fw-semibold fs-6 mb-2">Phone</label>
<input type="text" name="phone" maxlength="10" class="form-control form-control-solid mb-3 mb-lg-0" placeholder="10-digit phone" required />
</div>
<div class="fv-row mb-7">
<label class="fw-semibold fs-6 mb-2">Email</label>
<input type="email" name="email" class="form-control form-control-solid mb-3 mb-lg-0" placeholder="user@company.com" />
</div>
<div class="fv-row mb-7">
<label class="form-check form-check-custom form-check-solid">
<input class="form-check-input" type="checkbox" name="is_default" value="1" />
<span class="form-check-label fw-semibold text-gray-700 fs-6">Set as default user</span>
</label>
</div>
<div class="text-center pt-15">
<button type="reset" class="btn btn-light me-3" data-bs-dismiss="modal">Cancel</button>
<button type="submit" class="btn btn-primary">
<span class="indicator-label">Submit</span>
<span class="indicator-progress">Please wait...
<span class="spinner-border spinner-border-sm align-middle ms-2"></span></span>
</button>
</div>
</form>
</div>
</div>
</div>
</div>
<!-- Add Address Modal -->
<div class="modal fade" id="kt_modal_new_address" tabindex="-1" aria-hidden="true">
<div class="modal-dialog modal-dialog-centered mw-650px">
<div class="modal-content">
<div class="modal-header">
<h2 class="fw-bold">Add Billing Address</h2>
<div class="btn btn-icon btn-sm btn-active-icon-primary" data-bs-dismiss="modal">
<i class="ki-duotone ki-cross fs-1">
<span class="path1"></span>
<span class="path2"></span>
</i>
</div>
</div>
<div class="modal-body mx-5 mx-xl-15 my-7">
<form id="addAddressForm">
<input type="hidden" name="action" value="add_address">
<input type="hidden" name="customer_id" value="<?php echo $customer_id; ?>">
<input type="hidden" name="address_id" id="edit_address_id">
<div class="fv-row mb-7">
<label class="required fw-semibold fs-6 mb-2">Address Label</label>
<input type="text" name="address_label" class="form-control form-control-solid" placeholder="e.g., Main Office, Warehouse" required />
</div>
<div class="fv-row mb-7">
<label class="required fw-semibold fs-6 mb-2">Pincode</label>
<input type="text" name="pincode" id="modal_pincode" maxlength="6" class="form-control form-control-solid" placeholder="6-digit pincode" required />
</div>
<div class="row mb-7">
<div class="col-6 fv-row">
<label class="required fw-semibold fs-6 mb-2">City</label>
<input type="text" name="city" id="modal_city" class="form-control form-control-solid" readonly required />
</div>
<div class="col-6 fv-row">
<label class="required fw-semibold fs-6 mb-2">State</label>
<input type="text" name="state" id="modal_state" class="form-control form-control-solid" readonly required />
</div>
</div>
<div class="fv-row mb-7">
<label class="required fw-semibold fs-6 mb-2">Address Line 1</label>
<input type="text" name="address_line1" class="form-control form-control-solid" placeholder="Building, Street" required />
</div>
<div class="fv-row mb-7">
<label class="fw-semibold fs-6 mb-2">Address Line 2</label>
<input type="text" name="address_line2" class="form-control form-control-solid" placeholder="Landmark (Optional)" />
</div>
<div class="fv-row mb-7">
<label class="required fw-semibold fs-6 mb-2">Country</label>
<input type="text" name="country" id="modal_country" class="form-control form-control-solid" value="India" readonly required />
</div>
<div class="fv-row mb-7">
<label class="form-check form-check-custom form-check-solid">
<input class="form-check-input" type="checkbox" name="is_active" value="1" checked />
<span class="form-check-label fw-semibold text-gray-700 fs-6">Set as active address</span>
</label>
</div>
<div class="fv-row mb-7">
<label class="form-check form-check-custom form-check-solid">
<input class="form-check-input" type="checkbox" name="same_as_shipping" value="1" />
<span class="form-check-label fw-semibold text-gray-700 fs-6">Same as shipping address</span>
</label>
</div>
<div class="text-center pt-15">
<button type="reset" class="btn btn-light me-3" data-bs-dismiss="modal">Cancel</button>
<button type="submit" class="btn btn-primary">
<span class="indicator-label">Submit</span>
<span class="indicator-progress">Please wait...
<span class="spinner-border spinner-border-sm align-middle ms-2"></span></span>
</button>
</div>
</form>
</div>
</div>
</div>
</div>
<!-- Scripts -->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<script src="assets/plugins/global/plugins.bundle.js"></script>
<script src="assets/js/scripts.bundle.js"></script>
<script src="admin/js/edit-customer.js?v=<?php echo time(); ?>"></script>
<script>var hostUrl = "assets/";</script>
<!--begin::Global Javascript Bundle(mandatory for all pages)-->
<script src="assets/plugins/global/plugins.bundle.js"></script>
<script src="assets/js/scripts.bundle.js"></script>
<!--end::Global Javascript Bundle-->
<!--begin::Vendors Javascript(used for this page only)-->
<script src="assets/plugins/custom/datatables/datatables.bundle.js"></script>
<!--end::Vendors Javascript-->
<!--begin::Custom Javascript(used for this page only)-->
<script src="assets/js/custom/pages/user-profile/general.js"></script>
<script src="assets/js/widgets.bundle.js"></script>
<script src="assets/js/custom/widgets.js"></script>
<script src="assets/js/custom/apps/chat/chat.js"></script>
<script src="assets/js/custom/utilities/modals/upgrade-plan.js"></script>
<script src="assets/js/custom/utilities/modals/create-app.js"></script>
<script src="assets/js/custom/utilities/modals/offer-a-deal/type.js"></script>
<script src="assets/js/custom/utilities/modals/offer-a-deal/details.js"></script>
<script src="assets/js/custom/utilities/modals/offer-a-deal/finance.js"></script>
<script src="assets/js/custom/utilities/modals/offer-a-deal/complete.js"></script>
<script src="assets/js/custom/utilities/modals/offer-a-deal/main.js"></script>
<script src="assets/js/custom/utilities/modals/users-search.js"></script>
<script>
$(document).ready(function() {
// Update hidden field when user selector changes
$('#userSelector').on('change', function() {
var selectedUserId = $(this).val();
$('#default_user_id_hidden').val(selectedUserId);
});
// Set initial value on page load
var initialUserId = $('#userSelector').val();
$('#default_user_id_hidden').val(initialUserId);
});
</script>
<script>
$(document).ready(function() {
// Navigate to Users tab when button is clicked
$('#btnGoToUsersTab').on('click', function() {
// Trigger the Users tab
$('a[href="#kt_tab_users"]').tab('show');
// Smooth scroll to top
$('html, body').animate({
scrollTop: 0
}, 500);
});
});
</script>
<?php include 'includes/chat_widget.php'; ?>
</body>
</html>