isSetupCompleted()) { header("Location: login.php"); exit(); } $error_message = ''; $success_message = ''; if ($_SERVER['REQUEST_METHOD'] == 'POST') { $full_name = trim($_POST['full_name'] ?? ''); $phone = trim($_POST['phone'] ?? ''); $username = trim($_POST['username'] ?? ''); $password = $_POST['password'] ?? ''; $confirm_password = $_POST['confirm_password'] ?? ''; // Validation if (empty($full_name) || empty($phone) || empty($username) || empty($password)) { $error_message = 'All fields are required.'; } elseif ($password !== $confirm_password) { $error_message = 'Passwords do not match.'; } elseif (strlen($password) < 6) { $error_message = 'Password must be at least 6 characters long.'; } elseif (!preg_match('/^[0-9+\-\s]{10,15}$/', $phone)) { $error_message = 'Please enter a valid phone number.'; } elseif (!preg_match('/^[a-zA-Z0-9_]{3,}$/', $username)) { $error_message = 'Username must be at least 3 characters and contain only letters, numbers, and underscore.'; } else { // Create first admin user if ($auth->createFirstAdmin($full_name, $phone, $username, $password)) { $success_message = 'Admin user created successfully! You can now login.'; } else { $error_message = 'Failed to create admin user. Please try again.'; } } } $page_title = 'Initial Setup'; ?>
Initial Setup - Create Admin User