<?php 
session_start(); 

// ১. লগইন চেক: যদি লগইন করা না থাকে, তবে login.php তে পাঠিয়ে দেবে
if (!isset($_SESSION['loggedin']) || $_SESSION['loggedin'] !== true) {
    header("Location: login.php");
    exit;
}

// ২. রোল চেক: designation যদি 'Super Admin' না হয়, তবে তাকে এক্সেস করতে দেবে না
$user_role = $_SESSION['role'] ?? 'Stuff';
if ($user_role !== 'Super Admin') {
    header("Location: index.php");
    exit;
}

include 'config.php';
date_default_timezone_set('Asia/Dhaka'); 

$message = "";
$status = "";

// --- স্টাফ অ্যাকাউন্ট তৈরির লজিক ---
if (isset($_POST['add_staff'])) {
    $name        = mysqli_real_escape_string($conn, $_POST['name']);
    $username    = mysqli_real_escape_string($conn, $_POST['username']);
    $password    = mysqli_real_escape_string($conn, $_POST['password']);
    $designation = mysqli_real_escape_string($conn, $_POST['designation']);

    $check_user = mysqli_query($conn, "SELECT id FROM admin WHERE username = '$username'");
    
    if (mysqli_num_rows($check_user) > 0) {
        $message = "দুঃখিত! এই ইউজারনেমটি ইতিমধ্যে ব্যবহার করা হয়েছে।";
        $status = "error";
    } else {
        $query = "INSERT INTO admin (username, password, name, designation) VALUES ('$username', '$password', '$name', '$designation')";
        if (mysqli_query($conn, $query)) {
            $message = "নতুন স্টাফ অ্যাকাউন্ট সফলভাবে তৈরি হয়েছে!";
            $status = "success";
        } else {
            $message = "অ্যাকাউন্ট তৈরি করতে সমস্যা হয়েছে: " . mysqli_error($conn);
            $status = "error";
        }
    }
}

// --- স্টাফ অ্যাকাউন্ট আপডেট (Edit) লজিক ---
if (isset($_POST['update_staff'])) {
    $id          = mysqli_real_escape_string($conn, $_POST['staff_id']);
    $name        = mysqli_real_escape_string($conn, $_POST['name']);
    $username    = mysqli_real_escape_string($conn, $_POST['username']);
    $password    = mysqli_real_escape_string($conn, $_POST['password']);
    $designation = mysqli_real_escape_string($conn, $_POST['designation']);

    // নিজের ইউজারনেম বাদে অন্য কারও সাথে মিলছে কিনা চেক
    $check_user = mysqli_query($conn, "SELECT id FROM admin WHERE username = '$username' AND id != '$id'");
    
    if (mysqli_num_rows($check_user) > 0) {
        $message = "দুঃখিত! এই ইউজারনেমটি অন্য একজন ব্যবহার করছেন।";
        $status = "error";
    } else {
        $query = "UPDATE admin SET name='$name', username='$username', password='$password', designation='$designation' WHERE id='$id'";
        if (mysqli_query($conn, $query)) {
            $message = "স্টাফ অ্যাকাউন্ট সফলভাবে আপডেট হয়েছে!";
            $status = "success";
        } else {
            $message = "আপডেট করতে সমস্যা হয়েছে: " . mysqli_error($conn);
            $status = "error";
        }
    }
}

// --- স্টাফ অ্যাকাউন্ট ডিলিট (Delete) লজিক ---
if (isset($_GET['delete_id'])) {
    $delete_id = mysqli_real_escape_string($conn, $_GET['delete_id']);
    
    // নিজের অ্যাকাউন্ট যেন নিজে ডিলিট না করতে পারে তার সুরক্ষা
    $current_user_username = $_SESSION['username'] ?? '';
    $check_self = mysqli_fetch_assoc(mysqli_query($conn, "SELECT username FROM admin WHERE id='$delete_id'"));
    
    if ($check_self && $check_self['username'] === $current_user_username) {
        $message = "আপনি নিজের অ্যাকাউন্ট নিজে ডিলিট করতে পারবেন না!";
        $status = "error";
    } else {
        if (mysqli_query($conn, "DELETE FROM admin WHERE id = '$delete_id'")) {
            $message = "স্টাফ অ্যাকাউন্টটি সফলভাবে মুছে ফেলা হয়েছে!";
            $status = "success";
        } else {
            $message = "মুছে ফেলতে সমস্যা হয়েছে: " . mysqli_error($conn);
            $status = "error";
        }
    }
}

