/home3/bmscom/apps.theaffluentman.com/update_db_roles.php
<?php
require_once 'config/database.php';

echo "<h2>System Update: Role-Based Access Control</h2>";

// 1. Create Users Table
$sql_users = "CREATE TABLE IF NOT EXISTS `users` (
    `id` int(11) NOT NULL AUTO_INCREMENT,
    `username` varchar(100) NOT NULL UNIQUE,
    `password` varchar(255) NOT NULL,
    `role` enum('admin', 'tailor', 'worker') NOT NULL DEFAULT 'worker',
    `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
    PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;";

if ($conn->query($sql_users) === TRUE) {
    echo "✅ Table 'users' created or already exists.<br>";
} else {
    echo "❌ Error creating users table: " . $conn->error . "<br>";
}

// 2. Insert Default Admin if not exists
$admin_user = 'admin';
$admin_pass = password_hash('admin123', PASSWORD_DEFAULT);
$check_admin = $conn->query("SELECT id FROM users WHERE username = '$admin_user'");

if ($check_admin->num_rows === 0) {
    $sql_insert_admin = "INSERT INTO users (username, password, role) VALUES ('$admin_user', '$admin_pass', 'admin')";
    if ($conn->query($sql_insert_admin) === TRUE) {
        echo "✅ Default admin user created (Username: admin, Password: admin123).<br>";
    }
} else {
    echo "ℹ️ Admin user already exists.<br>";
}

// 3. Insert specific roles for demonstration if empty
$check_any_users = $conn->query("SELECT COUNT(*) as count FROM users");
$count = $check_any_users->fetch_assoc()['count'];

if ($count <= 1) {
    $tailor_pass = password_hash('tailor123', PASSWORD_DEFAULT);
    $worker_pass = password_hash('worker123', PASSWORD_DEFAULT);
    
    $conn->query("INSERT INTO users (username, password, role) VALUES ('tailor', '$tailor_pass', 'tailor')");
    $conn->query("INSERT INTO users (username, password, role) VALUES ('worker', '$worker_pass', 'worker')");
    echo "✅ Sample 'tailor' and 'worker' users created for testing.<br>";
}

echo "<br><a href='admin/dashboard.php'>Go to Dashboard</a>";
?>