// ড্যাশবোর্ডের সাইডবার কাউন্টের জন্য অ্যাক্টিভ কাস্টমার সংখ্যা আনা
$active_db = mysqli_fetch_assoc(mysqli_query($conn, "SELECT COUNT(*) as t FROM customers WHERE status='active'"))['t'];

// সকল স্টাফদের তালিকা ডাটাবেজ থেকে আনা
$staff_list = mysqli_query($conn, "SELECT * FROM admin ORDER BY id DESC");
?>

<!DOCTYPE html>
<html lang="bn">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Add & Manage Staff | RANGDHANU.NET</title>
    <link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap" rel="stylesheet">
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css">
    <style>
        :root { 
            --primary: #4f46e5; 
            --primary-hover: #4338ca;
            --success: #10b981; 
            --danger: #ef4444; 
            --dark: #1f2937; 
            --sidebar-bg: #111827;
            --sidebar-hover: #1f2937;
            --warning: #f59e0b; 
            --bg-light: #f3f4f6;
        }
        
        * { box-sizing: border-box; margin: 0; padding: 0; }
        body { font-family: 'Inter', sans-serif; background: var(--bg-light); color: var(--dark); display: flex; height: 100vh; overflow: hidden; }
        
        /* --- সাইডবার লেআউট --- */
        .sidebar { position: fixed; left: -260px; top: 0; bottom: 0; width: 260px; background: var(--sidebar-bg); color: #fff; display: flex; flex-direction: column; justify-content: space-between; height: 100%; transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); z-index: 1000; }
        .sidebar.open { left: 0; }
        .sidebar-brand { padding: 24px 20px; font-size: 20px; font-weight: 700; letter-spacing: 1px; border-bottom: 1px solid #1f2937; color: #fff; text-decoration: none; display: flex; align-items: center; gap: 10px; }
        .sidebar-menu { list-style: none; padding: 20px 0; flex-grow: 1; overflow-y: auto; }
        .sidebar-item a { display: flex; align-items: center; gap: 15px; padding: 12px 24px; color: #9ca3af; text-decoration: none; font-size: 14px; font-weight: 500; transition: all 0.2s; position: relative; }
        .sidebar-item a:hover, .sidebar-item.active a { color: #fff; background: var(--sidebar-hover); border-left: 4px solid var(--primary); }
        .sidebar-item a i { width: 20px; text-align: center; font-size: 16px; }
        .side-badge { position: absolute; right: 20px; background: var(--success); color: white; font-size: 11px; padding: 2px 7px; border-radius: 10px; font-weight: 600; }
        .sidebar-footer { padding: 20px; border-top: 1px solid #1f2937; }
        .btn-logout { display: flex; align-items: center; justify-content: center; gap: 10px; background: #dc2626; color: white; padding: 12px; border-radius: 8px; text-decoration: none; font-weight: 600; font-size: 14px; transition: 0.2s; }
        .btn-logout:hover { background: #b91c1c; }

        /* --- মেইন কনটেন্ট এরিয়া --- */
        .main-content { flex: 1; display: flex; flex-direction: column; height: 100%; overflow: hidden; position: relative; width: 100%; }
        .top-navbar { background: #fff; height: 70px; display: flex; align-items: center; justify-content: space-between; padding: 0 40px; box-shadow: 0 1px 3px rgba(0,0,0,0.05); }
        .menu-toggle { display: block; font-size: 22px; cursor: pointer; color: var(--dark); padding: 5px 10px; border-radius: 6px; transition: background 0.2s; }
        .menu-toggle:hover { background: #f3f4f6; }
        
        .dashboard-body { padding: 40px; overflow-y: auto; flex: 1; display: flex; flex-direction: column; align-items: center; gap: 30px; }

        /* --- ফর্ম ও টেবিল কনটেইনার ডিজাইন --- */
        .form-container, .table-container { background: white; padding: 35px; border-radius: 16px; width: 100%; max-width: 900px; box-shadow: 0 4px 6px -1px rgba(0,0,0,0.05), 0 10px 15px -3px rgba(0,0,0,0.05); border: 1px solid #e5e7eb; }
        .form-container { max-width: 480px; }
        
        .form-container h2, .table-container h2 { font-size: 22px; font-weight: 700; color: var(--dark); margin-bottom: 25px; display: flex; align-items: center; justify-content: space-between; gap: 10px; }
        
        .form-group { margin-bottom: 20px; }
        .form-group label { display: block; margin-bottom: 8px; font-size: 13px; color: #4b5563; font-weight: 600; }
        .form-group input, .form-group select { width: 100%; padding: 12px 16px; border: 1px solid #d1d5db; border-radius: 8px; box-sizing: border-box; font-family: 'Inter'; font-size: 14px; outline: none; transition: 0.2s; }
        .form-group input:focus, .form-group select:focus { border-color: var(--primary); box-shadow: 0 0 0 3px rgba(79, 70, 229, 0.1); }
        
        .btn-submit { background: var(--primary); color: white; width: 100%; padding: 14px; border-radius: 8px; font-weight: 600; font-size: 15px; border: none; cursor: pointer; transition: 0.2s; display: flex; align-items: center; justify-content: center; gap: 8px; }
        .btn-submit:hover { background: var(--primary-hover); }

        /* টেবিল স্টাইল */
        .table-responsive { width: 100%; overflow-x: auto; }
        .staff-table { width: 100%; border-collapse: collapse; text-align: left; font-size: 14px; }
        .staff-table th, .staff-table td { padding: 14px 16px; border-bottom: 1px solid #e5e7eb; }
        .staff-table th { background: #f9fafb; color: #4b5563; font-weight: 600; }
        .staff-table tr:hover { background: #f9fafb; }
        
        /* ব্যাজ এবং অ্যাকশন বাটন */
        .badge { padding: 4px 8px; border-radius: 6px; font-size: 12px; font-weight: 600; }
        .badge-admin { background: #fef3c7; color: #d97706; }
        .badge-staff { background: #e0f2fe; color: #0284c7; }
        
        .actions-btn { display: flex; gap: 8px; }
        .btn-action { padding: 6px 10px; border-radius: 6px; font-size: 13px; text-decoration: none; font-weight: 500; display: inline-flex; align-items: center; gap: 5px; border: none; cursor: pointer; }
        .btn-edit { background: #eff6ff; color: #2563eb; }
        .btn-edit:hover { background: #dbeafe; }
        .btn-delete { background: #fef2f2; color: #dc2626; }
        .btn-delete:hover { background: #fee2e2; }

        /* অ্যালার্ট মেসেজ */
        .alert { padding: 12px 16px; border-radius: 8px; font-size: 14px; font-weight: 500; margin-bottom: 20px; display: flex; align-items: center; gap: 8px; width: 100%; max-width: 900px; }
        .alert-success { background: #d1fae5; color: #065f46; border: 1px solid #a7f3d0; }
        .alert-error { background: #fee2e2; color: #991b1b; border: 1px solid #fca5a5; }

        .sidebar-overlay { display: none; position: fixed; inset: 0; background: rgba(0,0,0,0.4); z-index: 995; backdrop-filter: blur(2px); }
        .sidebar-overlay.active { display: block; }

        /* --- এডিট মোডাল (Popup) স্টাইল --- */
        .modal { display: none; position: fixed; inset: 0; background: rgba(0,0,0,0.5); z-index: 2000; align-items: center; justify-content: center; backdrop-filter: blur(4px); }
        .modal.active { display: flex; }
        .modal-content { background: white; padding: 30px; border-radius: 16px; width: 100%; max-width: 450px; box-shadow: 0 20px 25px -5px rgba(0,0,0,0.1); position: relative; animation: slideUp 0.3s ease; }
        @keyframes slideUp { from { transform: translateY(20px); opacity: 0; } to { transform: translateY(0); opacity: 1; } }
        .close-modal { position: absolute; top: 20px; right: 20px; font-size: 20px; cursor: pointer; color: #9ca3af; transition: 0.2s; }
        .close-modal:hover { color: var(--danger); }

        @media (max-width: 768px) { .top-navbar { padding: 0 20px; } .dashboard-body { padding: 20px; } .form-container, .table-container { padding: 20px; } }
    </style>
</head>
<body>

<div class="sidebar-overlay" id="sidebarOverlay" onclick="toggleSidebar()"></div>

<aside class="sidebar" id="sidebar">
    <div>
        <a href="index.php" class="sidebar-brand">
            <i class="fa-solid fa-rainbow"></i> RANGDHANU.NET
        </a>
        <ul class="sidebar-menu">
            <li class="sidebar-item"><a href="index.php"><i class="fa-solid fa-gauge"></i> Dashboard</a></li>
            <li class="sidebar-item"><a href="all.php"><i class="fa-solid fa-users"></i> All Clients</a></li>
            <li class="sidebar-item">
                <a href="active.php">
                    <i class="fa-solid fa-user-check"></i> Active Clients
                    <span class="side-badge"><?php echo $active_db; ?></span>
                </a>
            </li>
            <li class="sidebar-item"><a href="live_clients.php"><i class="fa-solid fa-circle-dot" style="color: #10b981;"></i> Live Online</a></li>
            <li class="sidebar-item"><a href="deactivated.php"><i class="fa-solid fa-user-slash"></i> Deactivated</a></li>
            <li class="sidebar-item"><a href="today.php"><i class="fa-solid fa-calendar-day"></i> Today Collect</a></li>
            <li class="sidebar-item"><a href="monthly.php"><i class="fa-solid fa-calendar-days"></i> Monthly Collect</a></li>
            
            <li class="sidebar-item active" style="border-top: 1px solid #1f2937; margin-top: 10px; padding-top: 10px;">
                <a href="add_staff.php" style="color: #f59e0b;"><i class="fa-solid fa-user-plus"></i> Add New Staff</a>
            </li>
        </ul>
    </div>
    <div class="sidebar-footer">
        <div style="padding: 10px; color: #9ca3af; font-size: 12px; text-align: center;">Logged in as: <b><?php echo $_SESSION['admin_name'] ?? 'Admin'; ?></b> (<?php echo $user_role; ?>)</div>
        <a href="logout.php" class="btn-logout" onclick="return confirm('আপনি কি নিশ্চিতভাবে লগআউট করতে চান?')">
            <i class="fa-solid fa-right-from-bracket"></i> Logout
        </a>
    </div>
</aside>

<main class="main-content">
    <header class="top-navbar">
        <div style="display: flex; align-items: center;">
            <div class="menu-toggle" onclick="toggleSidebar()"><i class="fa-solid fa-bars"></i></div>
        </div>
        <div style="font-weight: 600; font-size: 14px; color: var(--warning);"><i class="fa-solid fa-shield-halved"></i> Super Admin Panel</div>
    </header>

    <div class="dashboard-body">
        
        <?php if(!empty($message)): ?>
            <div class="alert alert-<?php echo $status; ?>">
                <?php if($status == 'success'): ?>
                    <i class="fa-solid fa-circle-check"></i>
                <?php else: ?>
                    <i class="fa-solid fa-circle-exclamation"></i>
                <?php endif; ?>
                <?php echo $message; ?>
            </div>
        <?php endif; ?>

        <div class="form-container">
            <h2><i class="fa-solid fa-user-gear" style="color: var(--primary);"></i> নতুন স্টাফ যুক্ত করুন</h2>
            
            <form method="POST" action="">
                <div class="form-group">
                    <label>স্টাফের সম্পূর্ণ নাম</label>
                    <input type="text" name="name" placeholder="উদাঃ মোঃ রহিম উদ্দিন" required>
                </div>

                <div class="form-group">
                    <label>লগইন ইউজারনেম (Username)</label>
                    <input type="text" name="username" placeholder="উদাঃ rohim_hr" required>
                </div>

                <div class="form-group">
                    <label>পাসওয়ার্ড (Password)</label>
                    <input type="text" name="password" placeholder="পাসওয়ার্ড দিন" required>
                </div>

                <div class="form-group">
                    <label>অ্যাকাউন্ট রোল (Designation)</label>
                    <select name="designation" required>
                        <option value="Stuff">Stuff (সাধারণ স্টাফ)</option>
                        <option value="Super Admin">Super Admin (মাস্টার অ্যাডমিন)</option>
                    </select>
                </div>

                <button type="submit" name="add_staff" class="btn-submit">
                    <i class="fa-solid fa-user-plus"></i> অ্যাকাউন্ট তৈরি করুন
                </button>
            </form>
        </div>

        <div class="table-container">
            <h2><i class="fa-solid fa-users-gear" style="color: var(--primary);"></i> বর্তমান স্টাফদের তালিকা</h2>
            <div class="table-responsive">
                <table class="staff-table">
                    <thead>
                        <tr>
                            <th>নাম</th>
                            <th>ইউজারনেম</th>
                            <th>পাসওয়ার্ড</th>
                            <th>রোল (Designation)</th>
                            <th>অ্যাকশন</th>
                        </tr>
                    </thead>
                    <tbody>
                        <?php if(mysqli_num_rows($staff_list) > 0): ?>
                            <?php while($row = mysqli_fetch_assoc($staff_list)): ?>
                            <tr>
                                <td><b><?php echo htmlspecialchars($row['name']); ?></b></td>
                                <td><?php echo htmlspecialchars($row['username']); ?></td>
                                <td><code><?php echo htmlspecialchars($row['password']); ?></code></td>
                                <td>
                                    <?php if($row['designation'] === 'Super Admin'): ?>
                                        <span class="badge badge-admin"><i class="fa-solid fa-crown"></i> Super Admin</span>
                                    <?php else: ?>
                                        <span class="badge badge-staff"><i class="fa-solid fa-user"></i> Stuff</span>
                                    <?php endif; ?>
                                </td>
                                <td>
                                    <div class="actions-btn">
                                        <button class="btn-action btn-edit" onclick="openEditModal(<?php echo htmlspecialchars(json_encode($row)); ?>)">
                                            <i class="fa-solid fa-pen-to-square"></i> এডিট
                                        </button>
                                        <a href="add_staff.php?delete_id=<?php echo $row['id']; ?>" class="btn-action btn-delete" onclick="return confirm('আপনি কি নিশ্চিতভাবে এই স্টাফ অ্যাকাউন্টটি ডিলিট করতে চান?')">
                                            <i class="fa-solid fa-trash"></i> ডিলিট
                                        </a>
                                    </div>
                                </td>
                            </tr>
                            <?php endwhile; ?>
                        <?php else: ?>
                            <tr>
                                <td colspan="5" style="text-align: center; color: #9ca3af;">কোনো স্টাফ অ্যাকাউন্ট পাওয়া যায়নি।</td>
                            </tr>
                        <?php endif; ?>
                    </tbody>
                </table>
            </div>
        </div>

    </div>
</main>

<div class="modal" id="editModal">
    <div class="modal-content">
        <span class="close-modal" onclick="closeEditModal()">&times;</span>
        <h3 style="margin-bottom: 20px; font-size: 18px;"><i class="fa-solid fa-user-pen" style="color: var(--primary);"></i> স্টাফ তথ্য পরিবর্তন করুন</h3>
        
        <form method="POST" action="">
            <input type="hidden" name="staff_id" id="edit_id">
            
            <div class="form-group">
                <label>স্টাফের সম্পূর্ণ নাম</label>
                <input type="text" name="name" id="edit_name" required>
            </div>

            <div class="form-group">
                <label>লগইন ইউজারনেম (Username)</label>
                <input type="text" name="username" id="edit_username" required>
            </div>

            <div class="form-group">
                <label>পাসওয়ার্ড (Password)</label>
                <input type="text" name="password" id="edit_password" required>
            </div>

            <div class="form-group">
                <label>অ্যাকাউন্ট রোল (Designation)</label>
                <select name="designation" id="edit_designation" required>
                    <option value="Stuff">Stuff (সাধারণ স্টাফ)</option>
                    <option value="Super Admin">Super Admin (মাস্টার অ্যাডমিন)</option>
                </select>
            </div>

            <button type="submit" name="update_staff" class="btn-submit">
                <i class="fa-solid fa-floppy-disk"></i> পরিবর্তন সংরক্ষণ করুন
            </button>
        </form>
    </div>
</div>

<script>
function toggleSidebar() {
    document.getElementById('sidebar').classList.toggle('open');
    document.getElementById('sidebarOverlay').classList.toggle('active');
}

// মোডাল ওপেন এবং ডাটা পাস করার ফাংশন
function openEditModal(staff) {
    document.getElementById('edit_id').value = staff.id;
    document.getElementById('edit_name').value = staff.name;
    document.getElementById('edit_username').value = staff.username;
    document.getElementById('edit_password').value = staff.password;
    document.getElementById('edit_designation').value = staff.designation;
    
    document.getElementById('editModal').classList.add('active');
}

// মোডাল বন্ধ করার ফাংশন
function closeEditModal() {
    document.getElementById('editModal').classList.remove('active');
}

// মোডালের বাইরে ক্লিক করলে বন্ধ হবে
window.onclick = function(event) {
    let modal = document.getElementById('editModal');
    if (event.target == modal) {
        modal.classList.remove('active');
    }
}
</script>

</body>
</html>
